X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fmenu.h;h=5683cb2a292974559fc799986810de9cc680d070;hb=c1b2fc5324522f74a14a5cfa210c95e1509a6e7f;hp=b0f39b7b53b9b4258bc615e355e10cb6d15bd12e;hpb=c3b02749d72e0077aff85f29d7a28e5ba329b071;p=chaz%2Fopenbox diff --git a/openbox/menu.h b/openbox/menu.h index b0f39b7b..5683cb2a 100644 --- a/openbox/menu.h +++ b/openbox/menu.h @@ -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);