[UI] Using the updated defaul themes for datetime widgets. 30/126930/1
authorMichal Skorupinski <m.skorupinsk@samsung.com>
Mon, 24 Apr 2017 15:46:46 +0000 (17:46 +0200)
committerMichal Skorupinski <m.skorupinsk@samsung.com>
Mon, 24 Apr 2017 16:49:36 +0000 (18:49 +0200)
Change-Id: I7995e2ae4c8bdaa32598319034a9a4c99a574d9a
Signed-off-by: Michal Skorupinski <m.skorupinsk@samsung.com>
include/view/common/view_datetime.h
res/view/system/clock.edc
src/common/utils.c
src/view/common/view_datetime.c
src/view/system/view_clock.c

index d10548d..64d0af3 100644 (file)
@@ -23,6 +23,6 @@
 Evas_Object *view_datetime_create(Evas_Object *parent, const char *part, bool is_date);
 Evas_Object *view_datetime_get_spinner(Evas_Object *datetime, int field);
 Evas_Object *view_datetime_get_spinner_button(Evas_Object *datetime, int field);
-void view_datetime_show(Evas_Object *datetime, bool is_date);
+void view_datetime_set_time_mode(Evas_Object *datetime, bool is_24);
 
 #endif /* VIEW_DATETIME_H_ */
index 99cd263..f33f09c 100755 (executable)
@@ -90,6 +90,7 @@ group {
                                }
                        }
                }
+               DBG(PART_MAIN_ITEM_DATE, 0, 0, 0, 255)
                part {
                        name, PART_MAIN_ITEM_DATE;
                        type, SWALLOW;
@@ -117,6 +118,7 @@ group {
                                }
                        }
                }
