davemds pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=a4d321dacc846a62821a5cbe7f45baaeaa1409e7
commit a4d321dacc846a62821a5cbe7f45baaeaa1409e7 Author: davemds <[email protected]> Date: Fri Aug 1 18:14:55 2014 +0200 Gengrid: new property reorder_type, with test for reorder mode --- efl/elementary/enums.pxd | 4 ++++ efl/elementary/gengrid.pxd | 3 ++- efl/elementary/gengrid.pyx | 21 +++++++++++++++++++++ efl/elementary/gengrid_widget.pxi | 17 +++++++++++++++++ examples/elementary/test_gengrid.py | 9 +++++++++ 5 files changed, 53 insertions(+), 1 deletion(-) diff --git a/efl/elementary/enums.pxd b/efl/elementary/enums.pxd index 87ea2e9..5ac71f4 100644 --- a/efl/elementary/enums.pxd +++ b/efl/elementary/enums.pxd @@ -170,6 +170,10 @@ cdef extern from "Elementary.h": ELM_FOCUS_AUTOSCROLL_MODE_NONE ELM_FOCUS_AUTOSCROLL_MODE_BRING_IN + ctypedef enum Elm_Gengrid_Reorder_Type: + ELM_GENGRID_REORDER_TYPE_NORMAL + ELM_GENGRID_REORDER_TYPE_SWAP + ctypedef enum Elm_Genlist_Item_Type: ELM_GENLIST_ITEM_NONE ELM_GENLIST_ITEM_TREE diff --git a/efl/elementary/gengrid.pxd b/efl/elementary/gengrid.pxd index a8f5bb9..3d166d7 100644 --- a/efl/elementary/gengrid.pxd +++ b/efl/elementary/gengrid.pxd @@ -4,7 +4,7 @@ from efl.c_eo cimport Eo from object_item cimport Elm_Object_Item from general cimport Elm_Tooltip_Item_Content_Cb from enums cimport Elm_Genlist_Item_Scrollto_Type, Elm_Object_Select_Mode, \ - Elm_Object_Multi_Select_Mode, Elm_Glob_Match_Flags + Elm_Object_Multi_Select_Mode, Elm_Glob_Match_Flags, Elm_Gengrid_Reorder_Type from efl.ecore.enums cimport Ecore_Pos_Map cdef extern from "Elementary.h": @@ -56,6 +56,7 @@ cdef extern from "Elementary.h": Eina_Bool elm_gengrid_reorder_mode_get(const Evas_Object *obj) void elm_gengrid_reorder_mode_start(Evas_Object *obj, Ecore_Pos_Map tween_mode) void elm_gengrid_reorder_mode_stop(Evas_Object *obj) + void elm_gengrid_reorder_type_set(Evas_Object *obj, Elm_Gengrid_Reorder_Type reorder_type) void elm_gengrid_page_show(Evas_Object *obj, int h_pagenum, int v_pagenum) void elm_gengrid_filled_set(Evas_Object *obj, Eina_Bool fill) Eina_Bool elm_gengrid_filled_get(const Evas_Object *obj) diff --git a/efl/elementary/gengrid.pyx b/efl/elementary/gengrid.pyx index 42c36e6..46b25fe 100644 --- a/efl/elementary/gengrid.pyx +++ b/efl/elementary/gengrid.pyx @@ -304,6 +304,24 @@ Multi-select mode .. versionadded:: 1.10 + +.. _Elm_Gengrid_Reorder_Type: + +Reorder type +============ + +.. data:: ELM_GENGRID_REORDER_TYPE_NORMAL + + Normal reorder mode + + .. versionadded:: 1.11 + +.. data:: ELM_GENGRID_REORDER_TYPE_SWAP + + Swap reorder mode + + .. versionadded:: 1.11 + """ include "tooltips.pxi" @@ -337,6 +355,9 @@ ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT = enums.ELM_OBJECT_MULTI_SELECT_MODE_DEFAUL ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL = enums.ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL ELM_OBJECT_MULTI_SELECT_MODE_MAX = enums.ELM_OBJECT_MULTI_SELECT_MODE_MAX +ELM_GENGRID_REORDER_TYPE_NORMAL = enums.ELM_GENGRID_REORDER_TYPE_NORMAL +ELM_GENGRID_REORDER_TYPE_SWAP = enums.ELM_GENGRID_REORDER_TYPE_SWAP + def _cb_object_item_conv(uintptr_t addr): cdef Elm_Object_Item *it = <Elm_Object_Item *>addr return _object_item_to_python(it) diff --git a/efl/elementary/gengrid_widget.pxi b/efl/elementary/gengrid_widget.pxi index 4e6af66..d9cab8a 100644 --- a/efl/elementary/gengrid_widget.pxi +++ b/efl/elementary/gengrid_widget.pxi @@ -431,6 +431,23 @@ cdef class Gengrid(Object): elm_gengrid_reorder_mode_stop(self.obj) + property reorder_type: + """ Set the order type. + + This affect the way items are moved (when in reorder mode) with the + keyboard arrows. + + :type: :ref:`Elm_Gengrid_Reorder_Type` + + .. versionadded:: 1.11 + + """ + def __set__(self, value): + elm_gengrid_reorder_type_set(self.obj, value) + + def reorder_type_set(self, value): + elm_gengrid_reorder_type_set(self.obj, value) + property filled: """The fill state of the whole grid of items of a gengrid within its given viewport. By default, this value is False, meaning diff --git a/examples/elementary/test_gengrid.py b/examples/elementary/test_gengrid.py index 5d0cb2c..302c451 100644 --- a/examples/elementary/test_gengrid.py +++ b/examples/elementary/test_gengrid.py @@ -116,6 +116,15 @@ def gengrid_clicked(obj): tb.pack(bt, 1, 1, 1, 1) bt.show() + # reorder mode + def reorder_mode_changed(bt, gg): + gg.reorder_mode = bt.state + + bt = Check(win, text="Reorder mode enable") + bt.callback_changed_add(reorder_mode_changed, gg) + tb.pack(bt, 2, 1, 2, 1) + bt.show() + # bounce h def bounce_h_changed(bt, gg): (h_bounce, v_bounce) = gg.bounce_get() --
