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

Reply via email to