1 #ifndef INCLUDED_xlwmenuP_h_
2 #define INCLUDED_xlwmenuP_h_
7 /* Elements in the stack arrays. */
8 typedef struct _window_state {
14 Dimension label_width;
15 Dimension toggle_width;
18 /* New fields for the XlwMenu widget instance record */
19 typedef struct _XlwMenu_part {
20 /* slots set by the resources */
24 XmFontList font_list_2;
25 XmFontList fallback_font_list;
32 Dimension font_ascent, font_descent; /* extracted from font/fontlist */
35 Pixel button_foreground;
36 Pixel highlight_foreground;
37 Pixel title_foreground;
39 Dimension horizontal_margin;
40 Dimension vertical_margin;
41 Dimension column_spacing;
42 Dimension shadow_thickness;
43 Dimension indicator_size;
44 Pixel top_shadow_color;
45 Pixel bottom_shadow_color;
47 Pixmap top_shadow_pixmap;
48 Pixmap bottom_shadow_pixmap;
51 XtCallbackList select;
52 widget_value *contents;
54 Boolean use_backing_store;
56 Boolean lookup_labels;
58 /* State of the XlwMenu */
60 widget_value **old_stack;
63 /* New state after the user moved */
65 widget_value **new_stack;
68 /* Window resources */
69 window_state *windows;
72 /* Internal part, set by the XlwMenu */
77 GC inactive_button_gc;
88 Boolean pointer_grabbed;
89 Boolean next_release_must_exit;
90 Time menu_post_time, menu_bounce_time;
91 widget_value *last_selected_val;
94 /* Full instance record declaration */
95 typedef struct _XlwMenuRec {
100 /* New fields for the XlwMenu widget class record */
105 /* Full class record declaration. */
106 typedef struct _XlwMenuClassRec {
107 CoreClassPart core_class;
108 XlwMenuClassPart menu_class;
112 extern XlwMenuClassRec xlwMenuClassRec;
114 #endif /* INCLUDED_xlwmenuP_h_ */