From: JinYong Park Date: Thu, 28 Dec 2017 11:10:55 +0000 (+0900) Subject: more_option: add color class parent-child relationship X-Git-Tag: submit/tizen/20180103.114435^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4e3dc83f78b7f4cb0abc77a3a727695f924b4cd7;p=platform%2Fcore%2Fuifw%2Fefl-ext.git more_option: add color class parent-child relationship Change-Id: Iefa569376d8dc3c7d98660c5d28e88edb92599b2 Signed-off-by: Jinyong Park --- diff --git a/src/wearable/efl_extension_more_option.c b/src/wearable/efl_extension_more_option.c index 7e01366..9ad2068 100644 --- a/src/wearable/efl_extension_more_option.c +++ b/src/wearable/efl_extension_more_option.c @@ -46,6 +46,9 @@ static void _more_option_screen_reader_changed(void *data, Evas_Object *obj, voi static char *_accessibility_panel_name_set_cb(void *data, Evas_Object *obj); static char *_accessibility_panel_description_set_cb(void *data, Evas_Object *obj); +/* === color class === */ +void _eext_more_option_color_class_parent_set(Evas_Object *obj, Evas_Object *parent); + /* === internal object cb & util === */ static void _drawer_back_cb(void *data, Evas_Object *obj, void *event_info) @@ -394,6 +397,7 @@ eext_more_option_add(Evas_Object *parent) elm_layout_signal_callback_add(mold->panel, "elm,state,active,finished", "elm", _panel_active_cb, mold); elm_layout_signal_callback_add(mold->panel, "elm,state,inactive,finished", "elm", _panel_inactive_cb, mold); elm_layout_signal_callback_add(mold->panel, "cue,clicked", "elm", _panel_cue_clicked_cb, mold); + _eext_more_option_color_class_parent_set(mold->panel, mold->more_option); mold->rotary_selector = eext_rotary_selector_add(mold->more_option); if (!mold->rotary_selector) @@ -404,6 +408,7 @@ eext_more_option_add(Evas_Object *parent) evas_object_smart_callback_add(mold->rotary_selector, "item,selected", _rotary_selector_item_selected, mold); evas_object_smart_callback_add(mold->rotary_selector, "item,clicked", _rotary_selector_item_clicked, mold); + _eext_more_option_color_class_parent_set(mold->rotary_selector, mold->more_option); Evas_Object *selector_content = elm_layout_add(mold->rotary_selector); if (!selector_content) @@ -418,6 +423,8 @@ eext_more_option_add(Evas_Object *parent) elm_object_content_set(mold->panel, mold->rotary_selector); + _eext_more_option_color_class_parent_set(selector_content, mold->more_option); + elm_panel_toggle(mold->panel); //for accessibility @@ -854,3 +861,29 @@ _accessibility_panel_description_set_cb(void *data, Evas_Object *obj) } // + +void +_eext_more_option_color_class_parent_set(Evas_Object *obj, Evas_Object *parent) +{ + Evas_Object *edje = NULL, *parent_edje = NULL; + + if (!obj || !parent) return; + + if (eo_isa(obj, ELM_LAYOUT_CLASS)) + edje = elm_layout_edje_get(obj); + else if (eo_isa(obj, EDJE_OBJECT_CLASS)) + edje = obj; + + if (eo_isa(parent, ELM_LAYOUT_CLASS)) + parent_edje = elm_layout_edje_get(parent); + else if (eo_isa(parent, EDJE_OBJECT_CLASS)) + parent_edje = parent; + + if (!edje || !parent_edje) + { + ERR("There is a missing edje to have color class relationship... edje[%p], parent_edje[%p]", edje, parent_edje); + return; + } + + edje_object_color_class_parent_set(edje, parent_edje); +}