Beispiel #1
0
 /// <summary>
 /// Inserts a more option item before the target item.
 /// </summary>
 /// <since_tizen> 6 </since_tizen>
 public void InsertBefore(MoreOptionItem targetItem, MoreOptionItem item)
 {
     if (item.NativeHandle != null && targetItem != null)
     {
         if (!Items.Contains(targetItem))
         {
             return;
         }
         Items.Insert(Items.IndexOf(targetItem), item);
         item.NativeHandle = Interop.Eext.eext_more_option_item_insert_before(this.NativeHandle, targetItem.NativeHandle);
     }
 }
Beispiel #2
0
                public MoreOption(Efl.Ui.Widget parent) : base(Interop.Eext.eext_more_option_add(parent.NativeHandle))
                {
                    Interop.Evas.SmartCallback _smartClicked = new Interop.Evas.SmartCallback((d, o, e) =>
                    {
                        MoreOptionItem clickedItem = new MoreOptionItem();
                        clickedItem._handle        = e;
                        Clicked?.Invoke(this, new MoreOptionItemEventArgs {
                            item = clickedItem
                        });
                    });

                    Interop.Evas.SmartCallback _smartSelected = new Interop.Evas.SmartCallback((d, o, e) =>
                    {
                        MoreOptionItem selectedItem = new MoreOptionItem();
                        selectedItem._handle        = e;
                        Selected?.Invoke(this, new MoreOptionItemEventArgs {
                            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);
                }