Enlightenment CVS committal Author : englebass Project : e_modules Module : alarm
Dir : e_modules/alarm Modified Files: e_mod_main.c e_mod_main.h Log Message: Revert gadcon menu change. =================================================================== RCS file: /cvs/e/e_modules/alarm/e_mod_main.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- e_mod_main.c 25 Nov 2007 05:01:29 -0000 1.11 +++ e_mod_main.c 2 Dec 2007 16:13:45 -0000 1.12 @@ -1,9 +1,9 @@ /* * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 */ -#include <e.h> +#include "e.h" #include "e_mod_main.h" -#include "config.h" +#include <config.h> #define ALARM_ADD_FAIL(errcode) if (al) alarm_alarm_del(al); if (error) *error = errcode; return NULL; @@ -47,6 +47,7 @@ static double _epoch_find_date(char *date, int hour, int minute); static double _epoch_find_next(int day_monday, int day_tuesday, int day_wenesday, int day_thursday, int day_friday, int day_saturday, int day_sunday, int hour, int minute); static void _button_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info); +static void _menu_cb_deactivate_post(void *data, E_Menu *m); static void _menu_cb_alarm_snooze(void *data, E_Menu *m, E_Menu_Item *mi); static void _menu_cb_alarm_add(void *data, E_Menu *m, E_Menu_Item *mi); static void _menu_cb_configure(void *data, E_Menu *m, E_Menu_Item *mi); @@ -803,7 +804,7 @@ inst = data; ev = event_info; - if ((ev->button == 3) && (!inst->gcc->menu)) + if ((ev->button == 3) && (!alarm_config->menu)) { E_Menu *mn; E_Menu_Item *mi; @@ -811,6 +812,8 @@ int nb_snoozed = 0; mn = e_menu_new(); + e_menu_post_deactivate_callback_set(mn, _menu_cb_deactivate_post, inst); + alarm_config->menu = mn; /* snooze menu */ if (alarm_config->alarms_state == ALARM_STATE_RINGING) @@ -878,6 +881,14 @@ } static void +_menu_cb_deactivate_post(void *data, E_Menu *m) +{ + if (!alarm_config->menu) return; + e_object_del(E_OBJECT(alarm_config->menu)); + alarm_config->menu = NULL; +} + +static void _menu_cb_alarm_snooze(void *data, E_Menu *m, E_Menu_Item *mi) { Alarm *al; @@ -1140,6 +1151,11 @@ e_object_del(E_OBJECT(alarm_config->config_dialog)); if (alarm_config->config_dialog_alarm_new) e_object_del(E_OBJECT(alarm_config->config_dialog_alarm_new)); + if (alarm_config->menu) + { + e_menu_post_deactivate_callback_set(alarm_config->menu , NULL, NULL); + e_object_del(E_OBJECT(alarm_config->menu)); + } E_FREE(alarm_config); E_CONFIG_DD_FREE(_alarms_edd); =================================================================== RCS file: /cvs/e/e_modules/alarm/e_mod_main.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_mod_main.h 25 Nov 2007 05:01:29 -0000 1.4 +++ e_mod_main.h 2 Dec 2007 16:13:45 -0000 1.5 @@ -134,6 +134,7 @@ E_Config_Dialog *config_dialog; E_Config_Dialog *config_dialog_alarm_new; Evas_List *instances; + E_Menu *menu; }; EAPI extern E_Module_Api e_modapi; ------------------------------------------------------------------------- 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