2 * @defgroup Panel Panel
4 * @image html img/widget/panel/preview-00.png
5 * @image latex img/widget/panel/preview-00.eps
7 * @brief A panel is a type of animated container that contains subobjects.
8 * It can be expanded or contracted by clicking the button on it's edge.
10 * Orientations are as follows:
11 * @li ELM_PANEL_ORIENT_TOP
12 * @li ELM_PANEL_ORIENT_LEFT
13 * @li ELM_PANEL_ORIENT_RIGHT
15 * Default contents parts of the panel widget that you can use for are:
16 * @li "default" - A content of the panel
18 * @ref tutorial_panel shows one way to use this widget.
21 typedef enum _Elm_Panel_Orient
23 ELM_PANEL_ORIENT_TOP, /**< Panel (dis)appears from the top */
24 ELM_PANEL_ORIENT_BOTTOM, /**< Not implemented */
25 ELM_PANEL_ORIENT_LEFT, /**< Panel (dis)appears from the left */
26 ELM_PANEL_ORIENT_RIGHT, /**< Panel (dis)appears from the right */
30 * @brief Adds a panel object
32 * @param parent The parent object
34 * @return The panel object, or NULL on failure
37 elm_panel_add(Evas_Object *parent)
41 * @brief Sets the orientation of the panel
43 * @param parent The parent object
44 * @param orient The panel orientation. Can be one of the following:
45 * @li ELM_PANEL_ORIENT_TOP
46 * @li ELM_PANEL_ORIENT_LEFT
47 * @li ELM_PANEL_ORIENT_RIGHT
49 * Sets from where the panel will (dis)appear.
51 EAPI void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient) EINA_ARG_NONNULL(1);
54 * @brief Get the orientation of the panel.
56 * @param obj The panel object
57 * @return The Elm_Panel_Orient, or ELM_PANEL_ORIENT_LEFT on failure.
59 EAPI Elm_Panel_Orient elm_panel_orient_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
62 * @brief Set the content of the panel.
64 * @param obj The panel object
65 * @param content The panel content
67 * Once the content object is set, a previously set one will be deleted.
68 * If you want to keep that old content object, use the
69 * elm_panel_content_unset() function.
71 * @deprecated use elm_object_content_set() instead
74 EINA_DEPRECATED EAPI void elm_panel_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
77 * @brief Get the content of the panel.
79 * @param obj The panel object
80 * @return The content that is being used
82 * Return the content object which is set for this widget.
84 * @see elm_panel_content_set()
86 * @deprecated use elm_object_content_get() instead
89 EINA_DEPRECATED EAPI Evas_Object *elm_panel_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
92 * @brief Unset the content of the panel.
94 * @param obj The panel object
95 * @return The content that was being used
97 * Unparent and return the content object which was set for this widget.
99 * @see elm_panel_content_set()
101 * @deprecated use elm_object_content_unset() instead
104 EINA_DEPRECATED EAPI Evas_Object *elm_panel_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
107 * @brief Set the state of the panel.
109 * @param obj The panel object
110 * @param hidden If true, the panel will run the animation to contract
112 EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden) EINA_ARG_NONNULL(1);
115 * @brief Get the state of the panel.
117 * @param obj The panel object
118 * @param hidden If true, the panel is in the "hide" state
120 EAPI Eina_Bool elm_panel_hidden_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
123 * @brief Toggle the hidden state of the panel from code
125 * @param obj The panel object
127 EAPI void elm_panel_toggle(Evas_Object *obj) EINA_ARG_NONNULL(1);