Enlightenment CVS committal Author : devilhorns Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_int_menus.c Log Message: Some cleanup to reduce duplicated code. (One function to del them all) :) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_menus.c,v retrieving revision 1.179 retrieving revision 1.180 diff -u -3 -r1.179 -r1.180 --- e_int_menus.c 17 Oct 2006 03:10:27 -0000 1.179 +++ e_int_menus.c 17 Oct 2006 08:04:40 -0000 1.180 @@ -33,7 +33,6 @@ static void _e_int_menus_main_hibernate (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_apps_scan (E_Menu *m); static void _e_int_menus_apps_start (void *data, E_Menu *m); -static void _e_int_menus_apps_del_hook (void *obj); static void _e_int_menus_apps_free_hook (void *obj); static void _e_int_menus_apps_run (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_apps_drag (void *data, E_Menu *m, E_Menu_Item *mi); @@ -49,7 +48,6 @@ static void _e_int_menus_clients_cleanup_cb (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_virtuals_pre_cb (void *data, E_Menu *m); static void _e_int_menus_virtuals_item_cb (void *data, E_Menu *m, E_Menu_Item *mi); -static void _e_int_menus_virtuals_free_hook (void *obj); static void _e_int_menus_themes_about (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_lost_clients_pre_cb (void *data, E_Menu *m); static void _e_int_menus_lost_clients_free_hook (void *obj); @@ -62,10 +60,9 @@ static void _e_int_menus_shelves_item_cb (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_shelves_add_cb (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_shelves_del_cb (void *data, E_Menu *m, E_Menu_Item *mi); -static void _e_int_menus_shelves_free_hook (void *obj); static void _e_int_menus_main_showhide (void *data, E_Menu *m, E_Menu_Item *mi); static void _e_int_menus_desk_item_cb (void *data, E_Menu *m, E_Menu_Item *mi); -static void _e_int_menus_desks_free_hook (void *obj); +static void _e_int_menus_items_del_hook (void *obj); /* local subsystem globals */ static Evas_Hash *_e_int_menus_augmentation = NULL; @@ -172,7 +169,7 @@ a = e_app_new(dir, 0); e_object_data_set(E_OBJECT(m), a); e_menu_pre_activate_callback_set(m, _e_int_menus_apps_start, NULL); - e_object_del_attach_func_set(E_OBJECT(m), _e_int_menus_apps_del_hook); + e_object_del_attach_func_set(E_OBJECT(m), _e_int_menus_items_del_hook); e_object_free_attach_func_set(E_OBJECT(m), _e_int_menus_apps_free_hook); return m; } @@ -190,7 +187,7 @@ e_menu_item_label_set(mi, _("Virtual")); e_util_menu_item_edje_icon_set(mi, "enlightenment/desktops"); e_menu_pre_activate_callback_set(subm, _e_int_menus_virtuals_pre_cb, NULL); - e_object_free_attach_func_set(E_OBJECT(subm), _e_int_menus_virtuals_free_hook); + e_object_free_attach_func_set(E_OBJECT(subm), _e_int_menus_items_del_hook); e_menu_item_submenu_set(mi, subm); subm = e_menu_new(); @@ -198,7 +195,7 @@ e_menu_item_label_set(mi, _("Shelves")); e_util_menu_item_edje_icon_set(mi, "enlightenment/shelf"); e_menu_pre_activate_callback_set(subm, _e_int_menus_shelves_pre_cb, NULL); - e_object_free_attach_func_set(E_OBJECT(subm), _e_int_menus_shelves_free_hook); + e_object_free_attach_func_set(E_OBJECT(subm), _e_int_menus_items_del_hook); e_menu_item_submenu_set(mi, subm); mi = e_menu_item_new(m); @@ -209,7 +206,7 @@ e_util_menu_item_edje_icon_set(mi, "enlightenment/showhide"); e_menu_item_callback_set(mi, _e_int_menus_main_showhide, NULL); - e_object_free_attach_func_set(E_OBJECT(m), _e_int_menus_desks_free_hook); + e_object_free_attach_func_set(E_OBJECT(m), _e_int_menus_items_del_hook); return m; } @@ -330,54 +327,6 @@ /* local subsystem functions */ static void -_e_int_menus_desks_free_hook(void *obj) -{ - E_Menu *m; - Evas_List *l; - - m = obj; - for (l = m->items; l; l = l->next) - { - E_Menu_Item *mi; - - mi = l->data; - if (mi->submenu) e_object_del(E_OBJECT(mi->submenu)); - } -} - -static void -_e_int_menus_virtuals_free_hook(void *obj) -{ - E_Menu *m; - Evas_List *l; - - m = obj; - for (l = m->items; l; l = l->next) - { - E_Menu_Item *mi; - - mi = l->data; - if (mi->submenu) e_object_del(E_OBJECT(mi->submenu)); - } -} - -static void -_e_int_menus_shelves_free_hook(void *obj) -{ - E_Menu *m; - Evas_List *l; - - m = obj; - for (l = m->items; l; l = l->next) - { - E_Menu_Item *mi; - - mi = l->data; - if (mi->submenu) e_object_del(E_OBJECT(mi->submenu)); - } -} - -static void _e_int_menus_main_del_hook(void *obj) { Main_Data *dat; @@ -586,7 +535,7 @@ } static void -_e_int_menus_apps_del_hook(void *obj) +_e_int_menus_items_del_hook(void *obj) { E_Menu *m; Evas_List *l; @@ -824,7 +773,6 @@ E_Menu *m; m = obj; - _e_int_menus_augmentation_del(m, evas_hash_find(_e_int_menus_augmentation, "config")); } @@ -923,7 +871,6 @@ E_Menu *m; m = obj; - _e_int_menus_augmentation_del(m, evas_hash_find(_e_int_menus_augmentation, "sys")); } @@ -1069,7 +1016,6 @@ o = e_icon_add(m->evas); e_icon_object_set(o, e_border_icon_add(bd, m->evas)); - mi->icon_object = o; } ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs