diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-08-28 17:32:49 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-08-28 17:32:49 +0000 |
| commit | ec9dd7fdd7531d2ca951a0b812bf8e63b6e9a377 (patch) | |
| tree | 416dba2692ec7ef0605a60b6fc032faca4605d00 /openbox | |
| parent | fb035e4b0f91fa68a833f681f1f7bd7c71325bdb (diff) | |
new method for loading menu files etc
Diffstat (limited to 'openbox')
| -rw-r--r-- | openbox/config.h | 4 | ||||
| -rw-r--r-- | openbox/event.c | 5 | ||||
| -rw-r--r-- | openbox/event.h | 12 | ||||
| -rw-r--r-- | openbox/menu.c | 14 | ||||
| -rw-r--r-- | openbox/menu.h | 9 |
5 files changed, 25 insertions, 19 deletions
diff --git a/openbox/config.h b/openbox/config.h index 98a5340b..777d895e 100644 --- a/openbox/config.h +++ b/openbox/config.h @@ -72,8 +72,8 @@ gint config_resist_win; /*! Number of pixels to resist while crossing a screen's edge */ gint config_resist_edge; -/*! User-specified path to the menu file */ -extern gchar *config_menu_path; +/*! User-specified menu files */ +extern GSList *config_menu_files; void config_startup(struct _ObParseInst *i); void config_shutdown(); diff --git a/openbox/event.c b/openbox/event.c index bbde397e..094d19fe 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -1102,14 +1102,15 @@ static void find_max_fd() #endif } -void event_remove_fd(int n) +void event_remove_fd(gint n) { FD_CLR(n, &allset); g_datalist_id_remove_data(&fd_handler_list, (GQuark)n); find_max_fd(); } -static void fd_event_handle_foreach(GQuark n, gpointer data, gpointer user_data) +static void fd_event_handle_foreach(GQuark n, + gpointer data, gpointer user_data) { if (FD_ISSET( (int)n, &selset)) { event_fd_handler *h = (event_fd_handler *)data; diff --git a/openbox/event.h b/openbox/event.h index b8f567a8..6aade180 100644 --- a/openbox/event.h +++ b/openbox/event.h @@ -7,21 +7,21 @@ extern Time event_lasttime; /*! The value of the mask for the NumLock modifier */ -extern unsigned int NumLockMask; +extern guint NumLockMask; /*! The value of the mask for the ScrollLock modifier */ -extern unsigned int ScrollLockMask; +extern guint ScrollLockMask; void event_startup(); void event_shutdown(); typedef struct event_fd_handler { - int fd; - void *data; - void (*handler)(int fd, void *data); + gint fd; + gpointer data; + void (*handler)(gint fd, gpointer data); } event_fd_handler; void event_add_fd_handler(event_fd_handler *handler); -void event_remove_fd(int n); +void event_remove_fd(gint n); void event_loop(); diff --git a/openbox/menu.c b/openbox/menu.c index 84c5ded5..4ffcca0d 100644 --- a/openbox/menu.c +++ b/openbox/menu.c @@ -193,7 +193,7 @@ void menu_parse() } } -gboolean menu_new(gchar *name, gchar *title, gpointer data) +ObMenu* menu_new(gchar *name, gchar *title, gpointer data) { ObMenu *self; @@ -206,7 +206,7 @@ gboolean menu_new(gchar *name, gchar *title, gpointer data) g_hash_table_replace(menu_hash, self->name, self); - return TRUE; + return self; } void menu_free(gchar *name) @@ -295,7 +295,8 @@ static void menu_clear_entries_internal(ObMenu *self) } } -void menu_add_normal(gchar *name, gint id, gchar *label, GSList *actions) +ObMenuEntry* menu_add_normal(gchar *name, gint id, gchar *label, + GSList *actions) { ObMenu *self; ObMenuEntry *e; @@ -307,9 +308,10 @@ void menu_add_normal(gchar *name, gint id, gchar *label, GSList *actions) e->data.normal.actions = actions; self->entries = g_list_append(self->entries, e); + return e; } -void menu_add_submenu(gchar *name, gint id, gchar *submenu) +ObMenuEntry* menu_add_submenu(gchar *name, gint id, gchar *submenu) { ObMenu *self; ObMenuEntry *e; @@ -320,9 +322,10 @@ void menu_add_submenu(gchar *name, gint id, gchar *submenu) e->data.submenu.name = g_strdup(submenu); self->entries = g_list_append(self->entries, e); + return e; } -void menu_add_separator(gchar *name, gint id) +ObMenuEntry* menu_add_separator(gchar *name, gint id) { ObMenu *self; ObMenuEntry *e; @@ -332,6 +335,7 @@ void menu_add_separator(gchar *name, gint id) e = menu_entry_new(self, OB_MENU_ENTRY_TYPE_SEPARATOR, id); self->entries = g_list_append(self->entries, e); + return e; } void menu_set_update_func(gchar *name, ObMenuUpdateFunc func) diff --git a/openbox/menu.h b/openbox/menu.h index 74519343..4780bda0 100644 --- a/openbox/menu.h +++ b/openbox/menu.h @@ -93,7 +93,7 @@ void menu_shutdown(); void menu_parse(); -gboolean menu_new(gchar *name, gchar *title, gpointer data); +ObMenu* menu_new(gchar *name, gchar *title, gpointer data); void menu_free(gchar *name); gboolean menu_open_plugin(ObParseInst *i, gchar *name, gchar *plugin); @@ -106,9 +106,10 @@ void menu_show(gchar *name, gint x, gint y, struct _ObClient *client); /* functions for building menus */ void menu_clear_entries(gchar *name); -void menu_add_normal(gchar *name, gint id, gchar *label, GSList *actions); -void menu_add_submenu(gchar *name, gint id, gchar *submenu); -void menu_add_separator(gchar *name, gint id); +ObMenuEntry* menu_add_normal(gchar *name, gint id, gchar *label, + GSList *actions); +ObMenuEntry* menu_add_submenu(gchar *name, gint id, gchar *submenu); +ObMenuEntry* menu_add_separator(gchar *name, gint id); ObMenuEntry* menu_find_entry_id(ObMenu *self, gint id); |
