public void DeleteItem(RotarySelectorItem item) { if (item.NativeHandle != null) { Interop.Eext.eext_rotary_selector_item_del(item.NativeHandle); } }
public void Prepend(RotarySelectorItem item) { if (item.NativeHandle != null) { item.NativeHandle = Interop.Eext.eext_rotary_selector_item_prepend(this.NativeHandle); } }
public void InsertBefore(RotarySelectorItem targetItem, RotarySelectorItem item) { if (item.NativeHandle != null) { item.NativeHandle = Interop.Eext.eext_rotary_selector_item_insert_before(this.NativeHandle, targetItem.NativeHandle); } }
/// <summary> /// Creates and initializes a new instance of the RotarySelector class. /// </summary> /// <param name="parent">The Efl.Ui.Widget to which the new RotarySelector will be attached as a child.</param> /// <since_tizen> 6 </since_tizen> public RotarySelector(Efl.Ui.Widget parent) : base(Interop.Eext.eext_rotary_selector_add(parent.NativeHandle)) { smartClicked = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem clickedItem = FindItemByNativeHandle(e); if (clickedItem != null) { Clicked?.Invoke(this, new RotarySelectorItemEventArgs { item = clickedItem }); } }); smartSelected = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem selectedItem = FindItemByNativeHandle(e); if (selectedItem != null) { Selected.Invoke(this, new RotarySelectorItemEventArgs { item = selectedItem }); } }); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemClickedEventName, smartClicked, IntPtr.Zero); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemSelectedEventName, smartSelected, IntPtr.Zero); }
/// <summary> /// Appends a rotary selector item. /// </summary> /// <since_tizen> 6 </since_tizen> public void Append(RotarySelectorItem item) { if (item.NativeHandle != null) { Items.Add(item); item.NativeHandle = Interop.Eext.eext_rotary_selector_item_append(this.NativeHandle); } }
/// <summary> /// Creates and initializes a new instance of the RotarySelector class. /// </summary> /// <param name="parent">The Efl.Ui.Widget to which the new RotarySelector will be attached as a child.</param> /// <since_tizen> 6 </since_tizen> public RotarySelector(Efl.Ui.Widget parent) : base(Interop.Eext.eext_rotary_selector_add(parent.NativeHandle)) { smartClicked = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem clickedItem = FindItemByNativeHandle(e); if (clickedItem != null) { ClickedEvt?.Invoke(this, new RotarySelectorItemEventArgs { item = clickedItem }); } }); smartSelected = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem selectedItem = FindItemByNativeHandle(e); if (selectedItem != null) { SelectedEvt?.Invoke(this, new RotarySelectorItemEventArgs { item = selectedItem }); } }); smartDeleted = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem deletedItem = FindItemByNativeHandle(e); if (deletedItem != null) { Deleted?.Invoke(this, new RotarySelectorItemEventArgs { item = deletedItem }); } Items.Remove(deletedItem); }); smartReordered = new Interop.Evas.SmartCallback((d, o, e) => { var items_list = Interop.Eext.eext_rotary_selector_items_get(this.NativeHandle); int idx = Eina.ListNativeFunctions.eina_list_data_idx(items_list, e); RotarySelectorItem reorderedItem = FindItemByNativeHandle(e); if (reorderedItem != null) { Reordered?.Invoke(this, new RotarySelectorItemReorderedEventArgs { item = reorderedItem, OldIndex = Items.IndexOf(reorderedItem), NewIndex = idx }); } UpdateListOrder(reorderedItem, idx); }); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemClickedEventName, smartClicked, IntPtr.Zero); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemSelectedEventName, smartSelected, IntPtr.Zero); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemDeletedEventName, smartDeleted, IntPtr.Zero); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemReorderedEventName, smartReordered, IntPtr.Zero); }
/// <summary> /// Delete a rotary selector item. /// </summary> /// <since_tizen> 6 </since_tizen> public void DeleteItem(RotarySelectorItem item) { if (item.NativeHandle != null) { if (!Items.Contains(item)) { return; } Items.Remove(item); Interop.Eext.eext_rotary_selector_item_del(item.NativeHandle); } }
/// <summary> /// Inserts a rotary selector item before the target item. /// </summary> /// <since_tizen> 6 </since_tizen> public void InsertBefore(RotarySelectorItem targetItem, RotarySelectorItem item) { if (item.NativeHandle != null && targetItem != null) { if (!Items.Contains(targetItem)) { return; } Items.Insert(Items.IndexOf(targetItem), item); item.NativeHandle = Interop.Eext.eext_rotary_selector_item_insert_before(this.NativeHandle, targetItem.NativeHandle); } }
public RotarySelector(Efl.Ui.Widget parent) : base(Interop.Eext.eext_rotary_selector_add(parent.NativeHandle)) { Interop.Evas.SmartCallback _smartClicked = new Interop.Evas.SmartCallback((d, o, e) => { RotarySelectorItem clickedItem = new RotarySelectorItem(); clickedItem._handle = e; Clicked?.Invoke(this, new RotarySelectorItemEventArgs { item = clickedItem }); }); Interop.Evas.SmartCallback _smartSelected = new Interop.Evas.SmartCallback((d, o, e) => { Selected?.Invoke(this, new RotarySelectorItemEventArgs { item = this.SelectedItem }); }); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemClickedEventName, _smartClicked, IntPtr.Zero); Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemSelectedEventName, _smartSelected, IntPtr.Zero); }
private void UpdateListOrder(RotarySelectorItem reorderedItem, int currentIdx) { Items.Remove(reorderedItem); Items.Insert(currentIdx, reorderedItem); }