From 0cae2cd4c0e24bf2319afd75b45b7fd0e0b1decb Mon Sep 17 00:00:00 2001 From: junkyu han Date: Tue, 19 Jul 2016 15:59:23 +0900 Subject: [PATCH] change the size of badge according to the number of digit Change-Id: I2ecd4a9e54efd6d99b8b4eeb00d590004480c4be --- data/edje/item_4x4.edc | 56 ++++++++++++++++++++++++++++++++++++++++++-------- src/item.c | 8 +++++++- 2 files changed, 55 insertions(+), 9 deletions(-) diff --git a/data/edje/item_4x4.edc b/data/edje/item_4x4.edc index bade3dd..617bdd5 100644 --- a/data/edje/item_4x4.edc +++ b/data/edje/item_4x4.edc @@ -104,10 +104,24 @@ collections { } } description { - state: "badge" 0.0; + state: "badge,one" 0.0; inherit: "default" 0.0; visible: 1; } + description { + state: "badge,two" 0.0; + inherit: "default" 0.0; + rel1 { relative: 110/_ITEM_WIDTH 0.0; to, "bg"; } + rel2 { relative: 170/_ITEM_WIDTH 52/_ITEM_HEIGHT; to, "bg"; } + visible: 1; + } + description { + state: "badge,three" 0.0; + inherit: "default" 0.0; + rel1 { relative: 105/_ITEM_WIDTH 0.0; to, "bg"; } + rel2 { relative: 175/_ITEM_WIDTH 52/_ITEM_HEIGHT; to, "bg"; } + visible: 1; + } } part { @@ -118,8 +132,8 @@ collections { description { state: "default" 0.0; visible: 0; - rel1 { relative: 0.1 0.1; to, "badge"; } - rel2 { relative: 0.9 0.9; to, "badge"; } + rel1 { relative: 0.0 0.0; to, "badge"; offset: -2 0; } + rel2 { relative: 1.0 1.0; to, "badge"; } align: 0.5 0.5; color: 255 255 255 255; color2: 0 0 0 35; @@ -127,13 +141,23 @@ collections { text { text_class: "tizen"; font: "TIZEN:style=medium"; - size: 20; + size: 18; text: "1"; align: 0.5 0.5; } } description { - state: "badge" 0.0; + state: "badge,one" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { + state: "badge,two" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { + state: "badge,three" 0.0; inherit: "default" 0.0; visible: 1; } @@ -299,10 +323,26 @@ collections { // Badge program { - name: "badge,on"; - signal: "badge,on"; + name: "badge,one"; + signal: "badge,one"; + source: "menu"; + action: STATE_SET "badge,one" 0.0; + target: "badge"; + target: "badge,txt"; + } + program { + name: "badge,two"; + signal: "badge,two"; + source: "menu"; + action: STATE_SET "badge,two" 0.0; + target: "badge"; + target: "badge,txt"; + } + program { + name: "badge,three"; + signal: "badge,three"; source: "menu"; - action: STATE_SET "badge" 0.0; + action: STATE_SET "badge,three" 0.0; target: "badge"; target: "badge,txt"; } diff --git a/src/item.c b/src/item.c index cb72c1f..24ca72d 100644 --- a/src/item.c +++ b/src/item.c @@ -348,7 +348,13 @@ HAPI void item_show_badge(Evas_Object *obj, int value) ret_if(NULL == scroller); ret_if(page_scroller_is_edited(scroller)); - edje_object_signal_emit(_EDJ(obj), "badge,on", "menu"); + if (value < 10) { + edje_object_signal_emit(_EDJ(obj), "badge,one", "menu"); + } else if (value >= 10 && value < 100) { + edje_object_signal_emit(_EDJ(obj), "badge,two", "menu"); + } else { + edje_object_signal_emit(_EDJ(obj), "badge,three", "menu"); + } evas_object_data_set(obj, "badge,enabled", (void*)1); _D("Badge is updated to %s", str); -- 2.7.4