add to toggle lock button 97/46897/3
authorSoohye Shin <soohye.shin@samsung.com>
Thu, 27 Aug 2015 04:47:48 +0000 (13:47 +0900)
committerSoohye Shin <soohye.shin@samsung.com>
Fri, 28 Aug 2015 06:33:48 +0000 (23:33 -0700)
Change-Id: I12f5102868a695168eff511d26324e888e15bf41
Signed-off-by: Soohye Shin <soohye.shin@samsung.com>
edje/view/useredit.edc
src/view/view_user_edit.c

index dc28a17..d9f3ddd 100644 (file)
@@ -800,9 +800,6 @@ group {
                image, "btn_switch_off_nor.png" COMP;
                image, "btn_switch_on_nor.png" COMP;
        }
-       script {
-               public switch_on;
-       }
        parts {
                part {
                        name, "bg";
@@ -835,7 +832,7 @@ group {
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 0 4;
+                               min, 0 3;
                                rel2.relative, 1.0 0.0;
                                fixed, 0 1;
                                align, 0.5 0.0;
@@ -853,7 +850,7 @@ group {
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 4 0;
+                               min, 3 0;
                                rel1 {
                                        to, "pad.up";
                                        relative, 0.0 1.0;
@@ -875,7 +872,7 @@ group {
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 4 0;
+                               min, 3 0;
                                rel1 {
                                        to, "pad.up";
                                        relative, 1.0 1.0;
@@ -896,7 +893,7 @@ group {
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               min, 0 4;
+                               min, 0 3;
                                rel1 {
                                        to, "pad.left";
                                        relative, 1.0 1.0;
@@ -941,17 +938,17 @@ group {
                }
                program {
                        name, "sig,disable";
-                       signal, SIG_CHANGE;
+                       signal, SIG_DISABLE;
                        source, SRC_PROG;
-                       script {
-                               if (get_int(switch_on) == 0) {
-                                       set_state(PART:"switch", "disable", 0.0);
-                                       set_int(switch_on, 1);
-                               } else {
-                                       set_state(PART:"switch", "default", 0.0);
-                                       set_int(switch_on, 0);
-                               }
-                       }
+                       action, STATE_SET "disable" 0.0;
+                       target, "switch";
+               }
+               program {
+                       name, "sig,enable";
+                       signal, SIG_ENABLE;
+                       source, SRC_PROG;
+                       action, STATE_SET "default" 0.0;
+                       target, "switch";
                }
        }
 }
index 2995101..3e48415 100644 (file)
@@ -78,6 +78,7 @@ struct _priv {
        Evas_Object *popup;
        Evas_Object *lock;
        Evas_Object *pin[COUNT_PIN];
+       Eina_Bool locked;
 
        char *selected_photo;
 
@@ -643,11 +644,31 @@ static void _select_btn_done(struct _priv *priv)
        viewmgr_pop_view();
 }
 
+static void _disable_pin(struct _priv *priv)
+{
+       int i;
+
+       for (i = 0; i < COUNT_PIN; i++) {
+               elm_entry_entry_set(priv->pin[i], "");
+               elm_object_focus_allow_set(priv->pin[i], EINA_FALSE);
+               elm_object_signal_emit(priv->pin[i], SIG_DISABLE, SRC_ELM);
+       }
+}
+
 static void _select(struct _priv *priv, int id, Evas_Object *obj)
 {
        switch (id) {
        case INPUT_HANDLER_TYPE_LOCK:
-               elm_object_signal_emit(priv->lock, SIG_CHANGE, SRC_PROG);
+               if (priv->locked) {
+                       _disable_pin(priv);
+                       elm_object_signal_emit(priv->lock, SIG_DISABLE,
+                                       SRC_PROG);
+               } else {
+                       _reset_pin(priv, false);
+                       elm_object_signal_emit(priv->lock, SIG_ENABLE,
+                                       SRC_PROG);
+               }
+               priv->locked = !priv->locked;
                break;
        case INPUT_HANDLER_TYPE_PHOTO:
                _add_icon_list(priv);
@@ -735,6 +756,8 @@ static void _key_down(int id, void *data, Evas *e, Evas_Object *obj,
                case INPUT_HANDLER_TYPE_BTN_CANCEL:
                case INPUT_HANDLER_TYPE_DELETE:
                case INPUT_HANDLER_TYPE_ENTRY:
+               case INPUT_HANDLER_TYPE_PIN:
+               case INPUT_HANDLER_TYPE_LOCK:
                        if (_check_changed_input(priv)) {
                                _add_discard_popup(priv);
                                return;
@@ -859,6 +882,8 @@ static void _reset(struct _priv *priv)
        }
 
        _reset_pin(priv, false);
+       elm_object_signal_emit(priv->lock, SIG_ENABLE, SRC_PROG);
+       priv->locked = EINA_TRUE;
 }
 
 static void _show(void *data)