summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Szydelko <p.szydelko@samsung.com>2017-03-01 11:31:13 +0100
committerPiotr Szydelko <p.szydelko@samsung.com>2017-03-09 16:21:54 +0100
commitd55a519e7716e39d25b7dba5984ced8dbc09fabc (patch)
treeeb9b74175c6f613c083b1de4d902169877b81b62
parentcc62896b904df628956431fe428dcd87de4cba57 (diff)
downloadelm-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.cs24
-rw-r--r--ElmSharp/Interop/Interop.Elementary.GenListView.cs7
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);
}
}