+               DBG(PART_MAIN_ITEM_TIME, 0, 0, 0, 255)
                part {
                        name, PART_MAIN_ITEM_TIME;
                        type, SWALLOW;
index b612709..4b24054 100755 (executable)
@@ -97,6 +97,7 @@ Evas_Object *utils_add_box(Evas_Object *parent, const char *part,
 Evas_Object *utils_add_button(Evas_Object *parent, const char *part,
                const char *style, const char *text)
 {
+       SETTING_TRACE_BEGIN;
        Evas_Object *btn;
 
        if (!parent) {
@@ -121,6 +122,7 @@ Evas_Object *utils_add_button(Evas_Object *parent, const char *part,
 
        evas_object_show(btn);
 
+       SETTING_TRACE_END;
        return btn;
 }
 
@@ -446,7 +448,7 @@ Evas_Object *utils_add_datetime(Evas_Object *parent, const char *part,
 
 
        /*@TODO: Temporary */
-       elm_object_scale_set(dtime, 1.0 / APP_BASE_SCALE);
+//     elm_object_scale_set(dtime, 1.0 / APP_BASE_SCALE);
 
        if (time_to_set)
                elm_datetime_value_set(dtime, (Elm_Datetime_Time *)time_to_set);
index 0c26f28..2487c9b 100644 (file)
@@ -31,12 +31,10 @@ static bool date_settting_on = true;
 static void _datetime_btn_clicked_cb(int id, void *data, Evas_Object *obj);
 static void _datetime_btn_unfocused_cb(int id, void *data, Evas_Object *obj, Elm_Object_Item *item);
 static void _datetime_btn_focused_cb(int id, void *data, Evas_Object *obj, Elm_Object_Item *item);
-static void _set_spinner_style(Evas_Object *datetime);
 static void _DBG_datetime(Evas_Object *datetime);
 static void _set_spinner_btn_callbacks(Evas_Object *dt, int start_field, int end_field);
 static void _set_datetime_focus_chain(Evas_Object *datetime, int start_field, int end_field);
 static void _DBG_focus_chain(Evas_Object *datetime, int start_field, int end_field);
-static void _datetime_key_down_cb(int id, void *data, Evas *e, Evas_Object *obj, Evas_Event_Key_Down *ev);
 static void  _datetime_btn_keydown_cb(int id, void *data, Evas *e, Evas_Object *obj, Evas_Event_Key_Down *ev);
 
 static input_handler datetime_btn_handler = {
@@ -46,13 +44,10 @@ static input_handler datetime_btn_handler = {
        .focused = _datetime_btn_focused_cb,
 };
 
-static input_handler datetime_handler = {
-       .key_down = _datetime_key_down_cb,
-};
-
-
 Evas_Object *view_datetime_create(Evas_Object *parent, const char *part, bool is_date)
 {
+       SETTING_TRACE_BEGIN;
+
        Eina_Bool field_year = is_date;
        Eina_Bool field_month = is_date;
        Eina_Bool field_date = is_date;
@@ -70,55 +65,43 @@ Evas_Object *view_datetime_create(Evas_Object *parent, const char *part, bool is
        }
 
        if (is_date) {
-               elm_object_style_set(datetime, STYLE_DATETIME".date");
                elm_datetime_format_set(datetime, "%d/%b/%Y");
                start_field = 0;
                end_field = 2;
        } else {
-               elm_object_style_set(datetime, STYLE_DATETIME".time");
                elm_object_style_set(datetime, "time_layout");
                elm_datetime_format_set(datetime, "%d/%b/%Y %H:%M");
                start_field = 3;
-               end_field = 4;
+               end_field = 5;
        }
 
-
        evas_object_repeat_events_set(datetime, EINA_FALSE);
 
-       _set_spinner_style(datetime);
        _DBG_datetime(datetime);
        _set_spinner_btn_callbacks(datetime, start_field, end_field);
        _set_datetime_focus_chain(datetime, start_field, end_field);
        _DBG_focus_chain(datetime, start_field, end_field);
 
-       inputmgr_add_callback(datetime, 1, &datetime_handler, NULL);
-
+       SETTING_TRACE_END;
        return datetime;
 }
 
-void view_datetime_show(Evas_Object *datetime, bool is_date)
+void view_datetime_set_time_mode(Evas_Object *datetime, bool is_24)
 {
-       if (is_date) {
-               elm_object_style_set(datetime, STYLE_DATETIME".date");
-       } else {
-               elm_object_style_set(datetime, STYLE_DATETIME".time");
-//             elm_object_style_set(datetime, "time_layout");
-       }
-
-       _set_spinner_style(datetime);
-}
+       if (is_24) {/*24h*/
+               elm_object_style_set(datetime, "time_layout_24hr");
+               elm_datetime_format_set(datetime, "%d/%b/%Y %H:%M");
 
-static void _set_spinner_button_height(Evas_Object *spinner, char *part_name, int height)
-{
-       Evas_Object *part = NULL;
+               _set_datetime_focus_chain(datetime, 3, 4);
+       } else {
+               elm_object_style_set(datetime, "time_layout");
+               elm_datetime_format_set(datetime, "%d/%b/%Y %I:%M %p");
 
-       if (part_name)
-               part = elm_object_part_content_get(spinner, part_name);
-       else
-               part = spinner;
+               _set_spinner_btn_callbacks(datetime, 5, 5);
+               _set_datetime_focus_chain(datetime, 3, 5);
+       }
 
-       evas_object_size_hint_min_set(part,  0, height);
-       evas_object_size_hint_max_set(part, -1, height);
+       _DBG_datetime(datetime);
 }
 
 static void _DBG_datetime(Evas_Object *datetime)
@@ -127,7 +110,7 @@ static void _DBG_datetime(Evas_Object *datetime)
        dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] DATE_TIME: STYLE: %s", __FILE__, __LINE__, datetime_style);
 
        int i;
-       for (i = 0; i < 5; ++i) {
+       for (i = 0; i <= 5; ++i) {
                char buf[255];
                snprintf(buf, 255, "field%d", i);
 
@@ -144,54 +127,15 @@ static void _DBG_datetime(Evas_Object *datetime)
                const char *dec_style =  elm_object_style_get(btn);
                btn = elm_object_part_content_get(spinner, "elm.swallow.text_button");
                const char *btn_style =   elm_object_style_get(btn);
+               const char *txt = elm_object_text_get(btn);
 
-               dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] {Part(%s) TYPE:(%s) STYLE: %s} INC: %s DEC: %s BTN: %s",
+               dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] {Part(%s) TYPE:(%s) STYLE: %s} INC: %s DEC: %s BTN: %s-[%s]",
                                __FILE__, __LINE__,
                                buf,
                                evas_object_type_get(spinner),
                                spinner_style,
-                               inc_style, dec_style, btn_style);
-       }
-
-
-       Evas_Object *box = elm_object_part_content_get(datetime, "field5");
-       Eina_List *children = elm_box_children_get(box);
-       Eina_List *l;
-       Evas_Object *item;
-       i = 0;
-
-       EINA_LIST_FOREACH(children, l, item) {
-               dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] {Part(%s->%d) TYPE:(%s)",
-                               __FILE__, __LINE__,
-                               "field5", i, evas_object_type_get(item));
-               ++i;
-       }
-}
-
-static void _set_spinner_style(Evas_Object *datetime)
-{
-       int i;
-       Evas_Object *spinner;
-
-       for (i = 0; i < 5; ++i) {
-               char buf[255];
-               snprintf(buf, 255, "field%d", i);
-
-               spinner = elm_object_part_content_get(datetime, buf);
-               if (!spinner) {
-                       dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] part(%s) == NULL", __FILE__, __LINE__, buf);
-                       continue;
-               }
-
-               elm_spinner_editable_set(spinner, EINA_FALSE);
-               elm_object_style_set(spinner, STYLE_DATETIME);
-
-               _set_spinner_button_height(spinner, NULL, 100);
-               _set_spinner_button_height(spinner, "elm.swallow.inc_button", 20);
-               _set_spinner_button_height(spinner, "elm.swallow.dec_button", 20);
-               _set_spinner_button_height(spinner, "elm.swallow.text_button", 60);
-
-               evas_object_propagate_events_set(spinner, EINA_FALSE);
+                               inc_style, dec_style,
+                               btn_style, txt);
        }
 }
 
