]> code.delx.au - gnu-emacs/blobdiff - lwlib/xlwmenuP.h
Spelling fixes
[gnu-emacs] / lwlib / xlwmenuP.h
index 4dd623d02d8a331c336638fca609991e13a2bac5..f21392beed70474a0d4c4f671875dd5549564514 100644 (file)
@@ -1,21 +1,50 @@
+/* Internals of a lightweight menubar widget.
+
+Copyright (C) 2002-2015 Free Software Foundation, Inc.
+Copyright (C) 1992 Lucid, Inc.
+
+This file is part of the Lucid Widget Library.
+
+The Lucid Widget Library is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+The Lucid Widget Library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
 #ifndef _XlwMenuP_h
 #define _XlwMenuP_h
 
 #include "xlwmenu.h"
 #include <X11/CoreP.h>
+#ifdef HAVE_XFT
+#include <X11/Xft/Xft.h>
+#endif
 
 /* Elements in the stack arrays. */
 typedef struct _window_state
 {
+  Widget        w;
   Window       window;
+  Pixmap        pixmap;
   Position     x;
   Position     y;
   Dimension    width;
   Dimension    height;
   Dimension    label_width;
+  int           max_rest_width;
 
   /* Width of toggle buttons or radio buttons.  */
   Dimension     button_width;
+#ifdef HAVE_XFT
+  XftDraw*      xft_draw;
+#endif
 } window_state;
 
 
@@ -23,6 +52,16 @@ typedef struct _window_state
 typedef struct _XlwMenu_part
 {
   /* slots set by the resources */
+#ifdef HAVE_X_I18N
+  XFontSet     fontSet;
+  XFontSetExtents *font_extents;
+#endif
+#ifdef HAVE_XFT
+  int           default_face;
+  XftFont*      xft_font;
+  XftColor      xft_fg, xft_bg, xft_disabled_fg;
+#endif
+  String       fontName;
   XFontStruct* font;
   Pixel                foreground;
   Pixel                disabled_foreground;
@@ -39,17 +78,20 @@ typedef struct _XlwMenu_part
   Cursor       cursor_shape;
   XtCallbackList       open;
   XtCallbackList       select, highlight;
+  XtCallbackList        enter, leave;
   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;
+  bool_bf free_top_shadow_color_p : 1;
+  bool_bf free_bottom_shadow_color_p : 1;
 
   /* State of the XlwMenu */
+  int                   top_depth;
   int                  old_depth;
   widget_value**       old_stack;
   int                  old_stack_length;
+  widget_value*         inside_entry;
 
   /* New state after the user moved */
   int                  new_depth;