XEmacs 21.2-b1
[chise/xemacs-chise.git.1] / lwlib / xlwmenu.h
1 #ifndef _XlwMenu_h
2 #define _XlwMenu_h
3
4 /***********************************************************************
5  *
6  * XlwMenu Widget
7  *
8  ***********************************************************************/
9
10 #include "lwlib.h"
11
12 /* Resource names used by the XlwMenu widget */
13 #define XtNbuttonForeground "buttonForeground"
14 #define XtCButtonForeground "ButtonForeground"
15 #define XtNhighlightForeground "highlightForeground"
16 #define XtCHighlightForeground "HighlightForeground"
17 #define XtNtitleForeground "titleForeground"
18 #define XtCTitleForeground "TitleForeground"
19 #define XtNmargin "margin"
20 #define XtNhorizontalSpacing "horizontalSpacing"
21 #define XtNverticalSpacing "verticalSpacing"
22 #define XtNarrowSpacing "arrowSpacing"
23 #define XtNmenu "menu"
24 #define XtCMenu "Menu"
25 #define XtNopen "open"
26 #define XtNselect "select"
27 #define XtNmenuBorderWidth "menuBorderWidth"
28 #define XtNhorizontal "horizontal"
29 #define XtCHorizontal "Horizontal"
30 #ifndef XtNcursor
31 #define XtNcursor "cursor"
32 #endif
33 #ifndef XtCCursor
34 #define XtCCursor "Cursor"
35 #endif
36 #ifndef XtNuseBackingStore
37 #define XtNuseBackingStore "useBackingStore"
38 #endif
39 #ifndef XtCUseBackingStore
40 #define XtCUseBackingStore "UseBackingStore"
41 #endif
42 #define XtNbounceDown "bounceDown"
43 #define XtCBounceDown "BounceDown"
44 #define XtNresourceLabels "resourceLabels"
45 #define XtCResourceLabels "ResourceLabels"
46
47 /* Motif-compatible resource names */
48 #ifndef XmNshadowThickness
49 # define XmNshadowThickness     "shadowThickness"
50 # define XmCShadowThickness     "ShadowThickness"
51 # define XmNtopShadowColor      "topShadowColor"
52 # define XmCTopShadowColor      "TopShadowColor"
53 # define XmNbottomShadowColor   "bottomShadowColor"
54 # define XmCBottomShadowColor   "BottomShadowColor"
55 # define XmNtopShadowPixmap     "topShadowPixmap"
56 # define XmCTopShadowPixmap     "TopShadowPixmap"
57 # define XmNbottomShadowPixmap  "bottomShadowPixmap"
58 # define XmCBottomShadowPixmap  "BottomShadowPixmap"
59 # define XmRHorizontalDimension "HorizontalDimension"
60 # define XmNspacing             "spacing"
61 # define XmCSpacing             "Spacing"
62 # define XmNindicatorSize       "indicatorSize"
63 # define XmCIndicatorSize       "IndicatorSize"
64 # define XmNselectColor         "selectColor"
65 # define XmCSelectColor         "SelectColor"
66 # define XmNmarginHeight        "marginHeight"
67 # define XmCMarginHeight        "MarginHeight"
68 # define XmNmarginWidth         "marginWidth"
69 # define XmCMarginWidth         "MarginWidth"
70 # define XmRVerticalDimension   "VerticalDimension"
71 #endif
72
73 typedef struct _XlwMenuRec *XlwMenuWidget;
74 typedef struct _XlwMenuClassRec *XlwMenuWidgetClass;
75
76 extern WidgetClass xlwMenuWidgetClass;
77
78 void
79 xlw_pop_up_menu (XlwMenuWidget mw, XButtonPressedEvent* event);
80
81 /* menu accelerator */
82
83 void xlw_set_menu (Widget w, widget_value *val);
84 void xlw_push_menu (widget_value *val);
85 int xlw_pop_menu (void);
86 void xlw_set_item (widget_value *val);
87 void xlw_map_menu (Time t);
88 void xlw_display_menu (Time t);
89 void xlw_kill_menus (widget_value *val);
90 widget_value *xlw_get_entries (int allp);
91 int xlw_menu_level (void);
92
93 #endif /* _XlwMenu_h */