Add clear button status handler 18/42118/2
authorjinwoo.shin <jw0227.shin@samsung.com>
Tue, 23 Jun 2015 11:34:15 +0000 (20:34 +0900)
committerjinwoo.shin <jw0227.shin@samsung.com>
Tue, 23 Jun 2015 12:13:20 +0000 (21:13 +0900)
Change-Id: Id37b357b33e5f075cd4ac458e862ee346843a95c
Signed-off-by: jinwoo.shin <jw0227.shin@samsung.com>
data/view/square_view.edc
include/define.h
src/square_view.c

index 66fc561..a290cb5 100644 (file)
@@ -514,7 +514,7 @@ group {
                program {
                        name, "no_notification";
                        signal, SIGNAL_NO_NOTIFICATION;
-                       source, SOURCE_PROGRAM;
+                       source, SOURCE_ELM;
                        action, STATE_SET "no_notification" 0.0;
                        target, PART_NOTIFICATION_LIST;
                        target, PART_NOTIFICATION_NO_NOTIFICATION_BG;
@@ -524,7 +524,7 @@ group {
                        name, "notification";
                        signal, SIGNAL_NOTIFICATION;
                        action, STATE_SET "default" 0.0;
-                       source, SOURCE_PROGRAM;
+                       source, SOURCE_ELM;
                        target, PART_NOTIFICATION_LIST;
                        target, PART_NOTIFICATION_NO_NOTIFICATION_BG;
                        target, PART_NOTIFICATION_NO_NOTIFICATION;
@@ -668,7 +668,7 @@ group {
                program {
                        name, "focused";
                        signal, SIGNAL_FOCUSED;
-                       source, SOURCE_PROGRAM;
+                       source, SOURCE_ELM;
                        action, STATE_SET "focused" 0.0;
                        target, "border_bg";
                        target, "bg";
@@ -677,7 +677,7 @@ group {
                program {
                        name, "unfocused";
                        signal, SIGNAL_UNFOCUSED;
-                       source, SOURCE_PROGRAM;
+                       source, SOURCE_ELM;
                        action, STATE_SET "default" 0.0;
                        target, "border_bg";
                        target, "bg";
@@ -695,41 +695,93 @@ group {
        }
        parts {
                part {
-                       name, PART_NOTIFICATION_CLEAR_BG;
+                       name, "border_bg";
                        type, RECT;
                        scale, 1;
                        description {
                                state, "default" 0.0;
-                               rel1.relative, 1.0 0.0;
-                               rel2.relative, 1.0 0.0;
                                color, 48 48 48 255;
-                               align, 1.0 0.0;
+                               align, 0.5 0.5;
                                min, 98 66;
                                fixed, 1 1;
                        }
-                       part {
-                               name, PART_NOTIFICATION_CLEAR_ICON;
-                               type, IMAGE;
-                               scale, 1;
-                               description {
-                                       state, "default" 0.0;
-                                       image.normal, "btn_noti_list_clearall_nor.png";
-                                       align, 0.0 0.0;
-                                       fixed, 1 1;
-                                       visible, 1;
-                               }
-                               description {
-                                       state, "disabled" 0.0;
-                                       inherit, "default" 0.0;
-                                       image.normal, "btn_noti_list_clearall_dis.png";
+                       description {
+                               state, "focused" 0.0;
+                               inherit, "default" 0.0;
+                               color, 64 171 233 255;
+                       }
+               }
+               part {
+                       name, PART_NOTIFICATION_CLEAR_BG;
+                       type, RECT;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               rel1 {
+                                       to, "border_bg";
+                                       relative, 0.5 0.5;
                                }
-                               description {
-                                       state, "focused" 0.0;
-                                       inherit, "default" 0.0;
-                                       image.normal, "btn_noti_list_clearall_foc.png";
+                               rel2 {
+                                       to, "border_bg";
+                                       relative, 0.5 0.5;
                                }
+                               color, 48 48 48 255;
+                               align, 0.5 0.5;
+                               min, 90 58;
+                               fixed, 1 1;
+                       }
+               }
+               part {
+                       name, PART_NOTIFICATION_CLEAR_ICON;
+                       type, IMAGE;
+                       scale, 1;
+                       description {
+                               state, "default" 0.0;
+                               image.normal, "btn_noti_list_clearall_nor.png";
+                               align, 0.0 0.0;
+                               fixed, 1 1;
+                               visible, 1;
+                       }
+                       description {
+                               state, "disabled" 0.0;
+                               inherit, "default" 0.0;
+                               image.normal, "btn_noti_list_clearall_dis.png";
+                       }
+                       description {
+                               state, "focused" 0.0;
+                               inherit, "default" 0.0;
+                               image.normal, "btn_noti_list_clearall_foc.png";
                        }
                }
        }
+       programs {
+               program {
+                       name, "disabled";
+                       signal, SIGNAL_DISABLED;
+                       source, SOURCE_ELM;
+                       action, STATE_SET "disabled" 0.0;
+                       target, "border_bg";
+                       target, PART_NOTIFICATION_CLEAR_BG;
+                       target, PART_NOTIFICATION_CLEAR_ICON;
+               }
+               program {
+                       name, "focused";
+                       signal, SIGNAL_FOCUSED;
+                       source, SOURCE_ELM;
+                       action, STATE_SET "focused" 0.0;
+                       target, "border_bg";
+                       target, PART_NOTIFICATION_CLEAR_BG;
+                       target, PART_NOTIFICATION_CLEAR_ICON;
+               }
+               program {
+                       name, "unfocused";
+                       signal, SIGNAL_UNFOCUSED;
+                       source, SOURCE_ELM;
+                       action, STATE_SET "default" 0.0;
+                       target, "border_bg";
+                       target, PART_NOTIFICATION_CLEAR_BG;
+                       target, PART_NOTIFICATION_CLEAR_ICON;
+               }
+       }
 }
 
index cdc35d1..691571e 100644 (file)
 
 /* Definitions for common */
 #define SOURCE_PROGRAM "program"
+#define SOURCE_ELM "elm"
 
 #define PART_CONTENT "elm.swallow.content"
 #define PART_ICON "elm.swallow.icon"
 #define PART_TITLE "elm.text"
 
-#define SIGNAL_FOCUSED "elm,state,focused"
-#define SIGNAL_UNFOCUSED "elm,state,unfocused"
+#define SIGNAL_FOCUSED "elm,action,focus"
+#define SIGNAL_UNFOCUSED "elm,action,unfocus"
+#define SIGNAL_DISABLED "elm,state,disabled"
 #define SIGNAL_NO_NOTIFICATION "signal.no_notification"
 #define SIGNAL_NOTIFICATION "signal.notification"
 
index ab5308a..b898884 100644 (file)
@@ -35,10 +35,6 @@ static void _clear_key_up_cb(int id, void *data,
                Evas *e, Evas_Object *obj, Evas_Event_Key_Up *ev);
 static void _clear_clicked_cb(int id, void *data, Evas_Object *obj);
 static void _child_removed_cb(void *data, Evas_Object *obj, void *ei);
-static void _focused_cb(int id, void *data,
-               Evas_Object *obj, Elm_Object_Item *item);
-static void _unfocused_cb(int id, void *data,
-               Evas_Object *obj, Elm_Object_Item *item);
 static void _mouse_move_cb(int id, void *data, Evas *e,
                Evas_Object *obj, Evas_Event_Mouse_Move *ev);
 
@@ -55,8 +51,6 @@ static input_handler clear_handler = {
 };
 
 static input_handler focus_handler = {
-       .focused = _focused_cb,
-       .unfocused = _unfocused_cb,
        .mouse_move = _mouse_move_cb
 };
 
@@ -129,7 +123,7 @@ static void _update_list(struct _priv *priv)
        notification_get_list(NOTIFICATION_TYPE_NOTI, -1, &noti_list);
        if (noti_list) {
                elm_object_signal_emit(priv->base,
-                               SIGNAL_NOTIFICATION, SOURCE_PROGRAM);
+                               SIGNAL_NOTIFICATION, SOURCE_ELM);
                elm_object_disabled_set(priv->clear_btn, EINA_FALSE);
 
                while (noti_list != NULL) {
@@ -168,7 +162,7 @@ static void _update_list(struct _priv *priv)
                }
        } else {
                elm_object_signal_emit(priv->base,
-                               SIGNAL_NO_NOTIFICATION, SOURCE_PROGRAM);
+                               SIGNAL_NO_NOTIFICATION, SOURCE_ELM);
                elm_object_disabled_set(priv->clear_btn, EINA_TRUE);
        }
 }
@@ -365,18 +359,6 @@ static void _clear_clicked_cb(int id, void *data, Evas_Object *obj)
        notification_delete_all(NOTIFICATION_TYPE_NOTI);
 }
 
-static void _focused_cb(int id, void *data,
-               Evas_Object *obj, Elm_Object_Item *item)
-{
-       elm_object_signal_emit(obj, SIGNAL_FOCUSED, SOURCE_PROGRAM);
-}
-
-static void _unfocused_cb(int id, void *data,
-               Evas_Object *obj, Elm_Object_Item *item)
-{
-       elm_object_signal_emit(obj, SIGNAL_UNFOCUSED, SOURCE_PROGRAM);
-}
-
 static void _mouse_move_cb(int id, void *data, Evas *e,
                Evas_Object *obj, Evas_Event_Mouse_Move *ev)
 {