@@ -260,21 +204,6 @@ static void _DBG_focus_chain(Evas_Object *datetime, int start_field, int end_fie
        dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] -------------- </FOCUS CHAIN> --------------", __FILE__, __LINE__);
 }
 
-static void _datetime_key_down_cb(int id, void *data, Evas *e, Evas_Object *obj, Evas_Event_Key_Down *ev)
-{
-       switch (ev->keycode) {
-       case KEY_ID_ENTER:
-               elm_object_focus_next(obj, ELM_FOCUS_NEXT);
-               dlog_print(DLOG_DEBUG, LOG_TAG, "[%s:%d] DATETIME CLICKED [ELM_FOCUS_NEXT]", __FILE__, __LINE__);
-               return;
-       case KEY_ID_BACK:
-               dlog_print(DLOG_DEBUG, LOG_TAG, "[%s:%d] DATETIME CLICKED [KEY_ID_BACK]", __FILE__, __LINE__);
-               return;
-       default:
-               break;
-       }
-}
-
 static void _datetime_btn_clicked_cb(int id, void *data, Evas_Object *obj)
 {
        Evas_Object *dt = (Evas_Object *)data;
index 9738d8e..7d5dc79 100755 (executable)
@@ -220,7 +220,6 @@ static bool _add_clock_setting(clock_view_priv_data *priv)
        /* 24/12h check: */
        priv->check_24 = elm_check_add(priv->base);
        elm_object_part_content_set(priv->base, PART_MAIN_ITEM_24HOUR, priv->check_24);
-       elm_object_scale_set(priv->check_24, 1.0 / APP_BASE_SCALE);
 
        bool is24h;
        if (settings_clock_is_24h_set(&is24h))
@@ -230,7 +229,6 @@ static bool _add_clock_setting(clock_view_priv_data *priv)
 
        Evas_Object *date_last  = view_datetime_get_spinner_button(priv->date_part, 2);
        Evas_Object *time_first = view_datetime_get_spinner_button(priv->time_part, 3);
-       Evas_Object *time_last  = view_datetime_get_spinner_button(priv->time_part, 4);
 
        utils_set_obj_focus(priv->date_part,
                        priv->date_part, priv->date_part,
@@ -246,8 +244,6 @@ static bool _add_clock_setting(clock_view_priv_data *priv)
                        NULL, priv->date_part,
                        false);
 
-       elm_object_focus_next_object_set(time_last, priv->check_24, ELM_FOCUS_NEXT);
-
        utils_set_obj_focus(priv->check_24,
                        priv->check_24, priv->check_24,
                        priv->time_part, priv->done,
@@ -274,6 +270,8 @@ static bool _add_clock_setting(clock_view_priv_data *priv)
        utils_dbg_obj_focus(priv->date_part, -1);
        utils_dbg_obj_focus(priv->time_part, -1);
 
+
+       SETTING_TRACE_END;
        return true;
 }
 
@@ -353,6 +351,17 @@ static Evas_Object *_create(Evas_Object *win, void *data)
        return base;
 }
 
