Enlightenment CVS committal
Author : handyande
Project : e17
Module : apps/e
Dir : e17/apps/e/src/bin
Modified Files:
e_int_menus.c e_menu.c e_menu.h
Log Message:
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
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_menus.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- e_int_menus.c 21 Dec 2004 15:17:01 -0000 1.4
+++ e_int_menus.c 22 Dec 2004 10:41:03 -0000 1.5
@@ -49,6 +49,11 @@
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_Menu_Item *mi;
Evas_List *l, *borders = NULL;
+ E_Menu *root;
if (m->realized) return;
@@ -225,10 +231,11 @@
}
+ 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);
}
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- e_menu.c 14 Dec 2004 03:32:25 -0000 1.3
+++ e_menu.c 22 Dec 2004 10:41:03 -0000 1.4
@@ -240,6 +240,20 @@
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)
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_menu.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- e_menu.h 25 Nov 2004 05:31:20 -0000 1.2
+++ e_menu.h 22 Dec 2004 10:41:03 -0000 1.3
@@ -119,6 +119,8 @@
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);
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs