import elm_general; class Elm.Hoversel (Efl.Ui.Button, Efl.Ui.Selectable, Efl.Ui.Clickable, Efl.Access.Widget.Action, Efl.Ui.Legacy) { [[Elementary hoversel class]] legacy_prefix: elm_hoversel; eo_prefix: elm_obj_hoversel; event_prefix: elm_hoversel; methods { @property horizontal { [[Control if the hoversel should expand horizontally. Note: The initial button will display horizontally regradless of this setting.]] set { } get { } values { horizontal: bool; [[If $true, the hover will expand horizontally to the right.]] } } @property hover_parent { [[Control the hover parent. Sets the hover parent object, the area that will be darkened when the hoversel is clicked. Should probably be the window that the hoversel is in.]] set { } get { } values { parent: Efl.Canvas.Object @nullable; [[The parent to use]] } } @property expanded { get { [[Returns whether the hoversel is expanded.]] return: bool; [[$true if the hoversel is expanded or $false otherwise]] } } @property items { get { [[Get the list of items within the given hoversel.]] return: const(list); [[List of items]] } } @property auto_update { [[Update icon and text of hoversel same to those of selected item automatically.]] get{ } set{ } values { auto_update: bool; [[$true if hoversel is updated automatically or $false otherwise]] } } hover_begin { [[This triggers the hoversel popup from code, the same as if the user had clicked the button.]] } clear { [[This will remove all the children items from the hoversel. Warning Should *not* be called while the hoversel is active; use @Elm.Hoversel.expanded.get to check first.]] } hover_end { [[This dismisses the hoversel popup as if the user had clicked outside the hover.]] } item_add { [[Add an item to the hoversel button This adds an item to the hoversel to show when it is clicked. Note: if you need to use an icon from an edje file then use Elm.Hoversel.Item.icon.set right after this function, and set icon_file to $null here.]] /* FIXME: Make the hoversel_item reference in the doc a real ref. */ /* FIXME-doc For more information on what $icon_file and $icon_type are, see the @ref Icon "icon documentation". */ return: Elm.Widget.Item; [[A handle to the added item.]] params { @in label: string @optional; [[The text label to use for the item (NULL if not desired)]] @in icon_file: string @optional; [[An image file path on disk to use for the icon or standard icon name (NULL if not desired)]] @in icon_type: Elm.Icon.Type; [[The icon type if relevant]] @in func: Evas_Smart_Cb @optional; [[Convenience function to call when this item is selected. The last parameter $event_info of $func is the selected item pointer.]] @in data: const(void_ptr) @optional; [[Data to pass to item-related functions]] } } } implements { class.constructor; Efl.Object.constructor; Efl.Object.destructor; Efl.Gfx.visible { set; } Efl.Ui.Widget.widget_parent { set; } Efl.Ui.Widget.theme_apply; Efl.Ui.Translatable.translation_update; Efl.Ui.Widget.widget_event; Efl.Ui.Autorepeat.autorepeat_supported { get; } Efl.Access.Widget.Action.elm_actions { get; } Efl.Access.access_children { get; } } events { dismissed; [[Called when hoversel is dismissed]] expanded; [[Called when hoversel is expanded]] item,focused; [[Called when hoversel item got focus]] item,unfocused; [[Called when hoversel item lost focus]] } }