+void _update_focus_chain(bool h24, clock_view_priv_data* priv)
+{
+       Evas_Object *time_last;
+       if (h24)
+               time_last = view_datetime_get_spinner_button(priv->time_part, 4);
+       else
+               time_last = view_datetime_get_spinner_button(priv->time_part, 5);
+
+       elm_object_focus_next_object_set(time_last, priv->check_24, ELM_FOCUS_NEXT);
+}
+
 static void _show(void *data)
 {
        SETTING_TRACE_BEGIN;
@@ -381,22 +390,17 @@ static void _show(void *data)
        _disable_manual_settings(display_mode, priv);
        elm_check_state_set(priv->check_24, h24);
 
-//     if (h24) {
-//             elm_object_style_set(priv->time_part, "time_layout_24hr");
-//             elm_datetime_format_set(priv->time_part, "%d/%b/%Y %H:%M");
-//     } else {
-//             elm_object_style_set(priv->time_part, "time_layout");
-//             elm_datetime_format_set(priv->time_part, "%d/%b/%Y %I:%M %p");
-//     }
+       view_datetime_set_time_mode(priv->time_part, h24);
 
        elm_datetime_value_set(priv->date_part, (Elm_Datetime_Time *)&current_time);
        elm_datetime_value_set(priv->time_part, (Elm_Datetime_Time *)&current_time);
 
        evas_object_show(priv->base);
-       view_datetime_show(priv->time_part, false);
        elm_object_focus_set(priv->time_part, EINA_TRUE);
        ecore_idler_add(_show_timer_cb, priv);
 
+       _update_focus_chain(h24, priv);
+
        SETTING_TRACE_END;
 }
 
@@ -495,14 +499,8 @@ static void _h_24_12_changed_cb(int id, void *data, Evas_Object *check_24)
                return;
 
        state = elm_check_state_get(check_24);
-
-       if (state) {/*24h*/
-//             elm_object_style_set(priv->time_part, "time_layout_24hr");
-//             elm_datetime_format_set(priv->time_part, "%d/%b/%Y %H:%M");
-       } else {
-//             elm_object_style_set(priv->time_part, "time_layout");
-//             elm_datetime_format_set(priv->time_part, "%d/%b/%Y %I:%M %p");
-       }
+       view_datetime_set_time_mode(priv->time_part, state);
+       _update_focus_chain(state, priv);
 }
 
 static void _done_mouse_cb(int id, void *data, Evas_Object *obj)