亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? i_combo.cpp

?? 嵌入式開發工具
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
	case L_FIRST:	case L_LAST:	case L_LEFT:	case L_RIGHT:		// These are mapped by combo box, but not needed.  If there is a 		// comboString, it will map these differently, so give it a chance.		if (comboString)			ccode = comboString->Event(event);		break;    case N_SIZE:        {            ZafWindowObject *object;            // Adjust the non-support object sizes.            for (object = ComboFirst(); object; object = object->Next())                object->Event(S_COMPUTE_SIZE);            // Finalize the sizing operation.            for (object = ComboFirst(); object; object = object->Next())                object->OSSize();        }        break;    case S_REGISTER_OBJECT:        {        ccode = ZafWindow::Event(event);        for(ZafWindowObject *child = ComboFirst(); child; child = child->Next())            child->Event(event);        }        break;	// ----- Unknown or error messages -----	default:		ccode = ZafWindow::Event(event);		break;	}	// Return the control code.	return (ccode);}ZafWindowObject *ZafComboBox::FindMouseObject(const ZafEventStruct &event){	return (ZafWindowObject::FindMouseObject(event));}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::MatchInput - matches object text to entered text.//// RETURNS: object if closes match is found, otherwise null is returned.//// INTERNAL: This fuctionma matches searches the text of the objects added to // the combobox to find the text that matches.  When text is matched that // object is made current and scrolled into view.//ZafWindowObject *ZafComboBox::MatchInput(ZafIChar matchValue){	if (!list->first)		return (ZAF_NULLP(ZafWindowObject));	ZafWindowObject *object = ZAF_NULLP(ZafWindowObject);	if (!viewOnly && OSDraw() && comboString)	{		const ZafIChar *comboText = comboString->Text();		if (!comboText || !First())			return (ZAF_NULLP(ZafWindowObject));		if (!*comboText && !First()->Selected())			object = First();		else			for (object = First(); object; object = object->Next())				if (*comboText && !strnicmp(comboText, object->Text(), strlen(comboText)))					break;		if (!object)			return (ZAF_NULLP(ZafWindowObject));		else		{			// Select the object if the list is open.  Otherwise, only make the			// matching item current so it will be selected (and the comboString			// updated) when the list is opened.			object->SetFocus(true);			if (WindowManager()->First() == list)				list->Event(S_VSCROLL_CHECK);		}	}	// Try to do first character recognition.	else if (IsPrint(matchValue) && list->current)	{		ZafIChar buffer[2];		buffer[0] = matchValue;		buffer[1] = 0;		object = list->Current()->Next() ? list->Current()->Next() : list->First();		while (object != list->current)		{			const ZafIChar *text = object->Text();			if (text && !strnicmp(buffer, text, 1))				break;			object = object->Next() ? object->Next() : list->First();		}		if (object != list->current)		{			// Give the object focus and select it.			object->SetFocus(true);			NotifySelection(object, true);			list->Event(S_VSCROLL_CHECK);		}	}	return (object);}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::NotifFocus - notifies parent object that focus of child is // changing.//// This is an advanced function that is used to notify a parent object, or // set of hierarchical objects, that the focus of a child is in the process // of being changed. Under normal conditions, you will not need to explicitly // call this function. Subsequent discussion of this function is intended for // advanced ZAF programmers and is not itended for the "faint of heart."//// The consequences of changing focus are fairly dramatic for most windows and// window objects. For instance, changing the focus from one window to // another, requires all of the ancestors of the old focus object to be // notified of a focus change (their Focus() attribute changes to false), and // all the ancestors of the new focus object to be notified of their focus // change (their Focus() attribute changes to true). A fairly complicated // endeavor when you consider all the ways in which an object may gain focus! // NotifyFocus() provides a consistent method of notification for these // affected objects. //// RETURNS: the object gaining focus or null if the object cannot gain focus.//ZafWindowObject *ZafComboBox::NotifyFocus(ZafWindowObject *focusObject, bool setFocus){	if (focusObject && list->Index(focusObject) != -1)		return (list->NotifyFocus(focusObject, setFocus));	else		return (ZafWindow::NotifyFocus(focusObject, setFocus));}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::NotifSelection -  notifies parent selection state of child is// changing.//// This is an advanced function that is used to notify a parent object, or // set of hierarchical objects, that the selection state of a child is in the // process of being changed. Under normal conditions, you should not call this // function directly. A description of this function follows as "useful // information" in your programming endeavors.// // For simple objects, a call to SetSelected() simply changes the state of the // object and reflects the change on the display. It does not, however, take // into account the consequences of such an action on other siblings, or as it // may affect the state of an application. In addition, since some simple // objects (list and tree items) do not know what consequence the change of // its state will have, it does not update its visual representation if its // SystemObject() status is "false." This aspect of selection is deferred to // the parent's NotifySelection() function.//// RETURNS: a pointer to the selected object//ZafWindowObject *ZafComboBox::NotifySelection(ZafWindowObject *newObject,	bool){	if (!newObject)		return (ZAF_NULLP(ZafWindowObject));	if (!newObject->Selected())		newObject->SetSelected(true);	// Place new data in combo-box.	if (screenID)	{		if (OSDraw() && !viewOnly)		{			comboString->SetText(newObject->Text());			comboString->Redisplay();		}		else		{			ZafWindowObject *oldObj = (ZafWindowObject *)ZafList::First();			if (oldObj != newObject)			{				if (oldObj)				{					ZafWindow::Subtract(oldObj);					delete oldObj;				}				ZafWindowObject *obj = newObject->Duplicate();				obj->SetBordered(false);				obj->SetSelected(false);				if (DynamicPtrCast(obj, ZafString))					DynamicPtrCast(obj, ZafString)->SetViewOnly(true);				obj->SetRegionType(ZAF_AVAILABLE_REGION);				ZafWindow::Add(obj);			}		}	}	return (newObject);}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::SetListRegion - Sets the width and height of list.//// ListRegion() returns the region of the drop down list in which the width // and height can be accessed. The top and left of this region are irrelevant // as the combo box controls these. SetListRegion may be used to set the width // and height.// void ZafComboBox::SetListRegion(const ZafRegionStruct &region){	if (!screenID)	{		list->zafRegion = region;		maxListHeight = region.Height();		listWidth = region.Width();		if (maxListHeight != -1)			listHeight = maxListHeight;	}}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::SetMaximumListHeight - Sets the max height of the list.//// The height of the drop down list on a ZafComboBox is not fixed. It is the// minimum of the space required to display all list items and the// MaximumListHeight. MaximumListHeight is returned in the coordinate// system of the ZafComboBox. SetMaximumListHeight can be used to change the // maximum.// int ZafComboBox::SetMaximumListHeight(int tMaxListHeight){	if (!screenID)		maxListHeight = tMaxListHeight;	return (maxListHeight);}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::SetRegion - sets the combobox's region.//// SetRegion has slightly different semantics in ZafComboBox than in other// classes. For this class, height refers to the maximum list height of the // combo box if MaximumListHeight() is -1 (the default), otherwise height is // used normally.//void ZafComboBox::SetRegion(const ZafRegionStruct &region){	if (region != zafRegion && zafRegion.coordinateType != region.coordinateType)	{		if (maxListHeight != -1)		{			maxListHeight = (int)display->ConvertYValue(maxListHeight,				zafRegion.coordinateType, region.coordinateType);			listHeight = maxListHeight;		}		else			listHeight = (int)display->ConvertYValue(listHeight,				zafRegion.coordinateType, region.coordinateType);	}	if (listWidth == -1)		list->SetRegion(region);	ZafWindow::SetRegion(region);}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::Subtract - subracts objets from the combo box's list.//// This function has functionality to handle advanced subtraction operations // typical of derived ZafWindow classes. // For objects subtracted from ZafWindow, these three operations are // performed:// - they are subtracted from the list of support or non-support children //   (either the support member or the base ZafList part of the class, //   respectively)// - their parent pointer is cleared// - they are removed from the screen if the parent window is already visible //   to the user// // RETURNS: a typesafe ZafWindowObject pointer. This is generally the object // that was passed to the Subtract() function, but can be null if the object // isn't a child of the window.// ZafWindowObject *ZafComboBox::Subtract(ZafWindowObject *object){	ZafWindowObject *retValue = list->Subtract(object);	if (object->Selected())	{		if (!list->Count())        {			if (ViewOnly() && ZafList::First())            {                ZafWindowObject *oldObj = (ZafWindowObject *)ZafList::First();                ZafWindow::Subtract(oldObj);                delete oldObj;            }            Redisplay();        }		if (ComboFirst())			SetText(ZafLanguageManager::blankString);		if (!list->Current())			list->SetCurrent(list->First());	}	return (retValue);}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::Text - returns the text of the selected object.//// This function returns the text of the selected item in the combobox.//// RETURNS: a const pointer, which indicates the current textual information // associated with the object. Under normal circumstances, this value will be // the same as the value passed to SetText().//const ZafIChar *ZafComboBox::Text(void){	// Return the current object contents.	ZafWindowObject *object;	if (comboString)		object = comboString;	else		object = list->Current();	return (object ? object->Text() : ZAF_NULLP(ZafIChar));}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::SetAutoSortData - sets the autosort attribute.//// If AutoSortData() is true, the list will automatically sort its children as // they are added to the list. The function returned by CompareFunction() is // used to sort the children. By default, sorting is done in alphabetical // order, but SetCompareFunction() may be called to provide a custom sorting // function. See ZafList::CompareFunction() for more information about sorting // list children. The default value of this attribute is false, but the user // may call SetAutoSortData() to change it.// // RETRUNS: value of the autosort attribute.//bool ZafComboBox::SetAutoSortData(bool autoSortData){	// Set the list attribute.	return (list->SetAutoSortData(autoSortData));}////////////////////////////////////////////////////////////////////////////////// ZafComboBox::SetText - sets the text on the combostring.//// This fuction sets the text on a combo string.//// RETURNS: ZAF_ERROR_NONE or ZAF_ERROR_INVALID if the combo does not have // a string.// ZafError ZafComboBox::SetText(const ZafIChar *text){	// Return the current object contents.	if (ViewOnly() || !OSDraw())		return (ZAF_ERROR_INVALID);	return (comboString ? comboString->SetText(text) : ZAF_ERROR_INVALID);}// ----- OS Specific Functions ----------------------------------------------////////////////////////////////////////////////////////////////////////////////// ZafComboBox::OSDestroy - destroys the OS side of an objet.//// INTERNAL: This function clears the text from the combo string.//void ZafComboBox::OSDestroy(void){	if (comboString)	{		bool tAuto = automaticUpdate;		automaticUpdate = false;		comboString->SetText(ZafLanguageManager::blankString);		automaticUpdate = tAuto;	}}void ZafComboBox::OSDrawChildren(){    OSDrawChildList(ComboFirst());}ZafError ZafComboBox::OSGetText(void){	return (ZAF_ERROR_NONE);}void ZafComboBox::OSRegisterObject(void){	ZafWindow::OSRegisterObject();}OSWindowID ZafComboBox::OSScreenID(ZafScreenIDType type) const{	return (ZafWindow::OSScreenID(type));}ZafError ZafComboBox::OSSetText(void){	return (ZAF_ERROR_NONE);}void ZafComboBox::OSSort(void){}// ----- ZafComboButton ---------------------------------------------------#define ZAF_COMBO_BUTTON_INFO#include <zinc/data/img_def.hpp>#if defined(ZAF_REENTRANT)#	include <zinc/z_system.hpp>#endifZafBitmapData *ZafComboButton::comboDownArrowBitmap = ZAF_NULLP(ZafBitmapData);#if defined(ZAF_REENTRANT)ZafSemaphore *ZafComboButton::classSem = 0;#endif////////////////////////////////////////////////////////////////////////////////// ZafComboButton::ZafComboButton - constuctor.//// INTERNAL: This function creates a ZafComboButton.//ZafComboButton::ZafComboButton(void) :	ZafButton(0, 0, 0, 0, ZAF_NULLP(ZafIChar)){	SetBordered(false);	SetHzJustify(ZAF_HZ_CENTER);	SetSupportObject(true);	SetAllowToggling(false);	SetAutoSize(false);	SetRegionType(ZAF_AVAILABLE_REGION);	SetNoncurrent(true);	Initialize();	bitmapData = comboDownArrowBitmap;}////////////////////////////////////////////////////////////////////////////////// ZafComboButton::~ZafComboButton - destuctor.//// INTERNAL: This function deletes a ZafComboButton.//ZafComboButton::~ZafComboButton(void){	// Check the image information.	ImageFree();}////////////////////////////////////////////////////////////////////////////////// ZafComboButton::DrawShadow - differs the button's border drawn by // DrawBorder.//// DrawShadow() differs from DrawBorder() because you specify the pixel depth// size of the shadow to be drawn, and also because the function always draws // a 3-dimensional shadow, not just the type of shadow specified by the native// operating environment. The range of depth can be positive or negative. A// negative value represents an indented shadow, generally associated with an// object that has been 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区在线观看视频| 国产aⅴ精品一区二区三区色成熟| 一区二区三区电影在线播| 国产成人免费视频网站| 喷白浆一区二区| 蜜桃在线一区二区三区| 蜜臀久久99精品久久久久久9 | 奇米色777欧美一区二区| 亚洲一区在线视频| 亚洲一区二区三区中文字幕| 一区二区三区四区高清精品免费观看| 综合精品久久久| 亚洲激情校园春色| 一区二区三区电影在线播| 一区二区在线看| 亚洲一二三级电影| 青青草国产精品亚洲专区无| 日韩一级高清毛片| 色噜噜狠狠成人网p站| 一区二区成人在线观看| 亚洲综合免费观看高清完整版 | 18成人在线视频| 亚洲综合免费观看高清在线观看| 亚洲国产欧美一区二区三区丁香婷| 亚洲一区二区不卡免费| 蜜臀av性久久久久蜜臀aⅴ | 中文字幕免费在线观看视频一区| 亚洲人一二三区| 天天av天天翘天天综合网| 免费观看在线综合色| 国产凹凸在线观看一区二区| 91色九色蝌蚪| 日韩精品资源二区在线| 国产精品毛片高清在线完整版| 夜夜操天天操亚洲| 国产精品香蕉一区二区三区| 色天使色偷偷av一区二区| 51午夜精品国产| 中文字幕一区二区三中文字幕| 亚洲制服丝袜在线| 国产不卡在线一区| 制服丝袜成人动漫| 综合中文字幕亚洲| 精品一区二区综合| 欧美色视频在线观看| 久久久午夜精品理论片中文字幕| 一区二区在线电影| 国产成人鲁色资源国产91色综| 在线一区二区观看| 中文一区一区三区高中清不卡| 婷婷成人激情在线网| aaa国产一区| 欧美va亚洲va国产综合| 亚洲国产日韩av| av午夜一区麻豆| 欧美精品一区二区三区四区| 亚洲靠逼com| 成人免费视频国产在线观看| 日韩亚洲国产中文字幕欧美| 一区二区三区在线高清| 成人免费三级在线| 精品国产凹凸成av人网站| 天堂久久一区二区三区| 91蜜桃传媒精品久久久一区二区| 国产日韩欧美一区二区三区乱码| 奇米综合一区二区三区精品视频| 在线免费观看成人短视频| 日本一区二区三区久久久久久久久不| 麻豆视频一区二区| 91精品国产乱码| 男男成人高潮片免费网站| 欧美三级三级三级爽爽爽| 亚洲视频每日更新| 色综合天天视频在线观看| 国产日韩欧美精品综合| 国产精品资源在线看| 欧美videos中文字幕| 精品亚洲porn| 亚洲精品一区二区三区蜜桃下载| 久久99久久久久久久久久久| 91精品在线麻豆| 美女免费视频一区| 精品国产乱子伦一区| 国产一区三区三区| 中文字幕成人av| 99vv1com这只有精品| 亚洲美女少妇撒尿| 欧美三级视频在线| 奇米精品一区二区三区在线观看一 | 欧美日韩高清影院| 亚洲成年人网站在线观看| 欧美久久一二区| 日韩av一二三| 久久久久久影视| 成人动漫一区二区| 一区二区三区免费| 欧美一二三四在线| 国产很黄免费观看久久| 国产精品高潮久久久久无| 在线观看av一区| 另类成人小视频在线| 国产欧美日韩另类一区| 色婷婷激情综合| 蜜桃久久精品一区二区| 国产精品午夜久久| 欧美日韩夫妻久久| 国产最新精品精品你懂的| 中文字幕在线免费不卡| 精品视频在线看| 国内精品写真在线观看| 亚洲男人的天堂在线观看| 在线播放/欧美激情| 国产一区二区三区免费播放| 亚洲丝袜自拍清纯另类| 日韩欧美在线不卡| 99国产一区二区三精品乱码| 免费在线看一区| 亚洲乱码国产乱码精品精可以看 | 亚洲激情六月丁香| 亚洲精品一区二区三区影院| 色嗨嗨av一区二区三区| 国内精品久久久久影院薰衣草| 成人免费在线播放视频| 精品粉嫩超白一线天av| 欧美三级蜜桃2在线观看| 国产sm精品调教视频网站| 亚洲国产欧美在线| 亚洲图片激情小说| 日本一区二区不卡视频| 日韩视频在线你懂得| 欧美自拍偷拍午夜视频| 成人免费观看av| 精品一区二区在线看| 日韩av一区二区在线影视| 一区二区三区欧美日| 国产欧美日韩亚州综合| 精品久久国产老人久久综合| 欧美视频在线观看一区| 91蝌蚪porny成人天涯| 成人中文字幕电影| 紧缚捆绑精品一区二区| 日本视频一区二区三区| 亚洲国产视频一区二区| 亚洲另类一区二区| 1000精品久久久久久久久| 国产欧美一二三区| 久久综合久色欧美综合狠狠| 日韩欧美专区在线| 91精品国产一区二区三区蜜臀 | 国产欧美日韩亚州综合| 久久一夜天堂av一区二区三区| 日韩欧美激情一区| 日韩精品在线一区二区| 日韩一级完整毛片| 日韩一级大片在线观看| 欧美电视剧在线看免费| 精品免费日韩av| ww久久中文字幕| 国产日韩欧美一区二区三区乱码 | 1000精品久久久久久久久| 亚洲国产精品成人综合| 中文字幕制服丝袜一区二区三区| 中文字幕免费不卡| 成人欧美一区二区三区黑人麻豆| 亚洲欧洲99久久| 亚洲一区二区三区三| 午夜欧美大尺度福利影院在线看| 日欧美一区二区| 狠狠v欧美v日韩v亚洲ⅴ| 国产成人一级电影| 不卡的电影网站| 色婷婷av一区二区三区大白胸| 欧美午夜精品免费| 日韩一区二区电影| 欧美精彩视频一区二区三区| 最好看的中文字幕久久| 亚洲成人1区2区| 国产综合色视频| 99久久精品免费看国产| 欧美日韩精品免费| 精品国内片67194| 国产精品萝li| 亚洲国产精品天堂| 国内久久婷婷综合| 91麻豆免费在线观看| 欧美高清性hdvideosex| 久久久久国色av免费看影院| 亚洲日本va午夜在线影院| 蜜臀va亚洲va欧美va天堂| 成人午夜免费av| 在线观看91av| 国产精品电影一区二区三区| 亚洲国产精品一区二区www| 国产中文字幕精品| 欧洲日韩一区二区三区| 久久精品一区二区三区四区| 亚洲一区二区三区三| 懂色av一区二区三区免费观看| 欧美另类久久久品| 中文字幕字幕中文在线中不卡视频|