From: Soohye Shin Date: Thu, 2 Jul 2015 07:24:29 +0000 (+0900) Subject: enable to switch lock button in view_user_edit X-Git-Tag: accepted/tizen/tv/20150728.070602~33 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=13391aa33c671a3af10f865d48ff1cba3fe13542;p=profile%2Ftv%2Fapps%2Fnative%2Fair_home.git enable to switch lock button in view_user_edit Change-Id: Ib790886a1d95b7dc388daaf7e51680cc9cd76bb1 Signed-off-by: Soohye Shin --- diff --git a/edje/view/useredit.edc b/edje/view/useredit.edc index 4fee726..6732ece 100644 --- a/edje/view/useredit.edc +++ b/edje/view/useredit.edc @@ -853,10 +853,6 @@ group { group { name, GRP_USER_EDIT_SWITCH; - images { - image, "btn_switch_on_nor.png" COMP; - image, "btn_switch_off_nor.png" COMP; - } parts { part { name, "bg"; @@ -865,21 +861,32 @@ group { description { state, "default" 0.0; min, 104 54; - visible, 0; + color, 0 119 246 255; } } part { - name, "icon"; - type, IMAGE; + name, "clip"; + type, RECT; scale, 1; description { state, "default" 0.0; - image.normal, "btn_switch_on_nor.png"; fixed, 1 1; } description { state, "focus" 0.0; - image.normal, "btn_switch_off_nor.png"; + rel1.relative, 0.5 0.5; + rel2.relative, 0.5 0.5; + min, 98 48; + fixed, 1 1; + } + } + part { + name, PART_USER_EDIT_SWITCH; + type, SWALLOW; + scale, 1; + clip_to, "clip"; + description { + state, "default" 0.0; fixed, 1 1; } } @@ -890,16 +897,16 @@ group { signal, SIG_FOCUS; source, SRC_PROG; action, STATE_SET "focus" 0.0; - transition, ACCEL 0.2; - target, "icon"; + transition, LINEAR 0.1; + target, "clip"; } program { name, "sig,unfocus"; signal, SIG_UNFOCUS; source, SRC_PROG; action, STATE_SET "default" 0.0; - transition, ACCEL 0.2; - target, "icon"; + transition, LINEAR 0.1; + target, "clip"; } } } diff --git a/edje/images/btn_switch_off_nor.png b/images/btn_switch_off_nor.png similarity index 100% rename from edje/images/btn_switch_off_nor.png rename to images/btn_switch_off_nor.png diff --git a/edje/images/btn_switch_on_nor.png b/images/btn_switch_on_nor.png similarity index 100% rename from edje/images/btn_switch_on_nor.png rename to images/btn_switch_on_nor.png diff --git a/include/defs.h b/include/defs.h index adcd83f..bea2b0e 100644 --- a/include/defs.h +++ b/include/defs.h @@ -77,6 +77,7 @@ #define PART_USER_EDIT_ICON_LIST "part.user.edit.icon.list" #define PART_USER_EDIT_ICON_LIST_ITEM "part.user.edit.icon.list.item" #define PART_USER_EDIT_ICON_LIST_ITEM_FOCUS "part.user.edit.icon.list.item.focus" +#define PART_USER_EDIT_SWITCH "part.user.edit.switch" #define PART_BAR_ITEM_BG "part.bar.item.bg" #define PART_BAR_ITEM_ICON "part.bar.item.icon" #define PART_BAR_ITEM_ICON_FOCUS "part.bar.item.icon.focus" @@ -120,6 +121,8 @@ #define COLOR_DEFAULT_B 246 #define COLOR_DEFAULT_A 255 +#define IMAGE_SWITCH_ON IMAGEDIR"/btn_switch_on_nor.png" +#define IMAGE_SWITCH_OFF IMAGEDIR"/btn_switch_off_nor.png" #define IMAGE_BADGE IMAGEDIR"/badge_bg.png" #define IMAGE_USER_ADD IMAGEDIR"/btn_user_add_nor.png" #define IMAGE_USER_ADD_FOCUS IMAGEDIR"/btn_user_add_foc.png" diff --git a/src/view/view_user_edit.c b/src/view/view_user_edit.c index 124d5b5..c72a3d9 100644 --- a/src/view/view_user_edit.c +++ b/src/view/view_user_edit.c @@ -332,6 +332,40 @@ static input_handler photo_handler = { .key_down = _photo_key_down }; +static void _load_lock_icon(struct _priv *priv, Evas_Object *ly) +{ + Evas_Object *lock; + const char *file = NULL; + + if (priv->lock) { + elm_image_file_get(priv->lock, &file, NULL); + elm_object_part_content_unset(priv->lock, + PART_USER_EDIT_SWITCH); + evas_object_del(priv->lock); + } + + if (!file || !strcmp(file, IMAGE_SWITCH_OFF)) + file = IMAGE_SWITCH_ON; + else + file = IMAGE_SWITCH_OFF; + lock = utils_add_icon(ly, file, PART_USER_EDIT_SWITCH); + + priv->lock = lock; +} + +static void _lock_key_down(int id, void *data, Evas *e, Evas_Object *obj, + Evas_Event_Key_Down *ev) +{ + if (!strcmp(ev->keyname, KEY_ENTER)) + _load_lock_icon(data, obj); +} + +static input_handler lock_handler = { + .focused = _focused, + .unfocused = _unfocused, + .key_down = _lock_key_down +}; + static Evas_Object *_add_layout(struct _priv *priv) { Evas_Object *ly, *photo, *name, *pin, *account, *lock; @@ -368,13 +402,15 @@ static Evas_Object *_add_layout(struct _priv *priv) if (!lock) goto err; + _load_lock_icon(priv, lock); + + inputmgr_add_callback(lock, 0, &lock_handler, priv); inputmgr_add_callback(photo, 0, &photo_handler, priv); priv->photo = photo; priv->name = name; priv->account = account; priv->pin = pin; - priv->lock = lock; return ly; err: @@ -493,6 +529,7 @@ static void _destroy(void *data) priv = data; inputmgr_remove_callback(priv->photo, &photo_handler); + inputmgr_remove_callback(priv->photo, &lock_handler); inputmgr_remove_callback(priv->done, &done_handler); inputmgr_remove_callback(priv->cancel, &cancel_handler); viewmgr_remove_view(VIEW_PHOTO);