2012-03-05 15:51:56 -08:00
|
|
|
/**
|
|
|
|
* @defgroup Popup Popup
|
|
|
|
* @ingroup Elementary
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* @image html popup_inheritance_tree.png
|
|
|
|
* @image latex popup_inheritance_tree.eps
|
|
|
|
*
|
|
|
|
* This widget is an enhancement of @ref Notify. In addition to
|
|
|
|
* content area, there are two optional sections, namely title area and
|
|
|
|
* action area.
|
|
|
|
*
|
|
|
|
* The popup widget displays its content with a particular orientation in
|
|
|
|
* the parent area. This orientation can be one among top, center,
|
|
|
|
* bottom, left, top-left, top-right, bottom-left and bottom-right.
|
|
|
|
* Content part of Popup can be an Evas Object set by application or
|
|
|
|
* it can be Text set by application or set of items containing an
|
2013-09-03 17:50:38 -07:00
|
|
|
* icon and/or text. The content/item-list can be removed using
|
2012-08-30 09:46:34 -07:00
|
|
|
* elm_object_content_set with second parameter passed as NULL.
|
|
|
|
*
|
|
|
|
* The following figures show the textual layouts of popup in which Title
|
2013-09-03 17:50:38 -07:00
|
|
|
* Area and Action area are optional ones. Action area can have
|
2012-08-30 09:46:34 -07:00
|
|
|
* up to 3 buttons handled using elm_object common APIs mentioned
|
|
|
|
* below. If user wants to have more than 3 buttons then these buttons
|
2013-09-03 17:50:38 -07:00
|
|
|
* can be put inside the items of a list as content. User needs to
|
|
|
|
* handle the clicked signal of these action buttons if required. No
|
2012-08-30 09:46:34 -07:00
|
|
|
* event is processed by the widget automatically when clicked on
|
|
|
|
* these action buttons.
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
|
|
|
* <pre>
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
*|---------------------| |---------------------| |---------------------|
|
|
|
|
*| Title Area | | Title Area | | Title Area |
|
|
|
|
*|Icon| Text | |Icon| Text | |Icon| Text |
|
|
|
|
*|---------------------| |---------------------| |---------------------|
|
|
|
|
*| Item 1 | | | | |
|
|
|
|
*|---------------------| | | | |
|
|
|
|
*| Item 2 | | | | Description |
|
|
|
|
*|---------------------| | Content | | |
|
|
|
|
*| Item 3 | | | | |
|
|
|
|
*|---------------------| | | | |
|
|
|
|
*| . | |---------------------| |---------------------|
|
|
|
|
*| . | | Action Area | | Action Area |
|
|
|
|
*| . | | Btn1 |Btn2|. |Btn3 | | Btn1 |Btn2| |Btn3 |
|
|
|
|
*|---------------------| |---------------------| |---------------------|
|
|
|
|
*| Item N | Content Based Layout Description based Layout
|
|
|
|
*|---------------------|
|
|
|
|
*| Action Area |
|
|
|
|
*| Btn1 |Btn2|. |Btn3 |
|
|
|
|
*|---------------------|
|
|
|
|
* Item Based Layout
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
|
|
|
* </pre>
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* Timeout can be set on expiry of which popup instance hides and
|
2013-09-03 17:50:38 -07:00
|
|
|
* sends a smart signal "timeout" to the user. The visible region of
|
2012-08-30 09:46:34 -07:00
|
|
|
* popup is surrounded by a translucent region called Blocked Event
|
2013-09-03 17:50:38 -07:00
|
|
|
* area. By clicking on Blocked Event area, the signal
|
2012-08-30 09:46:34 -07:00
|
|
|
* "block,clicked" is sent to the application. This block event area
|
2013-09-03 17:50:38 -07:00
|
|
|
* can be avoided by using API elm_popup_allow_events_set. When gets
|
2012-08-30 09:46:34 -07:00
|
|
|
* hidden, popup does not get destroyed automatically, application
|
2013-09-03 17:50:38 -07:00
|
|
|
* should destroy the popup instance after use. To control the
|
2012-08-30 09:46:34 -07:00
|
|
|
* maximum height of the internal scroller for item, we use the height
|
|
|
|
* of the action area which is passed by theme based on the number of
|
2012-03-05 15:51:56 -08:00
|
|
|
* buttons currently set to popup.
|
|
|
|
*
|
2013-09-03 18:02:03 -07:00
|
|
|
* Popup sets the focus to itself when evas_object_show is called on popup.
|
|
|
|
* To set the focus into popup's contents and buttons automatically,
|
|
|
|
* evas_object_show on popup should be called after setting all the contents
|
|
|
|
* and buttons of popup.
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* This widget inherits from the @ref Layout one, so that all the
|
2014-08-13 08:42:43 -07:00
|
|
|
* functions acting on it also work for popup objects (since 1.8).
|
2012-08-30 09:46:34 -07:00
|
|
|
*
|
|
|
|
* This widget emits the following signals, besides the ones sent from
|
|
|
|
* @ref Layout:
|
|
|
|
* @li @c "timeout" - whenever popup is closed as a result of timeout.
|
|
|
|
* @li @c "block,clicked" - whenever user taps on Blocked Event area.
|
elm: fixed focused and unfocused documentation.
1. ctxpopup, fileselector_entry, naviframe, popup, bubble, button, calendar, check, clock, colorselector, datetime, diskselector, flipselector, gengrid.
2. since 1.8
2013-06-09 21:44:25 -07:00
|
|
|
* @li @c "focused" - When the popup has received focus. (since 1.8)
|
|
|
|
* @li @c "unfocused" - When the popup has lost focus. (since 1.8)
|
2013-08-19 01:10:01 -07:00
|
|
|
* @li "language,changed" - the program's language changed (since 1.8)
|
2014-02-18 19:34:02 -08:00
|
|
|
* @li "item,focused" - When the popup item has recieved focus. (since 1.10)
|
|
|
|
* @li "item,unfocused" - When the popup item has lost focus. (since 1.10)
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
|
|
|
* Styles available for Popup
|
|
|
|
* @li "default"
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* Default contents parts of the popup widget that you can use are:
|
2012-03-05 15:51:56 -08:00
|
|
|
* @li "default" - The content of the popup
|
|
|
|
* @li "title,icon" - Title area's icon
|
|
|
|
* @li "button1" - 1st button of the action area
|
|
|
|
* @li "button2" - 2nd button of the action area
|
|
|
|
* @li "button3" - 3rd button of the action area
|
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* Default text parts of the popup widget that you can use are:
|
2014-09-04 09:11:58 -07:00
|
|
|
* @li "title,text" - A title area's label
|
|
|
|
* @li "default" - A content-text set in the content area of the widget
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* Default contents parts of the popup items that you can use are:
|
2014-09-04 09:11:58 -07:00
|
|
|
* @li "default" - An item's icon
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
2012-08-30 09:46:34 -07:00
|
|
|
* Default text parts of the popup items that you can use are:
|
2014-09-04 09:11:58 -07:00
|
|
|
* @li "default" - An item's label
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
|
|
|
* Supported elm_object_item common APIs.
|
2012-04-17 13:33:59 -07:00
|
|
|
* @li @ref elm_object_item_part_text_set
|
|
|
|
* @li @ref elm_object_item_part_text_get
|
|
|
|
* @li @ref elm_object_item_part_content_set
|
|
|
|
* @li @ref elm_object_item_part_content_get
|
2013-09-17 09:56:16 -07:00
|
|
|
* @li @ref elm_object_item_disabled_set
|
|
|
|
* @li @ref elm_object_item_disabled_get
|
2012-04-17 13:33:59 -07:00
|
|
|
* @li @ref elm_object_item_del
|
2013-09-17 09:56:16 -07:00
|
|
|
* @li @ref elm_object_item_signal_emit
|
2012-03-05 15:51:56 -08:00
|
|
|
*
|
|
|
|
* Here are some sample code to illustrate Popup usage:
|
|
|
|
* @li @ref popup_example_01_c
|
|
|
|
* @li @ref popup_example_02_c
|
|
|
|
* @li @ref popup_example_03_c
|
|
|
|
*/
|
|
|
|
|
2013-04-27 23:16:15 -07:00
|
|
|
#ifdef EFL_EO_API_SUPPORT
|
|
|
|
#include "elc_popup_eo.h"
|
|
|
|
#endif
|
|
|
|
#ifndef EFL_NOLEGACY_API_SUPPORT
|
|
|
|
#include "elc_popup_legacy.h"
|
|
|
|
#endif
|