2010-10-19 11:25:22 -07:00
|
|
|
#ifdef HAVE_CONFIG_H
|
|
|
|
# include "elementary_config.h"
|
|
|
|
#endif
|
2012-03-29 12:27:13 -07:00
|
|
|
#include <Elementary.h>
|
2013-11-04 00:54:31 -08:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
typedef struct Progressbar_Data
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
|
|
|
Evas_Object *pb1;
|
|
|
|
Evas_Object *pb2;
|
|
|
|
Evas_Object *pb3;
|
|
|
|
Evas_Object *pb4;
|
|
|
|
Evas_Object *pb5;
|
|
|
|
Evas_Object *pb6;
|
2009-10-05 06:58:13 -07:00
|
|
|
Evas_Object *pb7;
|
2009-08-13 15:41:43 -07:00
|
|
|
Ecore_Timer *timer;
|
2013-08-07 10:27:28 -07:00
|
|
|
Evas_Object *btn_start;
|
|
|
|
Evas_Object *btn_stop;
|
2013-09-10 07:50:41 -07:00
|
|
|
} Progressbar_Data;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
2010-06-25 02:58:14 -07:00
|
|
|
static Eina_Bool
|
2013-09-10 07:50:41 -07:00
|
|
|
_my_progressbar_value_set(void *data)
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
|
|
|
double progress;
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd = data;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
progress = elm_progressbar_value_get (pd->pb1);
|
2009-08-13 15:41:43 -07:00
|
|
|
if (progress < 1.0) progress += 0.0123;
|
|
|
|
else progress = 0.0;
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_value_set(pd->pb1, progress);
|
|
|
|
elm_progressbar_value_set(pd->pb4, progress);
|
|
|
|
elm_progressbar_value_set(pd->pb3, progress);
|
|
|
|
elm_progressbar_value_set(pd->pb6, progress);
|
2013-08-07 10:23:59 -07:00
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
if (progress < 1.0) return ECORE_CALLBACK_RENEW;
|
2013-08-07 10:23:59 -07:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->timer = NULL;
|
2009-08-13 15:41:43 -07:00
|
|
|
return ECORE_CALLBACK_CANCEL;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
2013-09-10 07:50:41 -07:00
|
|
|
my_progressbar_test_start(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd = data;
|
|
|
|
if (!pd) return;
|
|
|
|
|
2013-03-17 23:34:20 -07:00
|
|
|
fprintf(stderr, "s1\n");
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_pulse(pd->pb2, EINA_TRUE);
|
2013-03-17 23:34:20 -07:00
|
|
|
fprintf(stderr, "s2\n");
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_pulse(pd->pb5, EINA_TRUE);
|
|
|
|
fprintf(stderr, "s3 %p\n", pd->pb7);
|
|
|
|
elm_progressbar_pulse(pd->pb7, EINA_TRUE);
|
2013-03-17 23:34:20 -07:00
|
|
|
fprintf(stderr, "s4\n");
|
2013-08-07 10:27:28 -07:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_object_disabled_set(pd->btn_start, EINA_TRUE);
|
|
|
|
elm_object_disabled_set(pd->btn_stop, EINA_FALSE);
|
2013-08-07 10:27:28 -07:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
if (!pd->timer)
|
|
|
|
pd->timer = ecore_timer_add(0.1, _my_progressbar_value_set, pd);
|
2009-08-13 15:41:43 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
2013-09-10 07:50:41 -07:00
|
|
|
my_progressbar_test_stop(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd = data;
|
|
|
|
if (!pd) return;
|
|
|
|
|
|
|
|
elm_progressbar_pulse(pd->pb2, EINA_FALSE);
|
2014-11-12 06:42:20 -08:00
|
|
|
elm_progressbar_pulse(pd->pb5, EINA_FALSE);
|
|
|
|
elm_progressbar_pulse(pd->pb7, EINA_FALSE);
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_object_disabled_set(pd->btn_start, EINA_FALSE);
|
|
|
|
elm_object_disabled_set(pd->btn_stop, EINA_TRUE);
|
2013-09-09 23:47:13 -07:00
|
|
|
|
2013-09-10 07:50:41 -07:00
|
|
|
if (pd->timer)
|
2013-09-09 23:47:13 -07:00
|
|
|
{
|
2013-09-10 07:50:41 -07:00
|
|
|
ecore_timer_del(pd->timer);
|
|
|
|
pd->timer = NULL;
|
2013-09-09 23:47:13 -07:00
|
|
|
}
|
|
|
|
}
|
2013-08-07 10:27:28 -07:00
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
static void
|
2013-09-10 07:50:41 -07:00
|
|
|
_progressbar_destroy_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd = data;
|
2014-06-17 02:23:34 -07:00
|
|
|
if (!pd) return;
|
2013-09-10 07:50:41 -07:00
|
|
|
|
2014-06-12 17:31:21 -07:00
|
|
|
ecore_timer_del(pd->timer);
|
2014-06-17 02:23:34 -07:00
|
|
|
free(pd);
|
2009-08-13 15:59:12 -07:00
|
|
|
my_progressbar_test_stop(NULL, NULL, NULL);
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_del(obj);
|
|
|
|
}
|
|
|
|
|
2012-06-17 04:41:19 -07:00
|
|
|
static char *
|
|
|
|
my_progressbar_format_cb(double val)
|
|
|
|
{
|
|
|
|
char buf[1024];
|
|
|
|
int files;
|
|
|
|
|
|
|
|
files = (1-val)*14000;
|
|
|
|
if(snprintf(buf, 30, "%i files left", files) > 0)
|
|
|
|
return strdup(buf);
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
void
|
2013-08-31 18:18:03 -07:00
|
|
|
test_progressbar(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
2009-08-13 15:41:43 -07:00
|
|
|
{
|
2012-04-01 23:20:28 -07:00
|
|
|
Evas_Object *win, *pb, *bx, *hbx, *bt, *bt_bx, *ic1, *ic2;
|
2009-08-13 15:41:43 -07:00
|
|
|
char buf[PATH_MAX];
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd;
|
|
|
|
|
|
|
|
pd = (Progressbar_Data *)calloc(1, sizeof(Progressbar_Data));
|
2009-08-13 15:41:43 -07:00
|
|
|
|
2012-04-01 23:20:28 -07:00
|
|
|
win = elm_win_util_standard_add("progressbar", "Progressbar");
|
2011-04-08 07:30:48 -07:00
|
|
|
evas_object_smart_callback_add(win, "delete,request",
|
2013-09-10 07:50:41 -07:00
|
|
|
_progressbar_destroy_cb, pd);
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
bx = elm_box_add(win);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
2012-11-14 02:49:45 -08:00
|
|
|
elm_win_resize_object_add(win, bx);
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_show(bx);
|
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2014-11-12 06:42:20 -08:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bx, pb);
|
2013-11-06 06:59:45 -08:00
|
|
|
//elm_progressbar_horizontal_set(pb, EINA_TRUE);
|
|
|
|
//elm_object_text_set(pb, "Progression %");
|
2012-06-17 04:41:19 -07:00
|
|
|
elm_progressbar_unit_format_function_set(pb, my_progressbar_format_cb,
|
|
|
|
(void (*)(char *)) free);
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb1 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "Infinite bounce");
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_progressbar_pulse_set(pb, EINA_TRUE);
|
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb2 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
ic1 = elm_icon_add(win);
|
2011-08-25 03:01:59 -07:00
|
|
|
snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
|
2012-05-28 14:50:11 -07:00
|
|
|
elm_image_file_set(ic1, buf, NULL);
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_size_hint_aspect_set(ic1, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
|
2009-09-28 12:23:33 -07:00
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
pb = elm_progressbar_add(win);
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "Label");
|
2011-11-17 13:02:31 -08:00
|
|
|
elm_object_part_content_set(pb, "icon", ic1);
|
2014-01-06 23:48:58 -08:00
|
|
|
elm_progressbar_inverted_set(pb, EINA_TRUE);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_progressbar_unit_format_set(pb, "%1.1f units");
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(ic1);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb3 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
hbx = elm_box_add(win);
|
|
|
|
elm_box_horizontal_set(hbx, EINA_TRUE);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
|
|
|
evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bx, hbx);
|
|
|
|
evas_object_show(hbx);
|
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_progressbar_horizontal_set(pb, EINA_FALSE);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(hbx, pb);
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "percent");
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb4 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_progressbar_horizontal_set(pb, EINA_FALSE);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 80);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_progressbar_pulse_set(pb, EINA_TRUE);
|
|
|
|
elm_progressbar_unit_format_set(pb, NULL);
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "Infinite bounce");
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(hbx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb5 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
ic2 = elm_icon_add(win);
|
2012-05-28 14:50:11 -07:00
|
|
|
elm_image_file_set(ic2, buf, NULL);
|
2009-08-13 15:41:43 -07:00
|
|
|
evas_object_size_hint_aspect_set(ic2, EVAS_ASPECT_CONTROL_HORIZONTAL, 1, 1);
|
2009-09-28 12:23:33 -07:00
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_progressbar_horizontal_set(pb, EINA_FALSE);
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "Label");
|
2011-11-17 13:02:31 -08:00
|
|
|
elm_object_part_content_set(pb, "icon", ic2);
|
2013-08-06 21:53:39 -07:00
|
|
|
elm_progressbar_inverted_set(pb, EINA_TRUE);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_progressbar_unit_format_set(pb, "%1.2f%%");
|
2013-09-10 07:50:41 -07:00
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(hbx, pb);
|
|
|
|
evas_object_show(ic2);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb6 = pb;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
2009-10-05 06:58:13 -07:00
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_object_style_set(pb, "wheel");
|
2011-07-04 03:13:56 -07:00
|
|
|
elm_object_text_set(pb, "Style: wheel");
|
2013-03-17 23:34:20 -07:00
|
|
|
elm_progressbar_pulse_set(pb, EINA_TRUE);
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2009-10-05 06:58:13 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb7 = pb;
|
2009-10-05 06:58:13 -07:00
|
|
|
|
2009-08-13 15:41:43 -07:00
|
|
|
bt_bx = elm_box_add(win);
|
2011-04-15 04:44:05 -07:00
|
|
|
elm_box_horizontal_set(bt_bx, EINA_TRUE);
|
2009-09-28 12:23:33 -07:00
|
|
|
evas_object_size_hint_weight_set(bt_bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bx, bt_bx);
|
|
|
|
evas_object_show(bt_bx);
|
|
|
|
|
|
|
|
bt = elm_button_add(win);
|
2011-06-29 00:11:54 -07:00
|
|
|
elm_object_text_set(bt, "Start");
|
2013-09-10 07:50:41 -07:00
|
|
|
evas_object_smart_callback_add(bt, "clicked", my_progressbar_test_start, pd);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bt_bx, bt);
|
|
|
|
evas_object_show(bt);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->btn_start = bt;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
bt = elm_button_add(win);
|
2011-06-29 00:11:54 -07:00
|
|
|
elm_object_text_set(bt, "Stop");
|
2013-08-07 10:27:28 -07:00
|
|
|
elm_object_disabled_set(bt, EINA_TRUE);
|
2013-09-10 07:50:41 -07:00
|
|
|
evas_object_smart_callback_add(bt, "clicked", my_progressbar_test_stop, pd);
|
2009-08-13 15:41:43 -07:00
|
|
|
elm_box_pack_end(bt_bx, bt);
|
|
|
|
evas_object_show(bt);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->btn_stop = bt;
|
2009-08-13 15:41:43 -07:00
|
|
|
|
|
|
|
evas_object_show(win);
|
|
|
|
}
|
2013-09-09 23:47:13 -07:00
|
|
|
|
2013-10-14 03:38:19 -07:00
|
|
|
static Eina_Bool
|
|
|
|
_set_progress_val(Evas_Object *pb, double inc_value, char *part_name)
|
|
|
|
{
|
|
|
|
double progress;
|
|
|
|
|
|
|
|
progress = elm_progressbar_part_value_get(pb, part_name);
|
|
|
|
|
|
|
|
if (progress < 1.0)
|
2013-11-06 06:59:45 -08:00
|
|
|
progress += inc_value;
|
2013-10-14 03:38:19 -07:00
|
|
|
else
|
2013-11-06 06:59:45 -08:00
|
|
|
return EINA_TRUE;
|
2013-10-14 03:38:19 -07:00
|
|
|
|
|
|
|
elm_progressbar_part_value_set(pb, part_name, progress);
|
|
|
|
|
|
|
|
return EINA_FALSE;
|
|
|
|
}
|
|
|
|
|
2013-09-11 09:18:26 -07:00
|
|
|
static Eina_Bool
|
|
|
|
_progressbar2_timer_cb(void *data)
|
|
|
|
{
|
|
|
|
Progressbar_Data *pd = data;
|
|
|
|
double progress;
|
|
|
|
|
2013-11-06 07:00:38 -08:00
|
|
|
if (!pd) return ECORE_CALLBACK_CANCEL;
|
2013-10-14 03:38:19 -07:00
|
|
|
|
2013-09-11 09:18:26 -07:00
|
|
|
progress = elm_progressbar_value_get (pd->pb1);
|
|
|
|
|
2013-10-14 03:38:19 -07:00
|
|
|
if (progress < 1.0)
|
2013-11-06 06:59:45 -08:00
|
|
|
{
|
|
|
|
progress += 0.0123;
|
|
|
|
elm_progressbar_part_value_set(pd->pb1, "elm.cur.progressbar", progress);
|
|
|
|
elm_progressbar_part_value_set(pd->pb2, "elm.cur.progressbar1", progress);
|
|
|
|
elm_progressbar_part_value_set(pd->pb3, "elm.cur.progressbar1", progress);
|
|
|
|
elm_progressbar_part_value_set(pd->pb4, "elm.cur.progressbar1", progress);
|
|
|
|
}
|
2013-10-14 03:38:19 -07:00
|
|
|
|
2013-10-16 06:28:55 -07:00
|
|
|
_set_progress_val(pd->pb2, 0.00723, "elm.cur.progressbar");
|
|
|
|
_set_progress_val(pd->pb3, 0.00523, "elm.cur.progressbar");
|
2013-10-14 03:38:19 -07:00
|
|
|
|
2013-10-16 06:28:55 -07:00
|
|
|
if (!_set_progress_val(pd->pb4, 0.00423, "elm.cur.progressbar"))
|
2013-10-14 03:38:19 -07:00
|
|
|
return ECORE_CALLBACK_RENEW;
|
2013-09-11 09:18:26 -07:00
|
|
|
|
|
|
|
pd->timer = NULL;
|
2013-10-14 03:38:19 -07:00
|
|
|
|
2013-09-11 09:18:26 -07:00
|
|
|
return ECORE_CALLBACK_CANCEL;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
_pg2_start_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
|
|
|
{
|
|
|
|
Progressbar_Data *pd = data;
|
|
|
|
if (!pd) return;
|
|
|
|
|
|
|
|
fprintf(stderr, "s1\n");
|
|
|
|
|
|
|
|
elm_object_disabled_set(pd->btn_start, EINA_TRUE);
|
|
|
|
elm_object_disabled_set(pd->btn_stop, EINA_FALSE);
|
|
|
|
|
|
|
|
if (!pd->timer)
|
|
|
|
pd->timer = ecore_timer_add(0.1, _progressbar2_timer_cb, pd);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
_pg2_stop_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
|
|
|
{
|
|
|
|
Progressbar_Data *pd = data;
|
|
|
|
if (!pd) return;
|
|
|
|
|
|
|
|
elm_object_disabled_set(pd->btn_start, EINA_FALSE);
|
|
|
|
elm_object_disabled_set(pd->btn_stop, EINA_TRUE);
|
|
|
|
|
|
|
|
if (pd->timer)
|
|
|
|
{
|
|
|
|
ecore_timer_del(pd->timer);
|
|
|
|
pd->timer = NULL;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2013-09-09 23:47:13 -07:00
|
|
|
void
|
2014-01-06 06:30:02 -08:00
|
|
|
test_progressbar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
2013-09-09 23:47:13 -07:00
|
|
|
{
|
|
|
|
Evas_Object *win, *pb, *bx, *bt, *bt_bx;
|
2013-09-10 07:50:41 -07:00
|
|
|
Progressbar_Data *pd;
|
|
|
|
|
|
|
|
pd = (Progressbar_Data *)calloc(1, sizeof(Progressbar_Data));
|
2013-09-09 23:47:13 -07:00
|
|
|
|
|
|
|
win = elm_win_util_standard_add("progressbar", "Progressbar2");
|
|
|
|
evas_object_smart_callback_add(win, "delete,request",
|
2013-09-10 07:50:41 -07:00
|
|
|
_progressbar_destroy_cb, pd);
|
2013-09-09 23:47:13 -07:00
|
|
|
|
|
|
|
bx = elm_box_add(win);
|
|
|
|
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
|
|
|
elm_win_resize_object_add(win, bx);
|
|
|
|
evas_object_show(bx);
|
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_object_text_set(pb, "Style: default");
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2013-09-10 07:50:41 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
2013-09-09 23:47:13 -07:00
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb1 = pb;
|
2013-09-09 23:47:13 -07:00
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
2013-10-14 03:38:19 -07:00
|
|
|
elm_object_style_set(pb, "double");
|
|
|
|
elm_object_text_set(pb, "Style: double");
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2013-09-10 07:50:41 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
2013-09-09 23:47:13 -07:00
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb2 = pb;
|
2013-09-09 23:47:13 -07:00
|
|
|
|
|
|
|
pb = elm_progressbar_add(win);
|
2013-10-14 03:38:19 -07:00
|
|
|
elm_object_style_set(pb, "double");
|
|
|
|
elm_object_text_set(pb, "Style: double 2");
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2013-09-10 07:50:41 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
2013-09-09 23:47:13 -07:00
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->pb3 = pb;
|
2013-09-09 23:47:13 -07:00
|
|
|
|
2013-10-14 03:38:19 -07:00
|
|
|
pb = elm_progressbar_add(win);
|
|
|
|
elm_object_style_set(pb, "double");
|
|
|
|
elm_progressbar_horizontal_set(pb, EINA_FALSE);
|
|
|
|
elm_object_text_set(pb, "Style: Vertical");
|
2014-11-12 07:00:17 -08:00
|
|
|
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
|
2013-10-14 03:38:19 -07:00
|
|
|
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
|
|
|
|
elm_progressbar_span_size_set(pb, elm_config_scale_get() * 200);
|
|
|
|
elm_box_pack_end(bx, pb);
|
|
|
|
evas_object_show(pb);
|
|
|
|
pd->pb4 = pb;
|
|
|
|
|
2013-09-09 23:47:13 -07:00
|
|
|
bt_bx = elm_box_add(win);
|
|
|
|
elm_box_horizontal_set(bt_bx, EINA_TRUE);
|
|
|
|
evas_object_size_hint_weight_set(bt_bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
|
|
|
elm_box_pack_end(bx, bt_bx);
|
|
|
|
evas_object_show(bt_bx);
|
|
|
|
|
|
|
|
bt = elm_button_add(win);
|
|
|
|
elm_object_text_set(bt, "Start");
|
2013-09-11 09:18:26 -07:00
|
|
|
evas_object_smart_callback_add(bt, "clicked", _pg2_start_btn_clicked_cb, pd);
|
2013-09-09 23:47:13 -07:00
|
|
|
elm_box_pack_end(bt_bx, bt);
|
|
|
|
evas_object_show(bt);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->btn_start = bt;
|
2013-09-09 23:47:13 -07:00
|
|
|
|
|
|
|
bt = elm_button_add(win);
|
|
|
|
elm_object_text_set(bt, "Stop");
|
|
|
|
elm_object_disabled_set(bt, EINA_TRUE);
|
2013-09-11 09:18:26 -07:00
|
|
|
evas_object_smart_callback_add(bt, "clicked", _pg2_stop_btn_clicked_cb, pd);
|
2013-09-09 23:47:13 -07:00
|
|
|
elm_box_pack_end(bt_bx, bt);
|
|
|
|
evas_object_show(bt);
|
2013-09-10 07:50:41 -07:00
|
|
|
pd->btn_stop = bt;
|
2013-12-14 12:45:57 -08:00
|
|
|
|
|
|
|
evas_object_show(win);
|
2013-09-09 23:47:13 -07:00
|
|
|
}
|