From eb40d8e32c82d74369e6a5267b9ae6368d36a57a Mon Sep 17 00:00:00 2001 From: Jee-Yong Um Date: Thu, 7 May 2015 16:21:57 +0900 Subject: [PATCH] elm_genlist: Emitting signal when content or text is set in genlist item Summary: There could be a demand for providing subtle different item styles according to the existence of icon or text swallowed in genlist item. For example, if icon exists, genlist item shows icon, or show rectangle where icon should be placed. One style can have various form with this signal. Reviewers: Hermet Subscribers: Hermet Differential Revision: https://phab.enlightenment.org/D2348 Change-Id: I027da3a97677fc13ab58df7ff7bfd0844aa13ed4 origin: upstream --- src/lib/elm_genlist.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c index 8e95473..2e0c06b 100644 --- a/src/lib/elm_genlist.c +++ b/src/lib/elm_genlist.c @@ -307,6 +307,7 @@ _item_text_realize(Elm_Gen_Item *it, const Eina_List *l; const char *key; char *s; + char buf[256]; if (!it->itc->func.text_get) return; @@ -323,6 +324,9 @@ _item_text_realize(Elm_Gen_Item *it, { edje_object_part_text_escaped_set(target, key, s); free(s); + + snprintf(buf, sizeof(buf), "elm,state,%s,visible", key); + edje_object_signal_emit(target, buf, "elm"); } else { @@ -341,6 +345,7 @@ _item_content_realize(Elm_Gen_Item *it, const char *parts) { Evas_Object *content; + char buf[256]; if (!parts) { @@ -383,6 +388,9 @@ _item_content_realize(Elm_Gen_Item *it, elm_widget_sub_object_add(WIDGET(it), content); if (eo_do(EO_OBJ(it), elm_wdg_item_disabled_get())) elm_widget_disabled_set(content, EINA_TRUE); + + snprintf(buf, sizeof(buf), "elm,state,%s,visible", key); + edje_object_signal_emit(target, buf, "elm"); } } } -- 2.7.4