diff options
Diffstat (limited to 'src/lib/elm_popup.eo')
-rw-r--r-- | src/lib/elm_popup.eo | 193 |
1 files changed, 193 insertions, 0 deletions
diff --git a/src/lib/elm_popup.eo b/src/lib/elm_popup.eo new file mode 100644 index 000000000..9df84d043 --- /dev/null +++ b/src/lib/elm_popup.eo @@ -0,0 +1,193 @@ +class Elm_Popup (Elm_Layout, Elm_Interface_Atspi_Widget_Action) +{ + eo_prefix: elm_obj_popup; + properties { + align { + set { + /*@ + @brief Set the alignment of the popup object + Sets the alignment in which the popup will appear in its parent. + + @see elm_popup_align_get() + + @since 1.9 + @ingroup Popup */ + } + get { + /*@ + @brief Get the alignment of the popup object + @see elm_popup_align_set() + + @since 1.9 + @ingroup Popup */ + } + values { + double horizontal; /*@ The horizontal alignment of the popup */ + double vertical; /*@ The vertical alignment of the popup */ + } + } + allow_events { + set { + /*@ + @brief Sets whether events should be passed to by a click outside. + + Enabling allow event will remove the Blocked event area and events will + pass to the lower layer objects otherwise they are blocked. + + @ingroup Popup + @see elm_popup_allow_events_get() + @note The default value is EINA_FALSE. */ + } + get { + /*@ + @brief Returns value indicating whether allow event is enabled or not + + @return @c EINA_FALSE if Blocked event area is present else @c EINA_TRUE + + @ingroup Popup + @see elm_popup_allow_events_set() + @note By default the Blocked event area is present */ + } + values { + bool allow; /*@ @c EINA_TRUE Events are passed to lower objects, else not */ + } + } + content_text_wrap_type { + set { + /*@ + @brief Sets the wrapping type of content text packed in content + area of popup object. + + @ingroup Popup + @see elm_popup_content_text_wrap_type_get() */ + } + get { + /*@ + @brief Returns the wrapping type of content text packed in content area of + popup object. + + @return wrap type of the content text + + @ingroup Popup + @see elm_popup_content_text_wrap_type_set */ + } + values { + Elm_Wrap_Type wrap; /*@ wrapping type of type Elm_Wrap_Type */ + } + } + orient { + set { + /*@ + @brief Sets the orientation of the popup in the parent region + + Sets the position in which popup will appear in its parent. By default, + #ELM_POPUP_ORIENT_CENTER is set. + + @ingroup Popup + @see @ref Elm_Popup_Orient for possible values. */ + } + get { + /*@ + @brief Returns the orientation of Popup + + @return the orientation of the popup + + @ingroup Popup + @see elm_popup_orient_set() + @see Elm_Popup_Orient */ + } + values { + Elm_Popup_Orient orient; /*@ the orientation of the popup */ + } + } + timeout { + set { + /*@ + @brief Sets a timeout to hide popup automatically + + This function sets a timeout and starts the timer controlling when the + popup is hidden. Since calling evas_object_show() on a popup restarts + the timer controlling when it is hidden, setting this before the + popup is shown will in effect mean starting the timer when the popup is + shown. Smart signal "timeout" is called afterwards which can be handled + if needed. + + @note Set a value <= 0.0 to disable a running timer. + + @note If the value > 0.0 and the popup is previously visible, the + timer will be started with this value, canceling any running timer. + @ingroup Popup */ + } + get { + /*@ + @brief Returns the timeout value set to the popup (in seconds) + + @return the timeout value + + @ingroup Popup + @see elm_popup_timeout_set() */ + } + values { + double timeout; /*@ The timeout in seconds */ + } + } + } + methods { + item_append { + /*@ + @brief Add a new item to a Popup object + + Both an item list and a content could not be set at the same time! + once you add an item, the previous content will be removed. + + @return A handle to the item added or @c NULL, on errors + + @ingroup Popup + @warning When the first item is appended to popup object, any previous content + of the content area is deleted. At a time, only one of content, content-text + and item(s) can be there in a popup content area. */ + + return: Elm_Object_Item *; + params { + @in const(char)* label; /*@ The Label of the new item */ + @in Evas_Object *icon; /*@ Icon to be set on new item */ + @in Evas_Smart_Cb func; /*@ Convenience function called when item selected */ + @in const(void)* data; /*@ Data passed to @p func above */ + } + } + } + implements { + class.constructor; + Eo.Base.constructor; + Evas.Object_Smart.del; + Evas.Object_Smart.add; + Elm_Widget.focus_direction; + Elm_Widget.focus_next_manager_is; + Elm_Widget.theme_apply; + Elm_Widget.focus_direction_manager_is; + Elm_Widget.access; + Elm_Widget.focus_next; + Elm_Widget.parent.set; + Elm_Widget.translate; + Elm_Widget.sub_object_del; + Elm_Widget.event; + Elm_Container.content_get; + Elm_Container.content_set; + Elm_Container.content_unset; + Elm_Layout.text_set; + Elm_Layout.text_get; + Elm_Layout.sizing_eval; + Elm_Interface_Atspi_Widget_Action.elm_actions.get; + } + events { + block,clicked; + timeout; + item,focused; + item,unfocused; + language,changed; + access,changed; + focused; + unfocused; + } + +} |