changeset 9746:49e984bf6689

(xlwmenu_default_font): New global variable. (XlwMenuInitialize): Use xlwmenu_default_font to default the font if necessary. Make mw, itself, an argument.
author Richard M. Stallman <rms@gnu.org>
date Sat, 29 Oct 1994 23:25:10 +0000
parents 129ec4acc4ff
children 5586959f3393
files lwlib/xlwmenu.c
diffstat 1 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lwlib/xlwmenu.c	Sat Oct 29 18:33:48 1994 +0000
+++ b/lwlib/xlwmenu.c	Sat Oct 29 23:25:10 1994 +0000
@@ -33,6 +33,8 @@
 static int pointer_grabbed;
 static XEvent menu_post_event;
 
+XFontStruct *xlwmenu_default_font;
+
 static char 
 xlwMenuTranslations [] = 
 "<BtnDown>:	start()\n\
@@ -1059,15 +1061,13 @@
 }
 
 static void
-XlwMenuInitialize (request, new, args, num_args)
+XlwMenuInitialize (request, mw, args, num_args)
      Widget request;
-     Widget new;
+     XlwMenuWidget mw;
      ArgList args;
      Cardinal *num_args;
 {
   /* Get the GCs and the widget size */
-  XlwMenuWidget mw = (XlwMenuWidget)new;
-  
   XSetWindowAttributes xswa;
   int mask;
   
@@ -1090,6 +1090,12 @@
 						      gray_bits, gray_width,
 						      gray_height, 1, 0, 1);
   
+  /* I don't understand why this ends up 0 sometimes,
+     but it does.  This kludge works around it.
+     Can anyone find a real fix?   -- rms.  */
+  if (mw->menu.font == 0)
+    mw->menu.font = xlwmenu_default_font;
+
   make_drawing_gcs (mw);
   make_shadow_gcs (mw);