Enlightenment CVS committal

Author  : englebass
Project : e_modules
Module  : mixer

Dir     : e_modules/mixer


Modified Files:
        e_mod_main.c e_mod_main.h 


Log Message:
Revert gadcon menu change.

===================================================================
RCS file: /cvs/e/e_modules/mixer/e_mod_main.c,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -3 -r1.71 -r1.72
--- e_mod_main.c        25 Nov 2007 05:37:18 -0000      1.71
+++ e_mod_main.c        2 Dec 2007 16:25:54 -0000       1.72
@@ -33,6 +33,7 @@
 static void         _mixer_mute_toggle          (Mixer *mixer, Config_Item 
*ci, int channel_id);
 
 static Config_Item *_mixer_config_item_get   (void *data, const char *id);
+static void         _mixer_menu_cb_post      (void *data, E_Menu *m);
 static void         _mixer_menu_cb_configure (void *data, E_Menu *m, 
E_Menu_Item *mi);
 static void         _mixer_cb_mouse_down     (void *data, Evas *e, Evas_Object 
*obj, void *event_info);
 static void         _mixer_cb_mouse_wheel    (void *data, Evas *e, Evas_Object 
*obj, void *event_info);
@@ -254,7 +255,7 @@
    if (!inst) return;
 
    ev = event_info;
-   if ((ev->button == 3) && (!inst->gcc->menu))
+   if ((ev->button == 3) && (!mixer_config->menu))
      {
        E_Menu      *mn;
        E_Menu_Item *mi;
@@ -264,6 +265,8 @@
        zone = e_util_zone_current_get(e_manager_current_get());
        
        mn = e_menu_new();
+       e_menu_post_deactivate_callback_set(mn, _mixer_menu_cb_post, inst);
+       mixer_config->menu = mn;
 
        mi = e_menu_item_new(mn);
        e_menu_item_label_set(mi, D_("Configuration"));
@@ -314,6 +317,14 @@
 }
 
 static void
+_mixer_menu_cb_post(void *data, E_Menu *m)
+{
+   if (!mixer_config->menu) return;
+   e_object_del(E_OBJECT(mixer_config->menu));
+   mixer_config->menu = NULL;
+}
+
+static void
 _mixer_menu_cb_configure(void *data, E_Menu *m, E_Menu_Item *mi) 
 {
    Instance    *inst;
@@ -544,6 +555,13 @@
 
    if (mixer_config->config_dialog)
      e_object_del(E_OBJECT(mixer_config->config_dialog));
+
+   if (mixer_config->menu)
+     {
+       e_menu_post_deactivate_callback_set(mixer_config->menu, NULL, NULL);
+       e_object_del(E_OBJECT(mixer_config->menu));
+       mixer_config->menu = NULL;
+     }
 
    while (mixer_config->items)
      {
===================================================================
RCS file: /cvs/e/e_modules/mixer/e_mod_main.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- e_mod_main.h        25 Nov 2007 05:37:18 -0000      1.12
+++ e_mod_main.h        2 Dec 2007 16:25:54 -0000       1.13
@@ -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