summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHosang Kim <hosang12.kim@samsung.com>2015-09-02 16:16:04 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2015-09-04 14:00:11 +0900
commitf5c96735978257929dc38e0145732d4ee963483b (patch)
treeb21b5a4687beae2a755f1fc681df467d5c781cd8
parent3190c11c83a941f559a02ab06820108e0189af15 (diff)
downloadelementary-f5c96735978257929dc38e0145732d4ee963483b.tar.gz
elm_test: Add test case for page scroller
Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
-rw-r--r--data/objects/test.edc37
-rw-r--r--src/bin/test.c2
-rw-r--r--src/bin/test_scroller.c64
3 files changed, 103 insertions, 0 deletions
diff --git a/data/objects/test.edc b/data/objects/test.edc
index 74c90b6b1..84407e5ad 100644
--- a/data/objects/test.edc
+++ b/data/objects/test.edc
@@ -749,4 +749,41 @@ collections {
}
}
}
+group { name: "page_layout";
+ parts {
+ part { name: "bg";
+ type: RECT;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: 400 500;
+ max: 400 500;
+ color: 0 0 0 0;
+ }
+ }
+ part { name: "page";
+ type: SWALLOW;
+ scale: 1;
+ description { state: "default" 0.0;
+ rel1.relative: 0.1 0.1;
+ rel1.to:"bg";
+ rel2.relative: 0.9 0.9;
+ rel2.to:"bg";
+ }
+ }
+ part { name: "text";
+ type: TEXT;
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ rel1.relative: 0.5 0.5;
+ rel2.relative: 0.5 0.5;
+ text {
+ min: 1 1;
+ size: 50;
+ ellipsis: -1;
+ }
+ }
+ }
+ }
+
}
diff --git a/src/bin/test.c b/src/bin/test.c
index e6479ff5f..8a82f1eec 100644
--- a/src/bin/test.c
+++ b/src/bin/test.c
@@ -152,6 +152,7 @@ void test_separator(void *data, Evas_Object *obj, void *event_info);
void test_scroller(void *data, Evas_Object *obj, void *event_info);
void test_scroller2(void *data, Evas_Object *obj, void *event_info);
void test_scroller3(void *data, Evas_Object *obj, void *event_info);
+void test_scroller4(void *data, Evas_Object *obj, void *event_info);
void test_spinner(void *data, Evas_Object *obj, void *event_info);
void test_index(void *data, Evas_Object *obj, void *event_info);
void test_index2(void *data, Evas_Object *obj, void *event_info);
@@ -759,6 +760,7 @@ add_tests:
ADD_TEST(NULL, "Scroller", "Scroller", test_scroller);
ADD_TEST(NULL, "Scroller", "Scroller 2", test_scroller2);
ADD_TEST(NULL, "Scroller", "Scroller 3", test_scroller3);
+ ADD_TEST(NULL, "Scroller", "Page Scroller", test_scroller4);
//------------------------------//
// FIXME: add frame test
diff --git a/src/bin/test_scroller.c b/src/bin/test_scroller.c
index 3a53d1bd3..eb00f2594 100644
--- a/src/bin/test_scroller.c
+++ b/src/bin/test_scroller.c
@@ -664,3 +664,67 @@ test_scroller3(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event
evas_object_resize(win, 500, 500);
evas_object_show(win);
}
+
+void
+test_scroller4(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
+{
+ Evas_Object *win, *sc, *bx, *ly, *sc2, *rect, *rect2;
+ char buf[PATH_MAX];
+
+ win = elm_win_util_standard_add("scroller3", "Scroller 3");
+ elm_win_autodel_set(win, EINA_TRUE);
+
+ sc = elm_scroller_add(win);
+ elm_scroller_loop_set(sc, EINA_TRUE, EINA_FALSE);
+ evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_scroller_page_relative_set(sc, 1.0, 0.0);
+ elm_scroller_policy_set(sc, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
+ elm_scroller_page_scroll_limit_set(sc, 1, 0);
+ elm_win_resize_object_add(win, sc);
+ evas_object_show(sc);
+
+ bx = elm_box_add(sc);
+ elm_box_horizontal_set(bx, EINA_TRUE);
+ elm_object_content_set(sc, bx);
+ evas_object_show(bx);
+
+ ly = elm_layout_add(bx);
+ snprintf(buf, sizeof(buf), "%s/objects/test.edj", elm_app_data_dir_get());
+ elm_layout_file_set(ly, buf, "page_layout");
+ elm_object_part_text_set(ly, "text", "Page1");
+ elm_box_pack_end(bx, ly);
+ evas_object_show(ly);
+
+ sc2 = elm_scroller_add(ly);
+ elm_object_part_content_set(ly, "page", sc2);
+ evas_object_show(sc2);
+
+ rect2 = evas_object_rectangle_add(evas_object_evas_get(sc2));
+ evas_object_color_set(rect2, 50, 0, 0, 50);
+ evas_object_size_hint_min_set(rect2, 0, 2000);
+ elm_object_content_set(sc2, rect2);
+ evas_object_show(rect2);
+
+ ly = elm_layout_add(bx);
+ snprintf(buf, sizeof(buf), "%s/objects/test.edj", elm_app_data_dir_get());
+ elm_layout_file_set(ly, buf, "page_layout");
+ rect = evas_object_rectangle_add(evas_object_evas_get(ly));
+ evas_object_color_set(rect, 0, 50, 0, 50);
+ elm_object_part_content_set(ly, "page", rect);
+ elm_object_part_text_set(ly, "text", "Page2");
+ elm_box_pack_end(bx, ly);
+ evas_object_show(ly);
+
+ ly = elm_layout_add(bx);
+ snprintf(buf, sizeof(buf), "%s/objects/test.edj", elm_app_data_dir_get());
+ elm_layout_file_set(ly, buf, "page_layout");
+ rect = evas_object_rectangle_add(evas_object_evas_get(ly));
+ evas_object_color_set(rect, 0, 0, 50, 50);
+ elm_object_part_content_set(ly, "page", rect);
+ elm_object_part_text_set(ly, "text", "Page3");
+ elm_box_pack_end(bx, ly);
+ evas_object_show(ly);
+
+ evas_object_resize(win, 400, 550);
+ evas_object_show(win);
+}