diff --git a/ChangeLog b/ChangeLog index eba662768..168c9254b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,7 @@ * E_LIST_HANDLER_APPEND macro now asserts the event handler to make debugging easier * fixed bug where internal dialogs would not redraw after unfullscreening * config submenu now sets "config" category + * e_menu_category_callback create callback parameter order has been changed 2013-01-10 Deon Thomas diff --git a/NEWS b/NEWS index 3750cbdad..63241b899 100644 --- a/NEWS +++ b/NEWS @@ -23,6 +23,9 @@ Additions: * Added option for doing desklock, blanking or dimming even when showing fullscreen windows. * Added option for disabling pointer warping when performing directional focus changes using winlist +Changes: + API: + * e_menu_category_callback create callback parameter order has been changed Deprecations: * diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index 71e47e18a..174ba90f8 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -557,7 +557,7 @@ e_menu_category_data_set(char *category, void *data) } EAPI E_Menu_Category_Callback * -e_menu_category_callback_add(char *category, void (*create_cb)(E_Menu *m, void *category_data, void *data), void (*free_cb)(void *data), void *data) +e_menu_category_callback_add(char *category, void (*create_cb) (void *data, E_Menu *m, void *category_data), Ecore_Cb free_cb, void *data) { E_Menu_Category *cat; E_Menu_Category_Callback *cb = NULL; @@ -2120,7 +2120,7 @@ _e_menu_activate_internal(E_Menu *m, E_Zone *zone) { E_Menu_Category_Callback *cb; EINA_LIST_FOREACH(cat->callbacks, l, cb) - if (cb->create) cb->create(m, cat->data, cb->data); + if (cb->create) cb->create(cb->data, m, cat->data); } } m->cur.visible = 1; diff --git a/src/bin/e_menu.h b/src/bin/e_menu.h index 2bd2482c4..f0ef7383c 100644 --- a/src/bin/e_menu.h +++ b/src/bin/e_menu.h @@ -153,8 +153,8 @@ struct _E_Menu_Category_Callback { const char *category; void *data; - void (*create) (E_Menu *m, void *category_data, void *data); - void (*free) (void *data); + void (*create) (void *data, E_Menu *m, void *category_data); + Ecore_Cb free; }; @@ -175,7 +175,7 @@ EAPI void e_menu_icon_file_set(E_Menu *m, const char *icon); /* menu categories functions */ EAPI void e_menu_category_set(E_Menu *m, const char *category); EAPI void e_menu_category_data_set(char *category, void *data); -EAPI E_Menu_Category_Callback *e_menu_category_callback_add(char *category, void (*create) (E_Menu *m, void *category_data, void *data), void (free) (void *data), void *data); +EAPI E_Menu_Category_Callback *e_menu_category_callback_add(char *category, void (*create_cb) (void *data, E_Menu *m, void *category_data), Ecore_Cb free_cb, void *data); EAPI void e_menu_category_callback_del(E_Menu_Category_Callback *cb); diff --git a/src/modules/gadman/e_mod_main.c b/src/modules/gadman/e_mod_main.c index 863325405..21d9ac605 100644 --- a/src/modules/gadman/e_mod_main.c +++ b/src/modules/gadman/e_mod_main.c @@ -4,7 +4,7 @@ static void _gadman_maug_cb(void *data, E_Menu *m, E_Menu_Item *mi); static void _gadman_maug_add(void *data, E_Menu *m); static void _gadman_action_cb(E_Object *obj, const char *params); -static void _gadman_desktop_menu(E_Menu *m, void *d __UNUSED__, void *icon); +static void _gadman_desktop_menu(void *d __UNUSED__, E_Menu *m, void *icon); /* public module routines. all modules must have these */ EAPI E_Module_Api e_modapi = @@ -171,7 +171,7 @@ _gadman_desktop_menu_cb(void *data __UNUSED__, E_Menu *m, E_Menu_Item *mi __UNUS } static void -_gadman_desktop_menu(E_Menu *m, void *d __UNUSED__, void *icon) +_gadman_desktop_menu(void *d __UNUSED__, E_Menu *m, void *icon) { E_Menu_Item *mi;