/* 	Motif constants and typedefs needed to use Xm++ without including
	the original Motif includes...
*/

#define XmNarmCallback	 	"armCallback"
#define XmNcascadingCallback	"cascadingCallback"
#define XmNdestroyCallback      "destroyCallback"
#define XmNdisarmCallback       "disarmCallback"
#define XmNentryCallback	"entryCallback"
#define XmNexposeCallback       "exposeCallback"
#define XmNmapCallback		"mapCallback"
#define XmNpopdownCallback	"popdownCallback"
#define XmNpopupCallback	"popupCallback"
#define XmNresizeCallback       "resizeCallback"
#define XmNsimpleCallback	"simpleCallback"
#define XmNunmapCallback	"unmapCallback"
#define XmCArmCallback		"ArmCallback"
#define XmCCallback             "Callback"
#define XmCDisarmCallback	"DisarmCallback"
#define XmCExposeCallback       "ExposeCallback"
#define XmCResizeCallback       "ResizeCallback"
#define XmCValueChangedCallback	"ValueChangedCallback"
#define XmRCallback             "Callback"
#define XmRCallbackProc             "CallbackProc"
#define XmNhelpCallback		"helpCallback"
#define XmNactivateCallback	"activateCallback"
#define XmNhelpCallback		"helpCallback"
#define XmNvalueChangedCallback		"valueChangedCallback"
#define XmNincrementCallback		"incrementCallback"
#define XmNdecrementCallback		"decrementCallback"
#define XmNpageIncrementCallback	"pageIncrementCallback"
#define XmNpageDecrementCallback	"pageDecrementCallback"
#define XmNtoTopCallback		"toTopCallback"
#define XmNtoBottomCallback		"toBottomCallback"
#define XmNdragCallback			"dragCallback"
#define XmNsingleSelectionCallback 	"singleSelectionCallback"
#define XmNmultipleSelectionCallback 	"multipleSelectionCallback"
#define XmNextendedSelectionCallback 	"extendedSelectionCallback"
#define XmNbrowseSelectionCallback 	"browseSelectionCallback"
#define XmNdefaultActionCallback 	"defaultActionCallback"
#define XmNfocusCallback	 "focusCallback"
#define XmNlosingFocusCallback	 "losingFocusCallback"
#define XmNmodifyVerifyCallback  "modifyVerifyCallback"
#define XmNmotionVerifyCallback  "motionVerifyCallback"
#define XmNgainPrimaryCallback  "gainPrimaryCallback"
#define XmNlosePrimaryCallback  "losePrimaryCallback"
#define XmNtoPositionCallback	"toPositionCallback"
#define XmNinputCallback	"inputCallback"
#define XmNokCallback             "okCallback"
#define XmNcancelCallback         "cancelCallback"
#define XmNapplyCallback	  "applyCallback"
#define XmNnoMatchCallback	  "noMatchCallback"
#define XmNcommandEnteredCallback "commandEnteredCallback"
#define XmNcommandChangedCallback "commandChangedCallback"

typedef unsigned long XID;

typedef XID Window;
typedef XID Drawable;
typedef XID Font;
typedef XID Pixmap;
typedef XID Cursor;
typedef XID Colormap;
typedef XID GContext;
typedef XID KeySym;

typedef struct _WidgetRec *Widget;
typedef struct _XtAppStruct *XtAppContext;
typedef struct _XrmHashBucketRec *XrmDatabase;
typedef struct _XGX *GC;

struct XFontStruct;
union XEvent;
struct Display;
struct Screen;

typedef char Boolean;
typedef long XtArgVal;
typedef char* XtPointer;
typedef unsigned short Dimension;
typedef short Position;

typedef char* XString;

typedef struct {
	char dum[200];
} XGCValues;

typedef struct {
    XString      name;
    XtArgVal    value;
} Arg, *ArgList;

extern "C" { Widget XtParent(Widget); }

