forked from enlightenment/enlightenment
Set client list to fit better with rasters master plan, now client menu can be at any depth :)
demonstrated by putting a clone where it was origionally entered SVN revision: 12549
This commit is contained in:
parent
b5c40c9f5a
commit
4f7683b206
|
@ -49,6 +49,11 @@ e_int_menus_about_new(void)
|
|||
e_menu_item_label_set(mi, "Modules");
|
||||
e_menu_item_submenu_set(mi, subm);
|
||||
|
||||
subm = e_int_menus_clients_new();
|
||||
mi = e_menu_item_new(m);
|
||||
e_menu_item_label_set(mi, "Clients");
|
||||
e_menu_item_submenu_set(mi, subm);
|
||||
|
||||
mi = e_menu_item_new(m);
|
||||
e_menu_item_separator_set(mi, 1);
|
||||
|
||||
|
@ -210,6 +215,7 @@ _e_int_menus_clients_pre_cb(void *data, E_Menu *m)
|
|||
{
|
||||
E_Menu_Item *mi;
|
||||
Evas_List *l, *borders = NULL;
|
||||
E_Menu *root;
|
||||
|
||||
if (m->realized) return;
|
||||
|
||||
|
@ -225,10 +231,11 @@ _e_int_menus_clients_pre_cb(void *data, E_Menu *m)
|
|||
|
||||
}
|
||||
|
||||
root = e_menu_root_get(m);
|
||||
/* get the current containers clients */
|
||||
if (m->con)
|
||||
if (root && root->con)
|
||||
{
|
||||
for (l = e_container_clients_list_get(m->con); l; l = l->next)
|
||||
for (l = e_container_clients_list_get(root->con); l; l = l->next)
|
||||
{
|
||||
borders = evas_list_append(borders, l->data);
|
||||
}
|
||||
|
|
|
@ -240,6 +240,20 @@ e_menu_post_deactivate_callback_set(E_Menu *m, void (*func) (void *data, E_Menu
|
|||
m->post_deactivate_cb.data = data;
|
||||
}
|
||||
|
||||
E_Menu *
|
||||
e_menu_root_get(E_Menu *m)
|
||||
{
|
||||
E_Menu *ret;
|
||||
|
||||
E_OBJECT_CHECK_RETURN(m, NULL);
|
||||
ret = m;
|
||||
while (ret->parent_item && ret->parent_item->menu)
|
||||
{
|
||||
ret = ret->parent_item->menu;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
E_Menu_Item *
|
||||
e_menu_item_new(E_Menu *m)
|
||||
|
|
|
@ -119,6 +119,8 @@ EAPI void e_menu_icon_file_set(E_Menu *m, char *icon);
|
|||
EAPI void e_menu_pre_activate_callback_set(E_Menu *m, void (*func) (void *data, E_Menu *m), void *data);
|
||||
EAPI void e_menu_post_deactivate_callback_set(E_Menu *m, void (*func) (void *data, E_Menu *m), void *data);
|
||||
|
||||
EAPI E_Menu *e_menu_root_get(E_Menu *m);
|
||||
|
||||
EAPI E_Menu_Item *e_menu_item_new(E_Menu *m);
|
||||
EAPI E_Menu_Item *e_menu_item_nth(E_Menu *m, int n);
|
||||
EAPI int e_menu_item_num_get(E_Menu_Item *mi);
|
||||
|
|
Loading…
Reference in New Issue