Пример #1
0
 /// <summary>
 /// Creates and initializes a new instance of the Hoversel class.
 /// </summary>
 /// <param name="parent">The parent is a given container which will be attached by Hoversel as a child. It's <see cref="EvasObject"/> type.</param>
 /// <since_tizen> preview </since_tizen>
 public Hoversel(EvasObject parent) : base(parent)
 {
     _clicked     = new SmartEvent(this, "clicked");
     _clicked.On += (sender, e) =>
     {
         Clicked?.Invoke(this, EventArgs.Empty);
     };
     _expanded     = new SmartEvent(this, "expanded");
     _expanded.On += (sender, e) =>
     {
         Expanded?.Invoke(this, EventArgs.Empty);
     };
     _dismissed     = new SmartEvent(this, "dismissed");
     _dismissed.On += (sender, e) =>
     {
         Dismissed?.Invoke(this, EventArgs.Empty);
     };
     _selected     = new SmartEvent <HoverselItemEventArgs>(this, RealHandle, "selected", HoverselItemEventArgs.CreateFromSmartEvent);
     _selected.On += (s, e) =>
     {
         if (e.Item != null)
         {
             ItemSelected?.Invoke(this, e);
         }
     };
     _onItemSelected = (data, obj, info) =>
     {
         HoverselItem item = ItemObject.GetItemById((int)data) as HoverselItem;
         item?.SendItemSelected();
     };
 }
Пример #2
0
        /// <summary>
        /// Add an item to the hoversel button.
        /// This adds an item to the hoversel to show when it is clicked.
        /// </summary>
        /// <param name="label">Item's label</param>
        /// <returns>A handle to the added item.</returns>
        /// <since_tizen> preview </since_tizen>
        public HoverselItem AddItem(string label)
        {
            HoverselItem item = new HoverselItem();

            item.Label  = label;
            item.Handle = Interop.Elementary.elm_hoversel_item_add(RealHandle, label, null, 0, _onItemSelected, (IntPtr)item.Id);
            return(item);
        }
Пример #3
0
        internal static HoverselItemEventArgs CreateFromSmartEvent(IntPtr data, IntPtr obj, IntPtr info)
        {
            HoverselItem item = ItemObject.GetItemByHandle(info) as HoverselItem;

            return(new HoverselItemEventArgs {
                Item = item
            });
        }