forked from enlightenment/efl
allow theme of fileselector_entry components.
Right now I'm abusing style, setting fileselector_entry/$style on items, however if it's not found the fallback will be 'default' and not 'fileselector_entry/default' as it should be. I'm wondering if this should be implemented in elm_theme.c by replacing the last '/$component' with '/default', the remove it and try again, like: {{{ input = a/b/c pass1 = a/b/default pass2 = a/b pass3 = a/default pass4 = a pass5 = default }}} SVN revision: 53423
This commit is contained in:
parent
a1128c6d91
commit
475318f728
|
@ -131,12 +131,19 @@ static void
|
|||
_theme_hook(Evas_Object *obj)
|
||||
{
|
||||
Widget_Data *wd = elm_widget_data_get(obj);
|
||||
const char *style = elm_widget_style_get(obj);
|
||||
char buf[1024];
|
||||
|
||||
if (!wd) return;
|
||||
_elm_theme_object_set
|
||||
(obj, wd->edje, "fileselector_entry", "base", elm_widget_style_get(obj));
|
||||
_elm_theme_object_set(obj, wd->edje, "fileselector_entry", "base", style);
|
||||
if (elm_object_disabled_get(obj))
|
||||
edje_object_signal_emit(wd->edje, "elm,state,disabled", "elm");
|
||||
|
||||
if (!style) style = "default";
|
||||
snprintf(buf, sizeof(buf), "fileselector_entry/%s", style);
|
||||
elm_widget_style_set(wd->button, buf);
|
||||
elm_widget_style_set(wd->entry, buf);
|
||||
|
||||
edje_object_part_swallow(obj, "elm.swallow.button", wd->button);
|
||||
edje_object_part_swallow(obj, "elm.swallow.entry", wd->entry);
|
||||
|
||||
|
@ -200,6 +207,7 @@ elm_fileselector_entry_add(Evas_Object *parent)
|
|||
elm_widget_resize_object_set(obj, wd->edje);
|
||||
|
||||
wd->button = elm_fileselector_button_add(obj);
|
||||
elm_widget_style_set(wd->button, "fileselector_entry/default");
|
||||
edje_object_part_swallow(wd->edje, "elm.swallow.button", wd->button);
|
||||
elm_widget_sub_object_add(obj, wd->button);
|
||||
evas_object_event_callback_add
|
||||
|
@ -213,6 +221,7 @@ elm_fileselector_entry_add(Evas_Object *parent)
|
|||
#undef SIG_FWD
|
||||
|
||||
wd->entry = elm_scrolled_entry_add(obj);
|
||||
elm_widget_style_set(wd->entry, "fileselector_entry/default");
|
||||
elm_scrolled_entry_single_line_set(wd->entry, EINA_TRUE);
|
||||
elm_scrolled_entry_editable_set(wd->entry, EINA_TRUE);
|
||||
edje_object_part_swallow(wd->edje, "elm.swallow.entry", wd->entry);
|
||||
|
|
Loading…
Reference in New Issue