[UI] Progress bar in the data view updated 37/134637/4
authorMichal Skorupinski <m.skorupinsk@samsung.com>
Mon, 19 Jun 2017 16:21:40 +0000 (18:21 +0200)
committerKiseok Chang <kiso.chang@samsung.com>
Thu, 6 Jul 2017 09:32:02 +0000 (09:32 +0000)
Change-Id: I5e077992122f90f6a0102772d954aae4ea6086f8
Signed-off-by: Michal Skorupinski <m.skorupinsk@samsung.com>
resource/edc_resource/genlist_item_mobile_data_usage.edc
setting-smartmanager/smartmanager-data/src/smartmanager-data-main-view.c

index a8a16eb356fd8879383a9ec2c5121daf14801dbf..36a47bff51f1f158c23306902d15a91e9a63d5a2 100644 (file)
@@ -1,5 +1,6 @@
 #define MSG_ID_TEXTS 1 /* String set of: timespan, quantity, warn, limit; If warn is NULL; limit part will take its position */
-#define MSG_ID_BAR_VALUES 2 /* Float set of: warn, limit; If limit or warn < 0.0 it means they are not set */
+#define MSG_ID_BAR_LIMITS 2 /* Float set of: warn, limit; If limit or warn < 0.0 it means they are not set */
+#define MSG_ID_BAR_VALUES 3
 
 styles {
        style {
@@ -78,9 +79,35 @@ collections
 
                        part
                        {
-                               name: "progress_bar";
-                               type: SWALLOW;
+                               name: "progress_bar_bg";
+                               type: RECT;
 
+                               part
+                               {
+                                       name: "progress_bar";
+                                       type: RECT;
+                                       scale: 1;
+                                       description
+                                       {
+                                               state: "default" 0.0;
+                                               color: 0 0 255 255;
+                                               visible: 1;
+                                               rel1.relative: 0.0 0.0;
+                                               rel2.relative: 1.0 1.0;
+                                       }
+                                       description
+                                       {
+                                               state: "warning" 0.0;
+                                               inherit: "default" 0.0;
+                                               color: 255 255 0 255;
+                                       }
+                                       description
+                                       {
+                                               state: "limit" 0.0;
+                                               inherit: "default" 0.0;
+                                               color: 255 0 0 255;
+                                       }
+                               }
                                part
                                {
                                        name: "warning_indicator";
@@ -95,8 +122,19 @@ collections
                                                rel1.relative: 1.0 0.0;
                                                rel2.relative: 1.0 1.0;
                                        }
+                                       description
+                                       {
+                                               state: "warning" 0.0;
+                                               inherit: "default" 0.0;
+                                               color: 255 255 0 255;
+                                       }
+                                       description
+                                       {
+                                               state: "limit" 0.0;
+                                               inherit: "default" 0.0;
+                                               color: 255 0 0 255;
+                                       }
                                }
-
                                part
                                {
                                        name: "limit_indicator";
@@ -113,15 +151,23 @@ collections
                                        }
                                }
 
-
-                               description
-                               {
+                               description {
                                        state: "default" 0.0;
-                                       color: 0 0 255 255;
+                                       color: 128 128 128 255;
                                        visible: 1;
                                        rel1.relative: 0.029166667 0.475517241;
                                        rel2.relative: 0.970833333 0.544482759;
                                }
+                               description {
+                                       state: "warning" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: 128 128 64 255;
+                               }
+                               description {
+                                       state: "limit" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: 128 64 64 255;
+                               }
 
                        }
 
@@ -157,7 +203,7 @@ collections
                                        rel2.relative: 0.9625 0.91;
                                        text
                                        {
-                                               style: "small text style";
+                                               style: "small_text_style";
                                                text: "";
                                        }
                                }
