/*
* ComboBox.h, Interleaf, 16aug93 2:37pm Version 1.1.
*/
/***********************************************************
Copyright 1993 Interleaf, Inc.
Permission to use, copy, modify, and distribute this software
and its documentation for any purpose without fee is granted,
provided that the above copyright notice appear in all copies
and that both copyright notice and this permission notice appear
in supporting documentation, and that the name of Interleaf not
be used in advertising or publicly pertaining to distribution of
the software without specific written prior permission.
Interleaf makes no representation about the suitability of this
software for any purpose. It is provided "AS IS" without any
express or implied warranty.
******************************************************************/
/*
* (C) Copyright 1991,1992, 1993
* Interleaf, Inc.
* Nine Hillside Avenue, Waltham, MA 02154
*
* ComboBox.h:
*
* Public header file for DtComboBoxWidget.
*/
#ifndef _ComboBox_h
#define _ComboBox_h
#ifdef __cplusplus
extern "C" {
#endif
#ifndef AA
#define AA(args) ()
#endif
#include <Xm/Xm.h>
#define XmNarrowSize "arrowSize"
#define XmNarrowSpacing "arrowSpacing"
#define XmNarrowType "arrowType"
#define XmNlist "list"
#define XmNlistFontList "listFontList"
#define XmNpoppedUp "poppedUp"
#define XmNselectedPosition "selectedPosition"
#define XmNselectedItem "selectedItem"
#define XmNtextField "textField"
#define XmNtype "type"
#define XmNupdateLabel "updateLabel"
#define XmNmoveSelectedItemUp "moveSelectedItemUp"
#define XmNnoCallbackForArrow "noCallbackForArrow"
#define XmCArrowSize "ArrowSize"
#define XmCArrowSpacing "ArrowSpacing"
#define XmCArrowType "ArrowType"
#define XmCHorizontalSpacing "HorizontalSpacing"
#define XmCList "List"
#define XmCListFontList "ListFontList"
#define XmCPoppedUp "PoppedUp"
#define XmCSelectedPosition "SelectedPosition"
#define XmCSelectedItem "SelectedItem"
#define XmCType "Type"
#define XmCTextField "TextField"
#define XmCUpdateLabel "UpdateLabel"
#define XmCVerticalSpacing "VerticalSpacing"
#define XmCMoveSelectedItemUp "MoveSelectedItemUp"
#define XmCNoCallbackForArrow "NoCallbackForArrow"
#define XmRArrowType "ArrowType"
#define XmRType "Type"
/* XmNorientation defines */
#define XmLEFT 0
#define XmRIGHT 1
/* ArrowType defines */
#define XmMOTIF 0
#define XmWINDOWS 1
/* XmNtype defines */
#define XmDROP_DOWN_LIST_BOX 0
#define XmDROP_DOWN_COMBO_BOX 1
/* ComboBox callback info */
#define XmNselectionCallback "selectionCallback"
#define XmNmenuPostCallback "menuPostCallback"
#define XmCR_SELECT 128 /* Large #, so no collisions with XM */
#define XmCR_MENU_POST 129 /* Large #, so no collisions with XM */
typedef struct {
int reason;
XEvent *event;
XmString item_or_text;
int item_position;
} DtComboBoxCallbackStruct;
extern WidgetClass dtComboBoxWidgetClass;
typedef struct _DtComboBoxClassRec *DtComboBoxWidgetClass;
typedef struct _DtComboBoxRec *DtComboBoxWidget;
/*
* External functions which manipulate the ComboBox list of items.
*/
extern Widget DtCreateComboBox AA((Widget parent, char *name,
Arg *arglist, int num_args));
extern void DtComboBoxAddItem AA((Widget combo, XmString item,
int pos, Boolean unique));
extern void DtComboBoxDeletePos AA((Widget combo, int pos));
extern void DtComboBoxSetItem AA((Widget combo, XmString item));
extern void DtComboBoxSelectItem AA((Widget combo, XmString item));
/* xfe additions */
extern void DtComboBoxAddItemSelected (Widget combo, XmString item,
int pos, Boolean unique);
extern void DtComboBoxDeleteAllItems (Widget combo);
#ifdef __cplusplus
};
#endif
#endif /* _ComboBox_h */
syntax highlighted by Code2HTML, v. 0.9.1