]> code.delx.au - gnu-emacs/blobdiff - lwlib/xlwmenuP.h
(calc-info-goto-node): New function.
[gnu-emacs] / lwlib / xlwmenuP.h
index 2eca68ecda4ee3bd7d9940c1feac29a28605e378..f6aa0f4a58c8a3e48c8fe21cc41e9762e0fc1be8 100644 (file)
@@ -13,15 +13,19 @@ typedef struct _window_state
   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;
@@ -32,13 +36,18 @@ typedef struct _XlwMenu_part
   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                   top_depth;
   int                  old_depth;
   widget_value**       old_stack;
   int                  old_stack_length;
@@ -56,7 +65,7 @@ typedef struct _XlwMenu_part
   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;
@@ -66,20 +75,20 @@ typedef struct _XlwMenu_part
 } 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;
@@ -89,3 +98,6 @@ typedef struct _XlwMenuClassRec
 extern XlwMenuClassRec xlwMenuClassRec;
 
 #endif /* _XlwMenuP_h */
+
+/* arch-tag: 18d7fc41-ffa0-47a3-a49f-3469900c7a25
+   (do not change this comment) */