@@ -166,79 +212,62 @@ collections
 
                script
                {
+                       public warn_g;
+                       public limit_g;
+
                        public message(Msg_Type:type, id, ...)
                        {
-                               static help_buff[64] = {'\0',};
-                               static Float:warn = 0.0;
-                               static Float:limit = 0.0;
+//                             static help_buff[64] = {'\0',};
 
-                               if(type == MSG_FLOAT_SET && id == MSG_ID_BAR_VALUES)
-                               {
-                                       warn = getfarg(2);
-                                       limit = getfarg(3);
+                               if(type == MSG_FLOAT_SET && id == MSG_ID_BAR_LIMITS) {
+                                       new Float:warn = getfarg(2);
+                                       new Float:limit = getfarg(3);
 
                                        custom_state(PART:"warning_indicator", "default", 0.0);
                                        custom_state(PART:"limit_indicator", "default", 0.0);
 
-                                       if(warn >= 0.0)
-                                       {
+                                       if(warn >= 0.0) {
                                                set_state_val(PART:"warning_indicator", STATE_REL1, warn, 0.0);
                                                set_state_val(PART:"warning_indicator", STATE_REL2, warn, 1.0);
                                                set_state_val(PART:"warning_indicator", STATE_VISIBLE, 1);
-                                       }
-                                       else
-                                       {
+                                       } else {
                                                set_state_val(PART:"warning_indicator", STATE_VISIBLE, 0);
                                        }
                                        set_state(PART:"warning_indicator", "custom", 0.0);
 
-                                       if(limit >= 0.0)
-                                       {
+                                       if(limit >= 0.0) {
                                                set_state_val(PART:"limit_indicator", STATE_REL1, limit, 0.0);
                                                set_state_val(PART:"limit_indicator", STATE_REL2, limit, 1.0);
                                                set_state_val(PART:"limit_indicator", STATE_VISIBLE, 1);
-                                       }
-                                       else
-                                       {
+                                       } else {
                                                set_state_val(PART:"limit_indicator", STATE_VISIBLE, 0);
                                        }
                                        set_state(PART:"limit_indicator", "custom", 0.0);
-                               }
 
-                               if(type == MSG_STRING_SET && id == MSG_ID_TEXTS)
-                               {
-                                       /* timespan: */
-                                       getsarg(2, help_buff, sizeof(help_buff));
-                                       set_text(PART:"timespan_txt", help_buff);
-
-                                       /* quantity: */
-                                       getsarg(3, help_buff, sizeof(help_buff));
-                                       set_text(PART:"quantity_txt", help_buff);
-
-                                       /* limit: */
-                                       getsarg(5, help_buff, sizeof(help_buff));
-                                       set_text(PART:"limit_txt", help_buff);
-
-                                       /* warn: */
-                                       getsarg(4, help_buff, sizeof(help_buff));
-                                       custom_state(PART:"warning_txt", "default", 0.0);
-                                       custom_state(PART:"limit_txt", "default", 0.0);
-                                       if(strlen(help_buff) > 0)
-                                       {
-                                               set_text(PART:"warning_txt", help_buff);
-                                               set_state_val(PART:"warning_txt", STATE_VISIBLE, 1);
-                                               set_state_val(PART:"limit_txt", STATE_REL1, 0.0375, 0.796551724);
-                                               set_state_val(PART:"limit_txt", STATE_REL2, 0.9625, 0.9);
-                                       }
+                                       set_float (warn_g, warn);
+                                       set_float (limit_g, limit);
+                               } else if (type == MSG_FLOAT && id == MSG_ID_BAR_VALUES) {
+                                       new Float: warn = get_float(warn_g);
+                                       new Float: limit = get_float(limit_g);
+
+                                       new Float: value = getfarg(2);
+                                       new state_name[32];
+
+                                       if (value >= limit)
+//                                             state_name = "limit";
+                                               strncpy(state_name, "limit", 32);
+                                       else if (value >= warn)
+//                                             state_name = "warning";
+                                               strncpy(state_name, "warning", 32);
                                        else
-                                       {
-                                               set_text(PART:"warning_txt", "");
-                                               set_state_val(PART:"warning_txt", STATE_VISIBLE, 0);
-                                               set_state_val(PART:"limit_txt", STATE_REL1, 0.0375, 0.665517241);
-                                               set_state_val(PART:"limit_txt", STATE_REL2, 0.9625, 0.768965517);
-                                       }
-                                       set_state(PART:"warning_txt", "custom", 0.0);
-                                       set_state(PART:"limit_txt", "custom", 0.0);
+//                                             state_name = "default";
+                                               strncpy(state_name, "default", 32);
+
+                                       set_state(PART:"progress_bar_bg", state_name, 0.0);
+
+                                       custom_state(PART:"progress_bar", state_name, 0.0);
+                                       set_state_val(PART:"progress_bar", STATE_REL2, value, 1.0);
+                                       set_state(PART:"progress_bar", "custom", 0.0);
                                }
                        }
                }
index 52a53e78cac912490a2d799cefb27bc7363c8c32..059cee9a4d0de60363a657a2402d26a981d76dcf 100644 (file)
@@ -4,7 +4,8 @@
 #include "setting-common-draw-widget.h"
 #include <Elementary.h>
 
-#define MSG_ID_BAR_VALUES 2
+#define MSG_ID_LIMITS 2
+#define MSG_ID_BAR_VALUES 3
 
 setting_view smartmanager_view_data_main;
 
@@ -135,7 +136,7 @@ static void _set_warning_limit_value(Evas_Object *layout, float warn, float limi
 
        SETTING_TRACE("SENDING");
 
-       edje_object_message_send(elm_layout_edje_get(layout), EDJE_MESSAGE_FLOAT_SET, MSG_ID_BAR_VALUES, msg);
+       edje_object_message_send(elm_layout_edje_get(layout), EDJE_MESSAGE_FLOAT_SET, MSG_ID_LIMITS, msg);
        free(msg);
 
        SETTING_TRACE("SEND");
@@ -143,8 +144,25 @@ static void _set_warning_limit_value(Evas_Object *layout, float warn, float limi
        SETTING_TRACE_END;
 }
 
+static void _set_progress_value(Evas_Object *layout, float value)
+{
+       SETTING_TRACE_BEGIN;
+
+       Edje_Message_Float msg = {
+               .val = value,
+       };
+
+       SETTING_TRACE("SENDING");
+
+       edje_object_message_send(elm_layout_edje_get(layout), EDJE_MESSAGE_FLOAT, MSG_ID_BAR_VALUES, &msg);
+
+       SETTING_TRACE("SEND");
+
+       SETTING_TRACE_END;
+}
+
 static Evas_Object *_data_usage_item_get(
-               void *data, Evas_Object *genlist, const char *part)
+                                               void *data, Evas_Object *genlist, const char *part)
 {
        SETTING_TRACE_BEGIN;
 
@@ -158,8 +176,6 @@ static Evas_Object *_data_usage_item_get(
        /*item_data = (Setting_GenGroupItem_Data *)data;*/
 
        layout = elm_layout_add(genlist);
-       progress_bar = elm_progressbar_add(layout);
-       elm_progressbar_pulse_set(progress_bar, EINA_TRUE);
 
        elm_layout_file_set(layout,
                        _TZ_SYS_RO_APP"/org.tizen.setting/res/edje/"
@@ -172,10 +188,10 @@ static Evas_Object *_data_usage_item_get(
 
        elm_layout_text_set(layout, "timespan_txt", "timespan_txt");
        elm_layout_text_set(layout, "quantity_txt", "quantity_txt");
+       elm_layout_text_set(layout, "warning_txt", "warning_txt");
+       elm_layout_text_set(layout, "limit_txt", "limit_txt");
 
-
-       elm_progressbar_value_set(progress_bar, 0.75);
-       evas_object_color_set(progress_bar, 255, 0, 0, 255);
+       _set_progress_value(layout, 0.95);
 
        SETTING_TRACE_END;