diff options
author | Piotr Szydelko <p.szydelko@samsung.com> | 2017-03-01 11:31:13 +0100 |
---|---|---|
committer | Piotr Szydelko <p.szydelko@samsung.com> | 2017-03-09 16:21:54 +0100 |
commit | d55a519e7716e39d25b7dba5984ced8dbc09fabc (patch) | |
tree | eb9b74175c6f613c083b1de4d902169877b81b62 | |
parent | cc62896b904df628956431fe428dcd87de4cba57 (diff) | |
download | elm-sharp-d55a519e7716e39d25b7dba5984ced8dbc09fabc.tar.gz elm-sharp-d55a519e7716e39d25b7dba5984ced8dbc09fabc.tar.bz2 elm-sharp-d55a519e7716e39d25b7dba5984ced8dbc09fabc.zip |
Add GenList.ReorderMode property
The EFL GenList offer the reorder mode, but ElmSharp does didn't
include the relevant functions. This commit fixed the omission.
Change-Id: Ib0dfc1578677e401d6b3639ac340872507f89216
Signed-off-by: Piotr Szydelko <p.szydelko@samsung.com>
-rw-r--r-- | ElmSharp/ElmSharp/GenList.cs | 24 | ||||
-rw-r--r-- | ElmSharp/Interop/Interop.Elementary.GenListView.cs | 7 |
2 files changed, 31 insertions, 0 deletions
diff --git a/ElmSharp/ElmSharp/GenList.cs b/ElmSharp/ElmSharp/GenList.cs index eba52f5..1106cf1 100644 --- a/ElmSharp/ElmSharp/GenList.cs +++ b/ElmSharp/ElmSharp/GenList.cs @@ -68,6 +68,9 @@ namespace ElmSharp SmartEvent<GenListItemEventArgs> _realized; SmartEvent<GenListItemEventArgs> _unrealized; SmartEvent<GenListItemEventArgs> _longpressed; + SmartEvent<GenListItemEventArgs> _moved; + SmartEvent<GenListItemEventArgs> _movedAfter; + SmartEvent<GenListItemEventArgs> _movedBefore; SmartEvent _scrollAnimationStarted; SmartEvent _scrollAnimationStopped; SmartEvent _changed; @@ -119,6 +122,18 @@ namespace ElmSharp } } + public bool ReorderMode + { + get + { + return Interop.Elementary.elm_genlist_reorder_mode_get(RealHandle); + } + set + { + Interop.Elementary.elm_genlist_reorder_mode_set(RealHandle, value); + } + } + public event EventHandler<GenListItemEventArgs> ItemSelected; public event EventHandler<GenListItemEventArgs> ItemUnselected; public event EventHandler<GenListItemEventArgs> ItemPressed; @@ -129,6 +144,9 @@ namespace ElmSharp public event EventHandler<GenListItemEventArgs> ItemRealized; public event EventHandler<GenListItemEventArgs> ItemUnrealized; public event EventHandler<GenListItemEventArgs> ItemLongPressed; + public event EventHandler<GenListItemEventArgs> ItemMoved; + public event EventHandler<GenListItemEventArgs> ItemMovedAfter; + public event EventHandler<GenListItemEventArgs> ItemMovedBefore; public event EventHandler Changed { @@ -257,6 +275,9 @@ namespace ElmSharp _realized = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "realized", GenListItemEventArgs.CreateFromSmartEvent); _unrealized = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "unrealized", GenListItemEventArgs.CreateFromSmartEvent); _longpressed = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "longpressed", GenListItemEventArgs.CreateFromSmartEvent); + _moved = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "moved", GenListItemEventArgs.CreateFromSmartEvent); + _movedAfter = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "moved,after", GenListItemEventArgs.CreateFromSmartEvent); + _movedBefore = new SmartEvent<GenListItemEventArgs>(this, this.RealHandle, "moved,before", GenListItemEventArgs.CreateFromSmartEvent); _scrollAnimationStarted = new SmartEvent(this, this.RealHandle, "scroll,anim,start"); _scrollAnimationStopped = new SmartEvent(this, this.RealHandle, "scroll,anim,stop"); _changed = new SmartEvent(this, this.RealHandle, "changed"); @@ -271,6 +292,9 @@ namespace ElmSharp _realized.On += (s, e) => { if (e.Item != null) ItemRealized?.Invoke(this, e); }; _unrealized.On += (s, e) => { if (e.Item != null) ItemUnrealized?.Invoke(this, e); }; _longpressed.On += (s, e) => { if (e.Item != null) ItemLongPressed?.Invoke(this, e); }; + _moved.On += (s, e) => { if (e.Item != null) ItemMoved?.Invoke(this, e); }; + _movedAfter.On += (s, e) => { if (e.Item != null) ItemMovedAfter?.Invoke(this, e); }; + _movedBefore.On += (s, e) => { if (e.Item != null) ItemMovedBefore?.Invoke(this, e); }; } void AddInternal(GenListItem item) diff --git a/ElmSharp/Interop/Interop.Elementary.GenListView.cs b/ElmSharp/Interop/Interop.Elementary.GenListView.cs index 75698da..732db0d 100644 --- a/ElmSharp/Interop/Interop.Elementary.GenListView.cs +++ b/ElmSharp/Interop/Interop.Elementary.GenListView.cs @@ -135,5 +135,12 @@ internal static partial class Interop [DllImport(Libraries.Elementary)] internal static extern void elm_genlist_item_fields_update(IntPtr item, string part, uint type); + + [DllImport(Libraries.Elementary)] + internal static extern void elm_genlist_reorder_mode_set(IntPtr obj, bool mode); + + [DllImport(Libraries.Elementary)] + [return: MarshalAs(UnmanagedType.U1)] + internal static extern bool elm_genlist_reorder_mode_get(IntPtr obj); } } |