summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmitesh Singh <amitesh.sh@samsung.com>2017-12-12 13:58:39 +0900
committerAmitesh Singh <amitesh.sh@samsung.com>2017-12-12 14:00:53 +0900
commitb7419f4069baa7154c4e8c04587c682337fab992 (patch)
treeeb7a590a65804693d52ad73cb52aa865bcd9b43e
parent116f24fd78b5ba8b07939ba6a007a5f77ea15dbc (diff)
downloadefl-b7419f4069baa7154c4e8c04587c682337fab992.tar.gz
elm test: Add test for Efl.Ui.Slider
-rw-r--r--src/Makefile_Elementary.am1
-rw-r--r--src/bin/elementary/Makefile.am1
-rw-r--r--src/bin/elementary/test.c2
-rw-r--r--src/bin/elementary/test_ui_slider.c120
4 files changed, 124 insertions, 0 deletions
diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 779c9eed59..d7b2e15ddc 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -901,6 +901,7 @@ bin/elementary/test_scroller.c \
bin/elementary/test_segment_control.c \
bin/elementary/test_separator.c \
bin/elementary/test_slider.c \
+bin/elementary/test_ui_slider.c \
bin/elementary/test_ui_slider_interval.c \
bin/elementary/test_ui_spin.c \
bin/elementary/test_ui_spin_button.c \
diff --git a/src/bin/elementary/Makefile.am b/src/bin/elementary/Makefile.am
index dbc4437bdc..8ce36a7a8d 100644
--- a/src/bin/elementary/Makefile.am
+++ b/src/bin/elementary/Makefile.am
@@ -125,6 +125,7 @@ test_scroller.c \
test_segment_control.c \
test_separator.c \
test_slider.c \
+test_ui_slider.c \
test_ui_slider_interval.c \
test_slideshow.c \
test_spinner.c \
diff --git a/src/bin/elementary/test.c b/src/bin/elementary/test.c
index 577f600c91..8a592ab7d2 100644
--- a/src/bin/elementary/test.c
+++ b/src/bin/elementary/test.c
@@ -110,6 +110,7 @@ void test_scaling(void *data, Evas_Object *obj, void *event_info);
void test_scaling2(void *data, Evas_Object *obj, void *event_info);
void test_slider(void *data, Evas_Object *obj, void *event_info);
void test_slider_interval(void *data, Evas_Object *obj, void *event_info);
+void test_ui_slider(void *data, Evas_Object *obj, void *event_info);
void test_actionslider(void *data, Evas_Object *obj, void *event_info);
void test_genlist(void *data, Evas_Object *obj, void *event_info);
void test_genlist2(void *data, Evas_Object *obj, void *event_info);
@@ -1035,6 +1036,7 @@ add_tests:
ADD_TEST(NULL, "Range Values", "Progressbar 2", test_progressbar2);
ADD_TEST_EO(NULL, "Range Values", "Efl.Ui.Nstate", test_nstate);
ADD_TEST_EO(NULL, "Range Values", "Efl.Ui.Slider_Interval", test_slider_interval);
+ ADD_TEST_EO(NULL, "Range Values", "Efl.Ui.Slider", test_ui_slider);
//------------------------------//
ADD_TEST(NULL, "Booleans", "Check", test_check);
diff --git a/src/bin/elementary/test_ui_slider.c b/src/bin/elementary/test_ui_slider.c
new file mode 100644
index 0000000000..8fe7047778
--- /dev/null
+++ b/src/bin/elementary/test_ui_slider.c
@@ -0,0 +1,120 @@
+#ifdef HAVE_CONFIG_H
+# include "elementary_config.h"
+#endif
+#include <Elementary.h>
+
+static double
+_step_size_calculate(double min, double max)
+{
+ double step = 0.0;
+ int steps = 0;
+
+ steps = max - min;
+ if (steps) step = (1.0 / steps);
+ return step;
+}
+
+static void
+_slider_changed_cb(void *data EINA_UNUSED, const Efl_Event *ev)
+{
+ double val;
+
+ val = efl_ui_range_value_get(ev->object);
+
+ printf("val = %f\n", val);
+ if (val > 100)
+ efl_ui_range_value_set(ev->object, 100);
+}
+
+void
+test_ui_slider(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
+{
+ Eo *win, *bx, *hbx;
+ double step;
+
+ win = efl_add(EFL_UI_WIN_CLASS, NULL,
+ efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
+ efl_text_set(efl_added, "Efl.Ui.Slider"),
+ efl_ui_win_autodel_set(efl_added, EINA_TRUE));
+
+ bx = efl_add(EFL_UI_BOX_CLASS, win,
+ efl_content_set(win, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, bx,
+ efl_text_set(efl_added, "Horizontal"),
+ efl_ui_slider_part_indicator_visible_mode_set(efl_part(efl_added, "indicator"),
+ EFL_UI_SLIDER_INDICATOR_VISIBLE_MODE_NONE),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(160, 0)),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.5f"),
+ efl_pack(bx, efl_added));
+
+ step = _step_size_calculate(0, 9);
+ efl_add(EFL_UI_SLIDER_CLASS, bx,
+ efl_text_set(efl_added, "Manual step"),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(120, 0)),
+ efl_ui_format_string_set(efl_added, "%1.1f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.1f"),
+ efl_ui_slider_step_set(efl_added, step),
+ efl_pack(bx, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, bx,
+ efl_text_set(efl_added, "Disabled"),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(120, 0)),
+ efl_ui_format_string_set(efl_added, "%1.0f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.0f"),
+ efl_ui_range_min_max_set(efl_added, 10, 145),
+ efl_ui_slider_step_set(efl_added, step),
+ elm_object_disabled_set(efl_added, EINA_TRUE),
+ efl_pack(bx, efl_added));
+
+ hbx = efl_add(EFL_UI_BOX_CLASS, bx,
+ efl_ui_direction_set(efl_added, EFL_UI_DIR_HORIZONTAL),
+ efl_pack(bx, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, hbx,
+ efl_text_set(efl_added, "Vertical"),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(0, 160)),
+ efl_ui_format_string_set(efl_added, "%1.0f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.0f"),
+ efl_ui_range_min_max_set(efl_added, 10, 145),
+ efl_ui_slider_step_set(efl_added, step),
+ efl_ui_range_value_set(efl_added, 70),
+ efl_ui_direction_set(efl_added, EFL_UI_DIR_VERTICAL),
+ efl_pack(hbx, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, hbx,
+ efl_text_set(efl_added, "Disabled"),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(0, 160)),
+ efl_ui_format_string_set(efl_added, "%1.0f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.0f"),
+ efl_ui_range_min_max_set(efl_added, 10, 145),
+ efl_ui_slider_step_set(efl_added, step),
+ efl_ui_direction_set(efl_added, EFL_UI_DIR_VERTICAL),
+ elm_object_disabled_set(efl_added, EINA_TRUE),
+ efl_pack(hbx, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, hbx,
+ efl_text_set(efl_added, "Always Show Indicator:"),
+ efl_ui_slider_part_indicator_visible_mode_set(efl_part(efl_added, "indicator"),
+ EFL_UI_SLIDER_INDICATOR_VISIBLE_MODE_ALWAYS),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(0, 160)),
+ efl_ui_format_string_set(efl_added, "%1.0f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.0f"),
+ efl_ui_range_min_max_set(efl_added, 10, 145),
+ efl_ui_range_value_set(efl_added, 35),
+ efl_ui_slider_step_set(efl_added, step),
+ efl_ui_direction_set(efl_added, EFL_UI_DIR_VERTICAL),
+ efl_pack(hbx, efl_added));
+
+ efl_add(EFL_UI_SLIDER_CLASS, bx,
+ efl_text_set(efl_added, "Limited (0-100)"),
+ efl_ui_slider_part_indicator_visible_mode_set(efl_part(efl_added, "indicator"),
+ EFL_UI_SLIDER_INDICATOR_VISIBLE_MODE_ON_FOCUS),
+ efl_gfx_size_hint_min_set(efl_added, EINA_SIZE2D(260, 0)),
+ efl_ui_format_string_set(efl_added, "%1.0f units"),
+ efl_ui_format_string_set(efl_part(efl_added, "indicator"), "%1.0f"),
+ efl_ui_range_min_max_set(efl_added, 0, 150),
+ efl_ui_slider_step_set(efl_added, step),
+ efl_event_callback_add(efl_added, EFL_UI_SLIDER_EVENT_CHANGED, _slider_changed_cb, NULL),
+ efl_pack(bx, efl_added));
+}