]> Dogcows Code - chaz/openbox/blobdiff - openbox/menu.h
grab the pointer on the screen_support_win, causing all mouse events during a grab...
[chaz/openbox] / openbox / menu.h
index b0f39b7b53b9b4258bc615e355e10cb6d15bd12e..5683cb2a292974559fc799986810de9cc680d070 100644 (file)
@@ -20,7 +20,8 @@ typedef struct _ObSubmenuMenuEntry ObSubmenuMenuEntry;
 typedef struct _ObSeparatorMenuEntry ObSeparatorMenuEntry;
 
 typedef void (*ObMenuUpdateFunc)(struct _ObMenuFrame *frame, gpointer data);
-typedef void (*ObMenuExecuteFunc)(struct _ObMenuEntry *entry, gpointer data);
+typedef void (*ObMenuExecuteFunc)(struct _ObMenuEntry *entry,
+                                  guint state, gpointer data);
 typedef void (*ObMenuDestroyFunc)(struct _ObMenu *menu, gpointer data);
 
 struct _ObMenu
@@ -42,6 +43,9 @@ struct _ObMenu
     ObMenuUpdateFunc update_func;
     ObMenuExecuteFunc execute_func;
     ObMenuDestroyFunc destroy_func;
+
+    /* Pipe-menu parent, we get destroyed when it is destroyed */
+    ObMenu *pipe_creator;
 };
 
 typedef enum
@@ -64,6 +68,12 @@ struct _ObNormalMenuEntry {
     gint icon_width;
     gint icon_height;
     RrPixel32 *icon_data;
+
+    /* Mask icon */
+    RrPixmapMask *mask;
+    RrColor *mask_normal_color;
+    RrColor *mask_disabled_color;
+    RrColor *mask_selected_color;
 };
 
 struct _ObSubmenuMenuEntry {
@@ -89,8 +99,8 @@ struct _ObMenuEntry
     } data;
 };
 
-void menu_startup();
-void menu_shutdown();
+void menu_startup(gboolean reconfig);
+void menu_shutdown(gboolean reconfig);
 
 ObMenu* menu_new(gchar *name, gchar *title, gpointer data);
 void menu_free(ObMenu *menu);
This page took 0.024757 seconds and 4 git commands to generate.