'everything' allow plugins to set the selected item

SVN revision: 48282
This commit is contained in:
Hannes Janetzek 2010-04-24 16:18:45 +00:00
parent f755b8d06a
commit 31594bfade
3 changed files with 13 additions and 3 deletions

View File

@ -388,6 +388,13 @@ evry_item_select(const Evry_State *state, Evry_Item *it)
Evry_State *s = (Evry_State *)state;
Evry_Selector *sel = selector;
if (!s && it)
{
sel = _evry_selector_for_plugin_get(it->plugin);
s = sel->state;
}
if (!s) return;
s->plugin_auto_selected = EINA_FALSE;
s->item_auto_selected = EINA_FALSE;

View File

@ -340,7 +340,6 @@ _create_plugin_page(E_Config_Dialog_Data *cfdata, Evas *e, Plugin_Page *page)
of = e_widget_framelist_add(e, _("Available Plugins"), 0);
page->list = e_widget_ilist_add(e, 24, 24, NULL);
e_widget_on_change_hook_set(page->list, _list_select_cb, page);
/* e_widget_on_change_hook_set(ol, _avail_list_cb_change, cfdata); */
_fill_list(page->configs, page->list, 0);
e_widget_framelist_object_append(of, page->list);
@ -353,10 +352,8 @@ _create_plugin_page(E_Config_Dialog_Data *cfdata, Evas *e, Plugin_Page *page)
_plugin_move_down_cb,
page->list, page->configs);
e_widget_framelist_object_append(of, o);
ob = e_widget_table_add(e, 1);
e_widget_table_object_append(ob, of, 0, 0, 1, 3, 1, 1, 1, 1);
e_widget_disabled_set(o, 1);
of = e_widget_framelist_add(e, _("General"), 0);
o = e_widget_button_add(e, _("Configure"), NULL,
_plugin_config_cb,

View File

@ -759,6 +759,7 @@ _pan_item_select(Evas_Object *obj, Item *it, int scroll)
{
/* align */
align = (cur - dist);
align_to = cur - align;
}
}
else if (scroll < 0)
@ -779,8 +780,10 @@ _pan_item_select(Evas_Object *obj, Item *it, int scroll)
{
/* align */
align = (cur - dist);
align_to = cur - align;
}
}
/* edje_object_signal_emit(sd->cur_item->frame, "e,state,selected", "e"); */
align *= it->h;
}
@ -1298,6 +1301,9 @@ _cb_item_changed(void *data, int type, void *event)
EINA_LIST_FOREACH(sd->items, l, it)
if (it->item == ev->item)
{
if (it->item->selected)
_pan_item_select(v->span, it, 1);
if (!it->visible) break;
edje_object_part_text_set(it->frame, "e.text.label", it->item->label);