⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmcombo.h

📁 很牛的GUI源码wxWidgets-2.8.0.zip 可在多种平台下运行.
💻 H
字号:
/* * ComboBox.h - Das schon lange schmerzlich vermisste Combo-Box- *              Widget -- nun endlich auf fuer Motif! *  * Letzte Modifikation: 04.10.1995    Revisionsstand: 1.32a *  * (c) 1993, 1994 Harald Albrecht * Institut fuer Geometrie und Praktische Mathematik * RWTH Aachen, Germany * albrecht@igpm.rwth-aachen.de * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING for more details); * if not, write to the Free Software Foundation, Inc., 675 Mass Ave,  * Cambridge, MA 02139, USA. * */#ifndef __ComboBoxWidget_h#define __ComboBoxWidget_h#include <Xm/Xm.h>#if defined(__cplusplus) || defined(c_plusplus)extern "C" {#endif#ifdef XmNselectionCallback#undef XmNselectionCallback#endif    #define XmNselectionCallback		"selectionCallback"#define XmCSelectionCallback		"SelectionCallback"#define XmNunselectionCallback		"unselectionCallback"#define XmCUnselectionCallback		"UnselectionCallback"#define XmNdropDownCallback		"dropDownCallback"#define XmCDropDownCallback		"DropDownCallback"#define XmNdropDownCursor		"dropDownCursor"#define XmCDropDownCursor		"DropDownCursor"/* ICH GLAUB' ES JA EINFACH NICHT! DIESE @#$!%^ BEI DER OSF HABEN * DOCH TATSAECHLICH VERGESSEN, DASS DIE EINTRAEGE IN DER LISTBOX * VIELLEICHT AUCH SORTIERT SEIN SOLLEN -- MUSS MAN DENN ALLES * SELBST MACHEN?! */#define XmNsorted			"sorted"#define XmCSorted			"Sorted"#define XmNsortingCallback		"sortingCallback"#define XmCSortingCallback		"SortingCallback"#define XmNstaticList			"staticList"#define XmCStaticList			"StaticList"#define XmNsquareArrow			"squareArrow"#define XmCSquareArrow			"SquareArrow"#define XmNarrowSpacingOn		"arrowSpacingOn"#define XmCArrowSpacingOn		"ArrowSpacingOn"/* * Wie verhaeltsich die Liste, wenn der Focus verloren geht, sobald * der Mauszeiger aus dem Dialog herausbewegt wird? */#define XmNpersistentDropDown		"persistentDropDown"#define XmCPersistentDropDown		"PersistentDropDown"#define XmNtwmHandlingOn		"twmHandlingOn"#define XmCTwmHandlingOn		"TwmHandlingOn"/* * alles fuer das Label... */#define XmNshowLabel			"showLabel"#define XmCShowLabel			"ShowLabel"#define XmNdropDownOffset		"dropDownOffset"#define XmCDropDownOffset		"DropDownOffset"#define XmNlabelMarginBottom		"labelMarginBottom"#define XmCLabelMarginBottom		"LabelMarginBottom"#define XmNlabelMarginHeight		"labelMarginHeight"#define XmCLabelMarginHeight		"LabelMarginHeight"#define XmNlabelMarginLeft		"labelMarginLeft"#define XmCLabelMarginLeft		"LabelMarginLeft"#define XmNlabelMarginRight		"labelMarginRight"#define XmCLabelMarginRight		"LabelMarginRight"#define XmNlabelMarginTop		"labelMarginTop"#define XmCLabelMarginTop		"LabelMarginTop"#define XmNlabelMarginWidth		"labelMarginWidth"#define XmCLabelMarginWidth		"LabelMarginWidth"/* Callback reasons: (part. predefined) * * XmCR_SINGLE_SELECT	    user selected item in the list */typedef struct {    int      reason;	/* Grund                  */    XEvent   *event;	/* Ausloesender Event     */    XmString value;     /* Ausgewaehlter Eintrag  */    int      index;	/* Index dieses Eintrages */} XmComboBoxSelectionCallbackStruct,XmComboBoxDefaultActionCallbackStruct;typedef struct {    int         reason;    XEvent      *event;    Boolean     doit;    Position    currInsert, newInsert;    Position    startPos, endPos;    XmTextBlock text;} XmComboBoxTextVerifyCallbackStruct, *XmComboBoxTextVerifyPtr;/* Callback reasons: new *  * XmCR_SHOW_LIST	    list is dropping down * XmCR_HIDE_LIST	    list is getting hidden *  * XmCR_UNSELECT	    unselecting item from list or osfDelete */#define XmCR_SHOW_LIST	4200	/* ten times "42", that should   */#define XmCR_HIDE_LIST	4201	/* explain everything of live... */#define XmCR_UNSELECT   4202typedef struct {    int	     reason;	/* Grund		  */    XEvent   *event;    /* Ausloesender Event     */} XmComboBoxDropDownCallbackStruct, XmComboBoxUnselectionCallbackStruct;#define XmCR_SORTING	4203#define XmOP_INIT	1#define XmOP_DONE	2#define XmOP_COMPARE	3typedef struct {    int      reason;    XEvent   *event;    /* IMMER NULL!! */    int      operation;    void     *item_internal;    XmString item;    int      result;} XmComboBoxSortingCallbackStruct, *XmComboBoxSortingPtr;/* Alle Funktionen, um auf die Liste der Combo-Box zuzugreifen. * Bitte immer diese Funktionen dazu benutzen und nicht direkt * auf das entsprechende Widget in der Combo-Box zugreifen! * Aus diesem Grunde sind auch nicht alle Funktionen einer Listbox * verfuegbar, da sich einige Funktionen mit der Verwaltung der * Combo-Box beissen wuerden. */extern void    XmComboBoxAddItem(Widget w, XmString item, int pos);extern void    XmComboBoxAddItems(Widget w, XmString *items, int item_count, int pos);extern void    XmComboBoxAddItemUnselected(Widget w, XmString item, int pos);extern void    XmComboBoxDeleteItem(Widget w, XmString item);extern void    XmComboBoxDeleteItems(Widget w, XmString *items, int item_count);extern void    XmComboBoxDeletePos(Widget w, int pos);extern void    XmComboBoxDeleteItemsPos(Widget w, int item_count, int pos);extern void    XmComboBoxDeleteAllItems(Widget w);extern void    XmComboBoxReplaceItems(Widget w, XmString *old_items, int item_count, XmString *new_items);extern void    XmComboBoxReplaceItemsPos(Widget w, XmString *new_items, int item_count, int position);extern Boolean XmComboBoxItemExists(Widget w, XmString item);extern int     XmComboBoxItemPos(Widget w, XmString item);extern Boolean XmComboBoxGetMatchPos(Widget w, XmString item, int **pos_list, int *pos_count);extern void    XmComboBoxSelectPos(Widget w, int pos, Boolean notify);extern void    XmComboBoxSelectItem(Widget w, XmString item, Boolean notify);/* Etwas anders als bei der Listbox, da es sowieso nur einen ausge- * waehlten Eintrag in der Listbox geben kann! * Liefert Index des ausgewaehlten Eintrages oder 0. */extern int     XmComboBoxGetSelectedPos(Widget w);extern void    XmComboBoxClearItemSelection(Widget w);/* * Nun alle Funktionen, die auf das Eingabefeld zugreifen... * Auch hier gilt wieder, es gibt 'was auf die Finger, wenn jemand * versucht, direkt auf das Eingabefeld direkt zuzugreifen! */extern void    XmComboBoxClearSelection(Widget w, Time time);extern Boolean XmComboBoxCopy(Widget w, Time time);extern Boolean XmComboBoxCut(Widget w, Time time);extern XmTextPosition XmComboBoxGetInsertionPosition(Widget w);extern XmTextPosition XmComboBoxGetLastPosition(Widget w);extern int     XmComboBoxGetMaxLength(Widget w);extern char *  XmComboBoxGetSelection(Widget w);extern Boolean XmComboBoxGetSelectionPosition(Widget w, XmTextPosition *left,                                                XmTextPosition *right);extern char *  XmComboBoxGetString(Widget w);extern void    XmComboBoxInsert(Widget w, XmTextPosition position, char *value);extern Boolean XmComboBoxPaste(Widget w);extern Boolean XmComboBoxRemove(Widget w);extern void    XmComboBoxReplace(Widget w, XmTextPosition from_pos,                                  XmTextPosition to_pos, char *value);extern void    XmComboBoxSetAddMode(Widget w, Boolean state);extern void    XmComboBoxSetHighlight(Widget w, XmTextPosition left,                                       XmTextPosition right, XmHighlightMode mode);extern void    XmComboBoxSetInsertionPosition(Widget w, XmTextPosition position);extern void    XmComboBoxSetMaxLength(Widget w, int max_length);extern void    XmComboBoxSetSelection(Widget w, XmTextPosition first,                                       XmTextPosition last, Time time);extern void    XmComboBoxSetString(Widget w, char *value);extern void    XmComboBoxShowPosition(Widget w, XmTextPosition position);extern WidgetClass xmComboBoxWidgetClass; /* Die Klasse hoechstselbst */#ifndef XmIsComboBox#define XmIsComboBox(w)	    XtIsSubclass(w, xmComboBoxWidgetClass)#endif /* XmIsComboBox */typedef struct _XmComboBoxClassRec *XmComboBoxWidgetClass;typedef struct _XmComboBoxRec      *XmComboBoxWidget;extern Widget XmCreateComboBox(Widget parent, String name, ArgList arglist,                               Cardinal argcount);/* PLEASE do not use this functions if you really not need to do so !!! */extern Widget XmComboBoxGetEditWidget(Widget w);extern Widget XmComboBoxGetListWidget(Widget w);extern Widget XmComboBoxGetLabelWidget(Widget w);#if defined(__cplusplus) || defined(c_plusplus)}#endif#endif /* __ComboBoxWidget_h *//* Ende von ComboBox.h */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -