Dimension width;
Dimension height;
Dimension label_width;
+
+ /* Width of toggle buttons or radio buttons. */
+ Dimension button_width;
} window_state;
/* New fields for the XlwMenu widget instance record */
-typedef struct _XlwMenu_part
+typedef struct _XlwMenu_part
{
/* slots set by the resources */
XFontStruct* font;
- int foreground;
+ Pixel foreground;
+ Pixel disabled_foreground;
Pixel button_foreground;
Dimension margin;
Dimension horizontal_spacing;
Pixel bottom_shadow_color;
Pixmap top_shadow_pixmap;
Pixmap bottom_shadow_pixmap;
- int cursor_shape;
+ Cursor cursor_shape;
XtCallbackList open;
- XtCallbackList select;
+ XtCallbackList select, highlight;
widget_value* contents;
int horizontal;
-
+
+ /* True means top_shadow_color and/or bottom_shadow_color must be freed. */
+ unsigned free_top_shadow_color_p : 1;
+ unsigned free_bottom_shadow_color_p : 1;
+
/* State of the XlwMenu */
int old_depth;
widget_value** old_stack;
GC foreground_gc;
GC button_gc;
GC background_gc;
- GC inactive_gc;
+ GC disabled_gc;
GC inactive_button_gc;
GC shadow_top_gc;
GC shadow_bottom_gc;
} XlwMenuPart;
/* Full instance record declaration */
-typedef struct _XlwMenuRec
+typedef struct _XlwMenuRec
{
CorePart core;
XlwMenuPart menu;
} XlwMenuRec;
/* New fields for the XlwMenu widget class record */
-typedef struct
+typedef struct
{
int dummy;
} XlwMenuClassPart;
/* Full class record declaration. */
-typedef struct _XlwMenuClassRec
+typedef struct _XlwMenuClassRec
{
CoreClassPart core_class;
XlwMenuClassPart menu_class;