Revert gadcon menu change.

SVN revision: 32936
This commit is contained in:
Sebastian Dransfeld 2007-12-02 16:41:11 +00:00
parent 1edcdab1a7
commit 6ba7e280cb
2 changed files with 20 additions and 2 deletions

View File

@ -52,6 +52,12 @@ e_modapi_shutdown(E_Module *m)
_gc_unregister(); _gc_unregister();
if (cfg->cfd) e_object_del(E_OBJECT(cfg->cfd)); if (cfg->cfd) e_object_del(E_OBJECT(cfg->cfd));
if (cfg->menu)
{
e_menu_post_deactivate_callback_set(cfg->menu, NULL, NULL);
e_object_del(E_OBJECT(cfg->menu));
cfg->menu = NULL;
}
while (cfg->items) while (cfg->items)
{ {

View File

@ -14,6 +14,7 @@
#endif #endif
static void _bytes_to_string(bytes_t bytes, char *string, int size); static void _bytes_to_string(bytes_t bytes, char *string, int size);
static void _cb_post(void *data, E_Menu *m);
static void _cb_configure(void *data, E_Menu *m, E_Menu_Item *mi); static void _cb_configure(void *data, E_Menu *m, E_Menu_Item *mi);
#ifdef __FreeBSD__ #ifdef __FreeBSD__
@ -151,15 +152,17 @@ _cb_mouse_down(void *data, Evas *evas, Evas_Object *obj, void *event)
if (x) ecore_exe_free(x); if (x) ecore_exe_free(x);
} }
} }
else if ((ev->button == 1) && (!inst->gcc->menu)) else if ((ev->button == 1) && (!cfg->menu))
e_gadcon_popup_toggle_pinned(inst->popup); e_gadcon_popup_toggle_pinned(inst->popup);
else if ((ev->button == 3) && (!inst->gcc->menu)) else if ((ev->button == 3) && (!cfg->menu))
{ {
E_Menu *mn; E_Menu *mn;
E_Menu_Item *mi; E_Menu_Item *mi;
int x, y; int x, y;
mn = e_menu_new(); mn = e_menu_new();
e_menu_post_deactivate_callback_set(mn, _cb_post, inst);
cfg->menu = mn;
mi = e_menu_item_new(mn); mi = e_menu_item_new(mn);
e_menu_item_label_set(mi, D_("Configuration")); e_menu_item_label_set(mi, D_("Configuration"));
@ -236,6 +239,15 @@ _bytes_to_string(bytes_t bytes, char *string, int size)
snprintf(string, size, "%lu B", bytes); snprintf(string, size, "%lu B", bytes);
} }
static void
_cb_post(void *data, E_Menu *m)
{
if (!cfg->menu) return;
e_menu_post_deactivate_callback_set(cfg->menu, NULL, NULL);
e_object_del(E_OBJECT(cfg->menu));
cfg->menu = NULL;
}
static void static void
_cb_configure(void *data, E_Menu *m, E_Menu_Item *mi) _cb_configure(void *data, E_Menu *m, E_Menu_Item *mi)
{ {