summaryrefslogtreecommitdiff
path: root/tests/test_scroller.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_scroller.py')
-rw-r--r--tests/test_scroller.py140
1 files changed, 140 insertions, 0 deletions
diff --git a/tests/test_scroller.py b/tests/test_scroller.py
new file mode 100644
index 0000000..44f4cd8
--- /dev/null
+++ b/tests/test_scroller.py
@@ -0,0 +1,140 @@
+#!/usr/bin/env python
+# encoding: utf-8
+import os
+import elementary
+import edje
+import ecore
+import evas
+
+#----- Scroller -{{{-
+def my_scroller_go_300_300(bt, sc):
+ sc.region_bring_in(300, 300, 318, 318)
+
+def my_scroller_go_900_300(bt, sc):
+ sc.region_bring_in(900, 300, 318, 318)
+
+def my_scroller_go_300_900(bt, sc):
+ sc.region_bring_in(300, 900, 318, 318)
+
+def my_scroller_go_900_900(obj, sc):
+ sc.region_bring_in(900, 900, 318, 318)
+
+def cb_edges(obj, border):
+ print(("Border callback:", border))
+
+def cb_drags(obj, action):
+ print(("Drag callback:", action))
+
+def cb_anims(obj, action):
+ print(("Anim callback:", action))
+
+def scroller_clicked(obj):
+ win = elementary.Window("scroller", elementary.ELM_WIN_BASIC)
+ win.title_set("Scroller")
+ win.autodel_set(True)
+ if obj is None:
+ win.callback_delete_request_add(lambda o: elementary.exit())
+
+ bg = elementary.Background(win)
+ win.resize_object_add(bg)
+ bg.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bg.show()
+
+ tb = elementary.Table(win)
+ tb.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+
+ img = ["images/panel_01.jpg",
+ "images/plant_01.jpg",
+ "images/rock_01.jpg",
+ "images/rock_02.jpg",
+ "images/sky_01.jpg",
+ "images/sky_02.jpg",
+ "images/sky_03.jpg",
+ "images/sky_04.jpg",
+ "images/wood_01.jpg"]
+
+ n = 0
+ for j in range(12):
+ for i in range(12):
+ bg2 = elementary.Background(win)
+ bg2.file_set(img[n])
+
+ n = n + 1
+ if n >= 9:
+ n = 0
+ bg2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bg2.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
+ bg2.size_hint_min_set(318, 318)
+ tb.pack(bg2, i, j, 1, 1)
+ bg2.show()
+
+ sc = elementary.Scroller(win)
+ sc.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ sc.callback_edge_top_add(cb_edges, "top")
+ sc.callback_edge_bottom_add(cb_edges, "bottom")
+ sc.callback_edge_left_add(cb_edges, "left")
+ sc.callback_edge_right_add(cb_edges, "right")
+ sc.callback_scroll_drag_start_add(cb_drags, "start")
+ sc.callback_scroll_drag_stop_add(cb_drags, "stop")
+ sc.callback_scroll_anim_start_add(cb_anims, "start")
+ sc.callback_scroll_anim_stop_add(cb_anims, "stop")
+ win.resize_object_add(sc)
+
+ sc.content_set(tb)
+ tb.show()
+
+ sc.page_relative_set(1.0, 1.0)
+ sc.show()
+
+ tb2 = elementary.Table(win)
+ tb2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ win.resize_object_add(tb2)
+
+ bt = elementary.Button(win)
+ bt.text_set("to 300 300")
+ bt.callback_clicked_add(my_scroller_go_300_300, sc)
+ bt.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bt.size_hint_align_set(0.1, 0.1)
+ tb2.pack(bt, 0, 0, 1, 1)
+ bt.show()
+
+ bt = elementary.Button(win)
+ bt.text_set("to 900 300")
+ bt.callback_clicked_add(my_scroller_go_900_300, sc)
+ bt.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bt.size_hint_align_set(0.9, 0.1)
+ tb2.pack(bt, 1, 0, 1, 1)
+ bt.show()
+
+ bt = elementary.Button(win)
+ bt.text_set("to 300 900")
+ bt.callback_clicked_add(my_scroller_go_300_900, sc)
+ bt.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bt.size_hint_align_set(0.1, 0.9)
+ tb2.pack(bt, 0, 1, 1, 1)
+ bt.show()
+
+ bt = elementary.Button(win)
+ bt.text_set("to 900 900")
+ bt.callback_clicked_add(my_scroller_go_900_900, sc)
+ bt.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+ bt.size_hint_align_set(0.9, 0.9)
+ tb2.pack(bt, 1, 1, 1, 1)
+ bt.show()
+
+ tb2.show()
+
+ win.resize(320, 320)
+ win.show()
+# }}}
+
+#----- Main -{{{-
+if __name__ == "__main__":
+ elementary.init()
+
+ scroller_clicked(None)
+
+ elementary.run()
+ elementary.shutdown()
+# }}}
+# vim:foldmethod=marker