diff options
author | Marcel Hollerbach <marcel-hollerbach@t-online.de> | 2015-06-17 14:53:37 +0200 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2015-06-17 15:59:19 +0200 |
commit | fb050ab650348a3bdd370c81f0b9ca911a904f9f (patch) | |
tree | 8eee86cecaaf8c0e628b798c0ded4d3e96b2e1dc | |
parent | fbcdeb2a485fedb983aa71115f66a71f5002ef4d (diff) | |
download | elementary-fb050ab650348a3bdd370c81f0b9ca911a904f9f.tar.gz |
elm_icon_external: cleanup ERR msg in error case
Summary:
Setting the group without checking it exists causes a errormessage, this
is pretty annoying for people which want to set a standart icon. And
give a better errormessage if the standart setting failed.
Reviewers: raster, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2686
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
-rw-r--r-- | src/edje_externals/elm_icon.c | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/edje_externals/elm_icon.c b/src/edje_externals/elm_icon.c index 1ac65b53a..979cc0b40 100644 --- a/src/edje_externals/elm_icon.c +++ b/src/edje_externals/elm_icon.c @@ -84,8 +84,16 @@ external_icon_state_set(void *data EINA_UNUSED, Evas_Object *obj, edje = evas_object_smart_parent_get(obj); edje_object_file_get(edje, &file, NULL); - if (!elm_image_file_set(obj, file, p->icon)) - elm_icon_standard_set(obj, p->icon); + if (!edje_file_group_exists(file, p->icon)) + { + if (!elm_icon_standard_set(obj, p->icon)) + ERR("Failed to set standard icon! (%s)", p->icon); + } + else if (!elm_image_file_set(obj, file, p->icon)) + { + if (!elm_icon_standard_set(obj, p->icon)) + ERR("Failed to set standard icon! (%s)", p->icon); + } } } @@ -153,8 +161,16 @@ external_icon_param_set(void *data EINA_UNUSED, Evas_Object *obj, edje = evas_object_smart_parent_get(obj); edje_object_file_get(edje, &file, NULL); - if (!elm_image_file_set(obj, file, param->s)) - elm_icon_standard_set(obj, param->s); + if (!edje_file_group_exists(file, param->s)) + { + if (!elm_icon_standard_set(obj, param->s)) + ERR("Failed to set standard icon! (%s)", param->s); + } + else if (!elm_image_file_set(obj, file, param->s)) + { + if (!elm_icon_standard_set(obj, param->s)) + ERR("Failed to set standard icon as fallback! (%s)", param->s); + } return EINA_TRUE; } } |