X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fmenu.c;h=dbb0c70129417f54213ee9abd775c6cdcee44038;hb=83da4ec9398d197f39461cd7305163b2676840c8;hp=37601881eb0567264befe612fc80773e57bf364f;hpb=3905872982478e4e0ae05f4ce114a8025a2389ee;p=chaz%2Fopenbox diff --git a/openbox/menu.c b/openbox/menu.c index 37601881..dbb0c701 100644 --- a/openbox/menu.c +++ b/openbox/menu.c @@ -110,13 +110,13 @@ void menu_startup(gboolean reconfig) g_assert(menu_parse_state.parent == NULL); if (!reconfig) - client_add_destructor(client_dest, NULL); + client_add_destroy_notify(client_dest, NULL); } void menu_shutdown(gboolean reconfig) { if (!reconfig) - client_remove_destructor(client_dest); + client_remove_destroy_notify(client_dest); parse_shutdown(menu_parse_inst); menu_parse_inst = NULL; @@ -328,8 +328,8 @@ ObMenu* menu_new(const gchar *name, const gchar *title, g_hash_table_replace(menu_hash, self->name, self); self->more_menu = g_new0(ObMenu, 1); - self->more_menu->name = "More..."; - self->more_menu->title = "More..."; + self->more_menu->name = _("More..."); + self->more_menu->title = _("More..."); self->more_menu->data = data; self->more_menu->shortcut = g_unichar_tolower(g_utf8_get_char("M")); @@ -357,11 +357,12 @@ static void menu_destroy_hash_value(ObMenu *self) g_free(self->name); g_free(self->title); g_free(self->execute); + g_free(self->more_menu); g_free(self); } -void menu_unref(ObMenu *menu) +void menu_free(ObMenu *menu) { if (menu) g_hash_table_remove(menu_hash, menu->name); @@ -528,6 +529,16 @@ ObMenuEntry* menu_add_separator(ObMenu *self, gint id, const gchar *label) return e; } +void menu_set_show_func(ObMenu *self, ObMenuShowFunc func) +{ + self->show_func = func; +} + +void menu_set_hide_func(ObMenu *self, ObMenuHideFunc func) +{ + self->hide_func = func; +} + void menu_set_update_func(ObMenu *self, ObMenuUpdateFunc func) { self->update_func = func;