Enlightenment CVS committal Author : englebass Project : e_modules Module : uptime
Dir : e_modules/uptime Modified Files: e_mod_main.c e_mod_main.h Log Message: Revert gadcon menu change. =================================================================== RCS file: /cvs/e/e_modules/uptime/e_mod_main.c,v retrieving revision 1.28 retrieving revision 1.29 diff -u -3 -r1.28 -r1.29 --- e_mod_main.c 25 Nov 2007 05:50:41 -0000 1.28 +++ e_mod_main.c 2 Dec 2007 16:38:08 -0000 1.29 @@ -64,6 +64,7 @@ static void _ut_cb_mouse_down (void *data, Evas * e, Evas_Object * obj, void *event_info); static void _ut_menu_cb_configure (void *data, E_Menu * m, E_Menu_Item * mi); +static void _ut_menu_cb_post (void *data, E_Menu * m); static Config_Item *_ut_config_item_get (const char *id); static Uptime *_ut_new (Evas * evas); static void _ut_free (Uptime * ut); @@ -190,16 +191,21 @@ Instance *inst; Evas_Event_Mouse_Down *ev; + if (ut_config->menu != NULL) + return; + inst = data; ev = event_info; - if ((ev->button == 3) && (!inst->gcc->menu)) + if (ev->button == 3) { E_Menu *mn; E_Menu_Item *mi; int x, y, w, h; mn = e_menu_new (); + e_menu_post_deactivate_callback_set (mn, _ut_menu_cb_post, inst); + ut_config->menu = mn; mi = e_menu_item_new (mn); e_menu_item_label_set (mi, D_ ("Configuration")); @@ -222,6 +228,15 @@ } static void +_ut_menu_cb_post (void *data, E_Menu * m) +{ + if (ut_config->menu == NULL) + return; + e_object_del (E_OBJECT (ut_config->menu)); + ut_config->menu = NULL; +} + +static void _ut_menu_cb_configure (void *data, E_Menu * m, E_Menu_Item * mi) { Instance *inst; @@ -352,6 +367,12 @@ if (ut_config->config_dialog != NULL) e_object_del (E_OBJECT (ut_config->config_dialog)); + if (ut_config->menu) + { + e_menu_post_deactivate_callback_set (ut_config->menu, NULL, NULL); + e_object_del (E_OBJECT (ut_config->menu)); + ut_config->menu = NULL; + } while (ut_config->items) { Config_Item *ci; =================================================================== RCS file: /cvs/e/e_modules/uptime/e_mod_main.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- e_mod_main.h 25 Nov 2007 05:50:41 -0000 1.10 +++ e_mod_main.h 2 Dec 2007 16:38:08 -0000 1.11 @@ -10,6 +10,7 @@ { E_Module *module; E_Config_Dialog *config_dialog; + E_Menu *menu; Evas_List *instances; Evas_List *items; }; ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs