forked from enlightenment/enlightenment
when no shelves are present, we just show the add shelf menu item
SVN revision: 76299
This commit is contained in:
parent
ee4fbda47a
commit
6015463fdf
|
@ -1409,7 +1409,7 @@ _e_int_menus_shelves_pre_cb(void *data __UNUSED__, E_Menu *m)
|
||||||
{
|
{
|
||||||
E_Menu_Item *mi;
|
E_Menu_Item *mi;
|
||||||
Eina_List *l, *shelves = NULL;
|
Eina_List *l, *shelves = NULL;
|
||||||
E_Shelf *s;
|
E_Shelf *es;
|
||||||
E_Container *con;
|
E_Container *con;
|
||||||
E_Zone *zone;
|
E_Zone *zone;
|
||||||
|
|
||||||
|
@ -1419,29 +1419,22 @@ _e_int_menus_shelves_pre_cb(void *data __UNUSED__, E_Menu *m)
|
||||||
|
|
||||||
/* get the current clients */
|
/* get the current clients */
|
||||||
shelves = e_shelf_list();
|
shelves = e_shelf_list();
|
||||||
|
EINA_LIST_FOREACH(shelves, l, es)
|
||||||
if (!shelves)
|
|
||||||
{
|
|
||||||
/* FIXME here we want nothing, but that crashes!!! */
|
|
||||||
mi = e_menu_item_new(m);
|
|
||||||
e_menu_item_label_set(mi, _("(No Shelves)"));
|
|
||||||
}
|
|
||||||
EINA_LIST_FOREACH(shelves, l, s)
|
|
||||||
{
|
{
|
||||||
const char *name;
|
const char *name;
|
||||||
char buf[4096];
|
char buf[4096];
|
||||||
|
|
||||||
if (!s) continue;
|
if (!es) continue;
|
||||||
if (s->zone->num != zone->num) continue;
|
if (es->zone->num != zone->num) continue;
|
||||||
if (s->cfg->container != (int)con->num) continue;
|
if (es->cfg->container != (int)con->num) continue;
|
||||||
|
|
||||||
name = e_shelf_orient_string_get(s);
|
name = e_shelf_orient_string_get(es);
|
||||||
snprintf(buf, sizeof(buf), "Shelf %s", name);
|
snprintf(buf, sizeof(buf), "Shelf %s", name);
|
||||||
|
|
||||||
mi = e_menu_item_new(m);
|
mi = e_menu_item_new(m);
|
||||||
e_menu_item_label_set(mi, buf);
|
e_menu_item_label_set(mi, buf);
|
||||||
e_menu_item_callback_set(mi, _e_int_menus_shelves_item_cb, s);
|
e_menu_item_callback_set(mi, _e_int_menus_shelves_item_cb, es);
|
||||||
switch (s->cfg->orient)
|
switch (es->cfg->orient)
|
||||||
{
|
{
|
||||||
case E_GADCON_ORIENT_LEFT:
|
case E_GADCON_ORIENT_LEFT:
|
||||||
e_util_menu_item_theme_icon_set(mi, "preferences-position-left");
|
e_util_menu_item_theme_icon_set(mi, "preferences-position-left");
|
||||||
|
@ -1496,8 +1489,11 @@ _e_int_menus_shelves_pre_cb(void *data __UNUSED__, E_Menu *m)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mi = e_menu_item_new(m);
|
if (shelves)
|
||||||
e_menu_item_separator_set(mi, 1);
|
{
|
||||||
|
mi = e_menu_item_new(m);
|
||||||
|
e_menu_item_separator_set(mi, 1);
|
||||||
|
}
|
||||||
|
|
||||||
mi = e_menu_item_new(m);
|
mi = e_menu_item_new(m);
|
||||||
e_menu_item_label_set(mi, _("Add a Shelf"));
|
e_menu_item_label_set(mi, _("Add a Shelf"));
|
||||||
|
|
Loading…
Reference in New Issue