void test_scroller5(void *data, Evas_Object *obj, void *event_info);
void test_scroller6(void *data, Evas_Object *obj, void *event_info);
void test_scroller7(void *data, Evas_Object *obj, void *event_info);
+void test_scroller_simple(void *data, Evas_Object *obj, void *event_info);
void test_efl_ui_scroller(void *data, Evas_Object *obj, void *event_info);
void test_efl_ui_scroller2(void *data, Evas_Object *obj, void *event_info);
void test_spinner(void *data, Evas_Object *obj, void *event_info);
ADD_TEST(NULL, "Scroller", "Scroller on Popup", test_scroller5);
ADD_TEST(NULL, "Scroller", "Scroller 6", test_scroller6);
ADD_TEST(NULL, "Scroller", "Scroller 7", test_scroller7);
+ ADD_TEST(NULL, "Scroller", "Scroller Simple", test_scroller_simple);
ADD_TEST_EO(NULL, "Scroller", "Efl.Ui.Scroller", test_efl_ui_scroller);
+ ADD_TEST_EO(NULL, "Scroller", "Efl.Ui.Scroller Simple", test_efl_ui_scroller2);
//------------------------------//
// FIXME: add frame test
}
}
+static void
+_scroll_anim_start(void *data EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+ int x, y;
+ elm_scroller_region_get(obj, &x, &y, NULL, NULL);
+ printf("scroll start: %p x: %d y: %d\n", obj, x, y);
+}
+
+static void
+_scroll_anim_stop(void *data EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+ int x, y;
+ elm_scroller_region_get(obj, &x, &y, NULL, NULL);
+ printf("scroll stop: %p x: %d y: %d\n", obj, x, y);
+}
+
+void
+test_scroller_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
+{
+ Evas_Object *win, *bt, *bx, *sc;
+ int i;
+
+
+ win = elm_win_util_standard_add("scroller2", "Scroller Simple");
+ elm_win_autodel_set(win, EINA_TRUE);
+
+ bx = elm_box_add(win);
+ evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, 0);
+ evas_object_size_hint_align_set(bx, 0.5, 0);
+
+ /* { */
+ sc = elm_scroller_add(win);
+ evas_object_smart_callback_add(sc, "scroll,anim,start", _scroll_anim_start, NULL);
+ evas_object_smart_callback_add(sc, "scroll,anim,stop", _scroll_anim_stop, NULL);
+ evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ elm_scroller_bounce_set(sc, EINA_TRUE, EINA_TRUE);
+ evas_object_show(sc);
+ evas_object_show(bx);
+
+ elm_object_content_set(sc, bx);
+ elm_win_resize_object_add(win, sc);
+ /* } */
+
+ for (i = 0; i < 2000; i++)
+ {
+ bt = elm_button_add(win);
+ elm_object_text_set(bt, "Vertical");
+ evas_object_smart_callback_add(bt, "clicked", _click_through, NULL);
+ evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+ evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, 0.5);
+ elm_box_pack_end(bx, bt);
+ evas_object_show(bt);
+ }
+ evas_object_resize(win, 320, 400);
+ evas_object_show(win);
+}
+
static Ecore_Timer *_timer = NULL;
static int _append = 0;
static int _count = 0;
efl_pack(bx, efl_added));
}
}
+
+void
+test_efl_ui_scroller2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
+{
+ Eo *win, *sc, *bx;
+ int i;
+
+ win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
+ efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
+ efl_text_set(efl_added, "Efl Ui Scroller Simple"),
+ efl_ui_win_autodel_set(efl_added, EINA_TRUE));
+ efl_gfx_entity_size_set(win, EINA_SIZE2D(320, 400));
+
+ sc = efl_add(EFL_UI_SCROLLER_CLASS, win,
+ efl_gfx_hint_weight_set(efl_added, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND),
+ efl_event_callback_add(efl_added, EFL_UI_EVENT_SCROLL_START, _scroll_start_cb, NULL),
+ efl_event_callback_add(efl_added, EFL_UI_EVENT_SCROLL_STOP, _scroll_stop_cb, NULL),
+ efl_content_set(win, efl_added));
+
+ bx = efl_add(EFL_UI_BOX_CLASS, sc,
+ efl_ui_layout_orientation_set(efl_added, EFL_UI_LAYOUT_ORIENTATION_VERTICAL),
+ efl_gfx_hint_weight_set(efl_added, EVAS_HINT_EXPAND, 0),
+ efl_gfx_hint_align_set(efl_added, 0.5, 0),
+ efl_gfx_hint_fill_set(efl_added, EINA_TRUE, EINA_FALSE),
+ efl_content_set(sc, efl_added));
+
+ for (i = 0; i < 2000; i++)
+ {
+ efl_add(EFL_UI_BUTTON_CLASS, bx,
+ efl_text_set(efl_added, "Vertical"),
+ efl_gfx_hint_weight_set(efl_added, EVAS_HINT_EXPAND, 0.0),
+ efl_gfx_hint_fill_set(efl_added, EINA_TRUE, EINA_FALSE),
+ efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _bt_clicked, NULL),
+ efl_pack(bx, efl_added));
+ }
+}