summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2019-03-05 17:00:37 -0500
committerCedric BAIL <cedric.bail@free.fr>2019-03-07 14:15:56 -0800
commit563bc027cd0e80a82aded426f0c58a36028b917a (patch)
tree59fefc281125fead4d843f5bf1fea66aa007d230
parentff173f8408ea731695374e1fb9a0ad1d8407f79e (diff)
elm_panel: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in efl and adds it to the tree, then removes legacy references from the corresponding eo files. in the case where the entire eo file was for a legacy object, that eo file has been removed from the tree ref T7724 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D8188
-rw-r--r--src/Makefile_Elementary.am5
-rw-r--r--src/lib/elementary/elm_panel.c2
-rw-r--r--src/lib/elementary/elm_panel.eo94
-rw-r--r--src/lib/elementary/elm_panel_eo.c210
-rw-r--r--src/lib/elementary/elm_panel_eo.h140
-rw-r--r--src/lib/elementary/elm_panel_eo.legacy.c54
-rw-r--r--src/lib/elementary/elm_panel_eo.legacy.h125
-rw-r--r--src/lib/elementary/elm_panel_legacy.h2
-rw-r--r--src/lib/elementary/elm_widget_panel.h2
-rw-r--r--src/lib/elementary/meson.build3
10 files changed, 538 insertions, 99 deletions
diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 9c5f68b..ce7103c 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -184,7 +184,6 @@ elm_private_eolian_files = \
184# Legacy classes - not part of public EO API 184# Legacy classes - not part of public EO API
185elm_legacy_eolian_files = \ 185elm_legacy_eolian_files = \
186 lib/elementary/efl_ui_clock_legacy.eo \ 186 lib/elementary/efl_ui_clock_legacy.eo \
187 lib/elementary/elm_panel.eo \
188 lib/elementary/elm_player.eo \ 187 lib/elementary/elm_player.eo \
189 lib/elementary/elm_plug.eo \ 188 lib/elementary/elm_plug.eo \
190 lib/elementary/elm_popup.eo \ 189 lib/elementary/elm_popup.eo \
@@ -375,6 +374,8 @@ lib/elementary/elm_naviframe_item_eo.c \
375lib/elementary/elm_naviframe_item_eo.legacy.c \ 374lib/elementary/elm_naviframe_item_eo.legacy.c \
376lib/elementary/elm_notify_eo.c \ 375lib/elementary/elm_notify_eo.c \
377lib/elementary/elm_notify_eo.legacy.c \ 376lib/elementary/elm_notify_eo.legacy.c \
377lib/elementary/elm_panel_eo.c \
378lib/elementary/elm_panel_eo.legacy.c \
378$(NULL) 379$(NULL)
379 380
380elm_legacy_eo_headers = \ 381elm_legacy_eo_headers = \
@@ -530,6 +531,8 @@ lib/elementary/elm_naviframe_item_eo.h \
530lib/elementary/elm_naviframe_item_eo.legacy.h \ 531lib/elementary/elm_naviframe_item_eo.legacy.h \
531lib/elementary/elm_notify_eo.h \ 532lib/elementary/elm_notify_eo.h \
532lib/elementary/elm_notify_eo.legacy.h \ 533lib/elementary/elm_notify_eo.legacy.h \
534lib/elementary/elm_panel_eo.h \
535lib/elementary/elm_panel_eo.legacy.h \
533$(NULL) 536$(NULL)
534 537
535 538
diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c
index 700056f..b6e4728 100644
--- a/src/lib/elementary/elm_panel.c
+++ b/src/lib/elementary/elm_panel.c
@@ -1501,4 +1501,4 @@ ELM_PART_OVERRIDE_CONTENT_UNSET(elm_panel, ELM_PANEL, Elm_Panel_Data)
1501 ELM_LAYOUT_SIZING_EVAL_OPS(elm_panel), \ 1501 ELM_LAYOUT_SIZING_EVAL_OPS(elm_panel), \
1502 EFL_CANVAS_GROUP_ADD_DEL_OPS(elm_panel) 1502 EFL_CANVAS_GROUP_ADD_DEL_OPS(elm_panel)
1503 1503
1504#include "elm_panel.eo.c" 1504#include "elm_panel_eo.c"
diff --git a/src/lib/elementary/elm_panel.eo b/src/lib/elementary/elm_panel.eo
deleted file mode 100644
index 890aad8..0000000
--- a/src/lib/elementary/elm_panel.eo
+++ /dev/null
@@ -1,94 +0,0 @@
1enum Elm.Panel.Orient
2{
3 [[Panel orientation mode]]
4
5 top, [[Panel (dis)appears from the top]]
6 bottom, [[Panel (dis)appears from the bottom]]
7 left, [[Panel (dis)appears from the left]]
8 right [[Panel (dis)appears from the right]]
9}
10
11class Elm.Panel extends Efl.Ui.Layout_Base implements Efl.Ui.Focus.Layer, Elm.Interface_Scrollable,
12 Efl.Access.Widget.Action, Efl.Ui.Legacy
13{
14 [[Elementary panel class]]
15 legacy_prefix: elm_panel;
16 eo_prefix: elm_obj_panel;
17 event_prefix: elm_panel;
18 methods {
19 @property orient {
20 set {
21 [[Set the orientation of the panel
22
23 Set from where the panel will (dis)appear.
24 ]]
25 }
26 get {
27 [[Get the orientation of the panel.]]
28 }
29 values {
30 orient: Elm.Panel.Orient(Elm.Panel.Orient.left); [[The panel orientation.]]
31 }
32 }
33 @property hidden {
34 set {
35 [[Set the state of the panel.]]
36 }
37 get {
38 [[Get the state of the panel.]]
39 }
40 values {
41 hidden: bool; [[If $true, the panel will run the animation to disappear.]]
42 }
43 }
44 @property scrollable {
45 set {
46 [[Set the scrollability of the panel.]]
47 }
48 get {
49 [[Get the state of the scrollability.
50
51 @since 1.12
52 ]]
53 }
54 values {
55 scrollable: bool; [[The scrollable state.]]
56 }
57 }
58 @property scrollable_content_size {
59 set {
60 [[Set the size of the scrollable panel.]]
61 }
62 get {
63 [[Get the size of the scrollable panel.
64
65 @since 1.19
66 ]]
67 }
68 values {
69 ratio: double; [[Size ratio]]
70 }
71 }
72 toggle {
73 [[Toggle the hidden state of the panel from code]]
74 }
75 }
76 implements {
77 class.constructor;
78 Efl.Object.constructor;
79 Efl.Gfx.Entity.position { set; }
80 Efl.Gfx.Entity.size { set; }
81 Efl.Canvas.Group.group_member_add;
82 Efl.Ui.Widget.theme_apply;
83 Efl.Ui.Widget.disabled {set;}
84 Efl.Ui.Widget.on_access_update;
85 Efl.Ui.Widget.widget_input_event_handler;
86 Efl.Ui.Widget.interest_region { get; }
87 Efl.Access.Widget.Action.elm_actions { get; }
88 Efl.Ui.I18n.mirrored { set; }
89 Efl.Part.part_get;
90 }
91 events {
92 toggled: void; [[Called when the hidden state was toggled]]
93 }
94}
diff --git a/src/lib/elementary/elm_panel_eo.c b/src/lib/elementary/elm_panel_eo.c
new file mode 100644
index 0000000..d54be07
--- /dev/null
+++ b/src/lib/elementary/elm_panel_eo.c
@@ -0,0 +1,210 @@
1EWAPI const Efl_Event_Description _ELM_PANEL_EVENT_TOGGLED =
2 EFL_EVENT_DESCRIPTION("toggled");
3
4void _elm_panel_orient_set(Eo *obj, Elm_Panel_Data *pd, Elm_Panel_Orient orient);
5
6EOAPI EFL_VOID_FUNC_BODYV(elm_obj_panel_orient_set, EFL_FUNC_CALL(orient), Elm_Panel_Orient orient);
7
8Elm_Panel_Orient _elm_panel_orient_get(const Eo *obj, Elm_Panel_Data *pd);
9
10EOAPI EFL_FUNC_BODY_CONST(elm_obj_panel_orient_get, Elm_Panel_Orient, 2 /* Elm.Panel.Orient.left */);
11
12void _elm_panel_hidden_set(Eo *obj, Elm_Panel_Data *pd, Eina_Bool hidden);
13
14
15static Eina_Error
16__eolian_elm_panel_hidden_set_reflect(Eo *obj, Eina_Value val)
17{
18 Eina_Error r = 0; Eina_Bool cval;
19 if (!eina_value_bool_convert(&val, &cval))
20 {
21 r = EINA_ERROR_VALUE_FAILED;
22 goto end;
23 }
24 elm_obj_panel_hidden_set(obj, cval);
25 end:
26 eina_value_flush(&val);
27 return r;
28}
29
30EOAPI EFL_VOID_FUNC_BODYV(elm_obj_panel_hidden_set, EFL_FUNC_CALL(hidden), Eina_Bool hidden);
31
32Eina_Bool _elm_panel_hidden_get(const Eo *obj, Elm_Panel_Data *pd);
33
34
35static Eina_Value
36__eolian_elm_panel_hidden_get_reflect(Eo *obj)
37{
38 Eina_Bool val = elm_obj_panel_hidden_get(obj);
39 return eina_value_bool_init(val);
40}
41
42EOAPI EFL_FUNC_BODY_CONST(elm_obj_panel_hidden_get, Eina_Bool, 0);
43
44void _elm_panel_scrollable_set(Eo *obj, Elm_Panel_Data *pd, Eina_Bool scrollable);
45
46
47static Eina_Error
48__eolian_elm_panel_scrollable_set_reflect(Eo *obj, Eina_Value val)
49{
50 Eina_Error r = 0; Eina_Bool cval;
51 if (!eina_value_bool_convert(&val, &cval))
52 {
53 r = EINA_ERROR_VALUE_FAILED;
54 goto end;
55 }
56 elm_obj_panel_scrollable_set(obj, cval);
57 end:
58 eina_value_flush(&val);
59 return r;
60}
61
62EOAPI EFL_VOID_FUNC_BODYV(elm_obj_panel_scrollable_set, EFL_FUNC_CALL(scrollable), Eina_Bool scrollable);
63
64Eina_Bool _elm_panel_scrollable_get(const Eo *obj, Elm_Panel_Data *pd);
65
66
67static Eina_Value
68__eolian_elm_panel_scrollable_get_reflect(Eo *obj)
69{
70 Eina_Bool val = elm_obj_panel_scrollable_get(obj);
71 return eina_value_bool_init(val);
72}
73
74EOAPI EFL_FUNC_BODY_CONST(elm_obj_panel_scrollable_get, Eina_Bool, 0);
75
76void _elm_panel_scrollable_content_size_set(Eo *obj, Elm_Panel_Data *pd, double ratio);
77
78
79static Eina_Error
80__eolian_elm_panel_scrollable_content_size_set_reflect(Eo *obj, Eina_Value val)
81{
82 Eina_Error r = 0; double cval;
83 if (!eina_value_double_convert(&val, &cval))
84 {
85 r = EINA_ERROR_VALUE_FAILED;
86 goto end;
87 }
88 elm_obj_panel_scrollable_content_size_set(obj, cval);
89 end:
90 eina_value_flush(&val);
91 return r;
92}
93
94EOAPI EFL_VOID_FUNC_BODYV(elm_obj_panel_scrollable_content_size_set, EFL_FUNC_CALL(ratio), double ratio);
95
96double _elm_panel_scrollable_content_size_get(const Eo *obj, Elm_Panel_Data *pd);
97
98
99static Eina_Value
100__eolian_elm_panel_scrollable_content_size_get_reflect(Eo *obj)
101{
102 double val = elm_obj_panel_scrollable_content_size_get(obj);
103 return eina_value_double_init(val);
104}
105
106EOAPI EFL_FUNC_BODY_CONST(elm_obj_panel_scrollable_content_size_get, double, 0);
107
108void _elm_panel_toggle(Eo *obj, Elm_Panel_Data *pd);
109
110EOAPI EFL_VOID_FUNC_BODY(elm_obj_panel_toggle);
111
112Efl_Object *_elm_panel_efl_object_constructor(Eo *obj, Elm_Panel_Data *pd);
113
114
115void _elm_panel_efl_gfx_entity_position_set(Eo *obj, Elm_Panel_Data *pd, Eina_Position2D pos);
116
117
118void _elm_panel_efl_gfx_entity_size_set(Eo *obj, Elm_Panel_Data *pd, Eina_Size2D size);
119
120
121void _elm_panel_efl_canvas_group_group_member_add(Eo *obj, Elm_Panel_Data *pd, Efl_Canvas_Object *sub_obj);
122
123
124Eina_Error _elm_panel_efl_ui_widget_theme_apply(Eo *obj, Elm_Panel_Data *pd);
125
126
127void _elm_panel_efl_ui_widget_disabled_set(Eo *obj, Elm_Panel_Data *pd, Eina_Bool disabled);
128
129
130void _elm_panel_efl_ui_widget_on_access_update(Eo *obj, Elm_Panel_Data *pd, Eina_Bool enable);
131
132
133Eina_Bool _elm_panel_efl_ui_widget_widget_input_event_handler(Eo *obj, Elm_Panel_Data *pd, const Efl_Event *eo_event, Efl_Canvas_Object *source);
134
135
136Eina_Rect _elm_panel_efl_ui_widget_interest_region_get(const Eo *obj, Elm_Panel_Data *pd);
137
138
139const Efl_Access_Action_Data *_elm_panel_efl_access_widget_action_elm_actions_get(const Eo *obj, Elm_Panel_Data *pd);
140
141
142void _elm_panel_efl_ui_i18n_mirrored_set(Eo *obj, Elm_Panel_Data *pd, Eina_Bool rtl);
143
144
145Efl_Object *_elm_panel_efl_part_part_get(const Eo *obj, Elm_Panel_Data *pd, const char *name);
146
147
148static Eina_Bool
149_elm_panel_class_initializer(Efl_Class *klass)
150{
151 const Efl_Object_Ops *opsp = NULL;
152
153 const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
154
155#ifndef ELM_PANEL_EXTRA_OPS
156#define ELM_PANEL_EXTRA_OPS
157#endif
158
159 EFL_OPS_DEFINE(ops,
160 EFL_OBJECT_OP_FUNC(elm_obj_panel_orient_set, _elm_panel_orient_set),
161 EFL_OBJECT_OP_FUNC(elm_obj_panel_orient_get, _elm_panel_orient_get),
162 EFL_OBJECT_OP_FUNC(elm_obj_panel_hidden_set, _elm_panel_hidden_set),
163 EFL_OBJECT_OP_FUNC(elm_obj_panel_hidden_get, _elm_panel_hidden_get),
164 EFL_OBJECT_OP_FUNC(elm_obj_panel_scrollable_set, _elm_panel_scrollable_set),
165 EFL_OBJECT_OP_FUNC(elm_obj_panel_scrollable_get, _elm_panel_scrollable_get),
166 EFL_OBJECT_OP_FUNC(elm_obj_panel_scrollable_content_size_set, _elm_panel_scrollable_content_size_set),
167 EFL_OBJECT_OP_FUNC(elm_obj_panel_scrollable_content_size_get, _elm_panel_scrollable_content_size_get),
168 EFL_OBJECT_OP_FUNC(elm_obj_panel_toggle, _elm_panel_toggle),
169 EFL_OBJECT_OP_FUNC(efl_constructor, _elm_panel_efl_object_constructor),
170 EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _elm_panel_efl_gfx_entity_position_set),
171 EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _elm_panel_efl_gfx_entity_size_set),
172 EFL_OBJECT_OP_FUNC(efl_canvas_group_member_add, _elm_panel_efl_canvas_group_group_member_add),
173 EFL_OBJECT_OP_FUNC(efl_ui_widget_theme_apply, _elm_panel_efl_ui_widget_theme_apply),
174 EFL_OBJECT_OP_FUNC(efl_ui_widget_disabled_set, _elm_panel_efl_ui_widget_disabled_set),
175 EFL_OBJECT_OP_FUNC(efl_ui_widget_on_access_update, _elm_panel_efl_ui_widget_on_access_update),
176 EFL_OBJECT_OP_FUNC(efl_ui_widget_input_event_handler, _elm_panel_efl_ui_widget_widget_input_event_handler),
177 EFL_OBJECT_OP_FUNC(efl_ui_widget_interest_region_get, _elm_panel_efl_ui_widget_interest_region_get),
178 EFL_OBJECT_OP_FUNC(efl_access_widget_action_elm_actions_get, _elm_panel_efl_access_widget_action_elm_actions_get),
179 EFL_OBJECT_OP_FUNC(efl_ui_mirrored_set, _elm_panel_efl_ui_i18n_mirrored_set),
180 EFL_OBJECT_OP_FUNC(efl_part_get, _elm_panel_efl_part_part_get),
181 ELM_PANEL_EXTRA_OPS
182 );
183 opsp = &ops;
184
185 static const Efl_Object_Property_Reflection refl_table[] = {
186 {"hidden", __eolian_elm_panel_hidden_set_reflect, __eolian_elm_panel_hidden_get_reflect},
187 {"scrollable", __eolian_elm_panel_scrollable_set_reflect, __eolian_elm_panel_scrollable_get_reflect},
188 {"scrollable_content_size", __eolian_elm_panel_scrollable_content_size_set_reflect, __eolian_elm_panel_scrollable_content_size_get_reflect},
189 };
190 static const Efl_Object_Property_Reflection_Ops rops = {
191 refl_table, EINA_C_ARRAY_LENGTH(refl_table)
192 };
193 ropsp = &rops;
194
195 return efl_class_functions_set(klass, opsp, ropsp);
196}
197
198static const Efl_Class_Description _elm_panel_class_desc = {
199 EO_VERSION,
200 "Elm.Panel",
201 EFL_CLASS_TYPE_REGULAR,
202 sizeof(Elm_Panel_Data),
203 _elm_panel_class_initializer,
204 _elm_panel_class_constructor,
205 NULL
206};
207
208EFL_DEFINE_CLASS(elm_panel_class_get, &_elm_panel_class_desc, EFL_UI_LAYOUT_BASE_CLASS, EFL_UI_FOCUS_LAYER_MIXIN, ELM_INTERFACE_SCROLLABLE_MIXIN, EFL_ACCESS_WIDGET_ACTION_MIXIN, EFL_UI_LEGACY_INTERFACE, NULL);
209
210#include "elm_panel_eo.legacy.c"
diff --git a/src/lib/elementary/elm_panel_eo.h b/src/lib/elementary/elm_panel_eo.h
new file mode 100644
index 0000000..5e045de
--- /dev/null
+++ b/src/lib/elementary/elm_panel_eo.h
@@ -0,0 +1,140 @@
1#ifndef _ELM_PANEL_EO_H_
2#define _ELM_PANEL_EO_H_
3
4#ifndef _ELM_PANEL_EO_CLASS_TYPE
5#define _ELM_PANEL_EO_CLASS_TYPE
6
7typedef Eo Elm_Panel;
8
9#endif
10
11#ifndef _ELM_PANEL_EO_TYPES
12#define _ELM_PANEL_EO_TYPES
13
14/** Panel orientation mode
15 *
16 * @ingroup Elm_Panel
17 */
18typedef enum
19{
20 ELM_PANEL_ORIENT_TOP = 0, /**< Panel (dis)appears from the top */
21 ELM_PANEL_ORIENT_BOTTOM, /**< Panel (dis)appears from the bottom */
22 ELM_PANEL_ORIENT_LEFT, /**< Panel (dis)appears from the left */
23 ELM_PANEL_ORIENT_RIGHT /**< Panel (dis)appears from the right */
24} Elm_Panel_Orient;
25
26
27#endif
28/** Elementary panel class
29 *
30 * @ingroup Elm_Panel
31 */
32#define ELM_PANEL_CLASS elm_panel_class_get()
33
34EWAPI const Efl_Class *elm_panel_class_get(void);
35
36/**
37 * @brief Set the orientation of the panel
38 *
39 * Set from where the panel will (dis)appear.
40 *
41 * @param[in] obj The object.
42 * @param[in] orient The panel orientation.
43 *
44 * @ingroup Elm_Panel
45 */
46EOAPI void elm_obj_panel_orient_set(Eo *obj, Elm_Panel_Orient orient);
47
48/**
49 * @brief Get the orientation of the panel.
50 *
51 * @param[in] obj The object.
52 *
53 * @return The panel orientation.
54 *
55 * @ingroup Elm_Panel
56 */
57EOAPI Elm_Panel_Orient elm_obj_panel_orient_get(const Eo *obj);
58
59/**
60 * @brief Set the state of the panel.
61 *
62 * @param[in] obj The object.
63 * @param[in] hidden If @c true, the panel will run the animation to disappear.
64 *
65 * @ingroup Elm_Panel
66 */
67EOAPI void elm_obj_panel_hidden_set(Eo *obj, Eina_Bool hidden);
68
69/**
70 * @brief Get the state of the panel.
71 *
72 * @param[in] obj The object.
73 *
74 * @return If @c true, the panel will run the animation to disappear.
75 *
76 * @ingroup Elm_Panel
77 */
78EOAPI Eina_Bool elm_obj_panel_hidden_get(const Eo *obj);
79
80/**
81 * @brief Set the scrollability of the panel.
82 *
83 * @param[in] obj The object.
84 * @param[in] scrollable The scrollable state.
85 *
86 * @ingroup Elm_Panel
87 */
88EOAPI void elm_obj_panel_scrollable_set(Eo *obj, Eina_Bool scrollable);
89
90/**
91 * @brief Get the state of the scrollability.
92 *
93 * @param[in] obj The object.
94 *
95 * @return The scrollable state.
96 *
97 * @since 1.12
98 *
99 * @ingroup Elm_Panel
100 */
101EOAPI Eina_Bool elm_obj_panel_scrollable_get(const Eo *obj);
102
103/**
104 * @brief Set the size of the scrollable panel.
105 *
106 * @param[in] obj The object.
107 * @param[in] ratio Size ratio
108 *
109 * @ingroup Elm_Panel
110 */
111EOAPI void elm_obj_panel_scrollable_content_size_set(Eo *obj, double ratio);
112
113/**
114 * @brief Get the size of the scrollable panel.
115 *
116 * @param[in] obj The object.
117 *
118 * @return Size ratio
119 *
120 * @since 1.19
121 *
122 * @ingroup Elm_Panel
123 */
124EOAPI double elm_obj_panel_scrollable_content_size_get(const Eo *obj);
125
126/** Toggle the hidden state of the panel from code
127 *
128 * @ingroup Elm_Panel
129 */
130EOAPI void elm_obj_panel_toggle(Eo *obj);
131
132EWAPI extern const Efl_Event_Description _ELM_PANEL_EVENT_TOGGLED;
133
134/** Called when the hidden state was toggled
135 *
136 * @ingroup Elm_Panel
137 */
138#define ELM_PANEL_EVENT_TOGGLED (&(_ELM_PANEL_EVENT_TOGGLED))
139
140#endif
diff --git a/src/lib/elementary/elm_panel_eo.legacy.c b/src/lib/elementary/elm_panel_eo.legacy.c
new file mode 100644
index 0000000..0dc4e86
--- /dev/null
+++ b/src/lib/elementary/elm_panel_eo.legacy.c
@@ -0,0 +1,54 @@
1
2EAPI void
3elm_panel_orient_set(Elm_Panel *obj, Elm_Panel_Orient orient)
4{
5 elm_obj_panel_orient_set(obj, orient);
6}
7
8EAPI Elm_Panel_Orient
9elm_panel_orient_get(const Elm_Panel *obj)
10{
11 return elm_obj_panel_orient_get(obj);
12}
13
14EAPI void
15elm_panel_hidden_set(Elm_Panel *obj, Eina_Bool hidden)
16{
17 elm_obj_panel_hidden_set(obj, hidden);
18}
19
20EAPI Eina_Bool
21elm_panel_hidden_get(const Elm_Panel *obj)
22{
23 return elm_obj_panel_hidden_get(obj);
24}
25
26EAPI void
27elm_panel_scrollable_set(Elm_Panel *obj, Eina_Bool scrollable)
28{
29 elm_obj_panel_scrollable_set(obj, scrollable);
30}
31
32EAPI Eina_Bool
33elm_panel_scrollable_get(const Elm_Panel *obj)
34{
35 return elm_obj_panel_scrollable_get(obj);
36}
37
38EAPI void
39elm_panel_scrollable_content_size_set(Elm_Panel *obj, double ratio)
40{
41 elm_obj_panel_scrollable_content_size_set(obj, ratio);
42}
43
44EAPI double
45elm_panel_scrollable_content_size_get(const Elm_Panel *obj)
46{
47 return elm_obj_panel_scrollable_content_size_get(obj);
48}
49
50EAPI void
51elm_panel_toggle(Elm_Panel *obj)
52{
53 elm_obj_panel_toggle(obj);
54}
diff --git a/src/lib/elementary/elm_panel_eo.legacy.h b/src/lib/elementary/elm_panel_eo.legacy.h
new file mode 100644
index 0000000..d6b8b49
--- /dev/null
+++ b/src/lib/elementary/elm_panel_eo.legacy.h
@@ -0,0 +1,125 @@
1#ifndef _ELM_PANEL_EO_LEGACY_H_
2#define _ELM_PANEL_EO_LEGACY_H_
3
4#ifndef _ELM_PANEL_EO_CLASS_TYPE
5#define _ELM_PANEL_EO_CLASS_TYPE
6
7typedef Eo Elm_Panel;
8
9#endif
10
11#ifndef _ELM_PANEL_EO_TYPES
12#define _ELM_PANEL_EO_TYPES
13
14/** Panel orientation mode
15 *
16 * @ingroup Elm_Panel
17 */
18typedef enum
19{
20 ELM_PANEL_ORIENT_TOP = 0, /**< Panel (dis)appears from the top */
21 ELM_PANEL_ORIENT_BOTTOM, /**< Panel (dis)appears from the bottom */
22 ELM_PANEL_ORIENT_LEFT, /**< Panel (dis)appears from the left */
23 ELM_PANEL_ORIENT_RIGHT /**< Panel (dis)appears from the right */
24} Elm_Panel_Orient;
25
26
27#endif
28
29/**
30 * @brief Set the orientation of the panel
31 *
32 * Set from where the panel will (dis)appear.
33 *
34 * @param[in] obj The object.
35 * @param[in] orient The panel orientation.
36 *
37 * @ingroup Elm_Panel_Group
38 */
39EAPI void elm_panel_orient_set(Elm_Panel *obj, Elm_Panel_Orient orient);
40
41/**
42 * @brief Get the orientation of the panel.
43 *
44 * @param[in] obj The object.
45 *
46 * @return The panel orientation.
47 *
48 * @ingroup Elm_Panel_Group
49 */
50EAPI Elm_Panel_Orient elm_panel_orient_get(const Elm_Panel *obj);
51
52/**
53 * @brief Set the state of the panel.
54 *
55 * @param[in] obj The object.
56 * @param[in] hidden If @c true, the panel will run the animation to disappear.
57 *
58 * @ingroup Elm_Panel_Group
59 */
60EAPI void elm_panel_hidden_set(Elm_Panel *obj, Eina_Bool hidden);
61
62/**
63 * @brief Get the state of the panel.
64 *
65 * @param[in] obj The object.
66 *
67 * @return If @c true, the panel will run the animation to disappear.
68 *
69 * @ingroup Elm_Panel_Group
70 */
71EAPI Eina_Bool elm_panel_hidden_get(const Elm_Panel *obj);
72
73/**
74 * @brief Set the scrollability of the panel.
75 *
76 * @param[in] obj The object.
77 * @param[in] scrollable The scrollable state.
78 *
79 * @ingroup Elm_Panel_Group
80 */
81EAPI void elm_panel_scrollable_set(Elm_Panel *obj, Eina_Bool scrollable);
82
83/**
84 * @brief Get the state of the scrollability.
85 *
86 * @param[in] obj The object.
87 *
88 * @return The scrollable state.
89 *
90 * @since 1.12
91 *
92 * @ingroup Elm_Panel_Group
93 */
94EAPI Eina_Bool elm_panel_scrollable_get(const Elm_Panel *obj);
95
96/**
97 * @brief Set the size of the scrollable panel.
98 *
99 * @param[in] obj The object.
100 * @param[in] ratio Size ratio
101 *
102 * @ingroup Elm_Panel_Group
103 */
104EAPI void elm_panel_scrollable_content_size_set(Elm_Panel *obj, double ratio);
105
106/**
107 * @brief Get the size of the scrollable panel.
108 *
109 * @param[in] obj The object.
110 *
111 * @return Size ratio
112 *
113 * @since 1.19
114 *
115 * @ingroup Elm_Panel_Group
116 */
117EAPI double elm_panel_scrollable_content_size_get(const Elm_Panel *obj);
118
119/** Toggle the hidden state of the panel from code
120 *
121 * @ingroup Elm_Panel_Group
122 */
123EAPI void elm_panel_toggle(Elm_Panel *obj);
124
125#endif
diff --git a/src/lib/elementary/elm_panel_legacy.h b/src/lib/elementary/elm_panel_legacy.h
index 33513fc..a95c310 100644
--- a/src/lib/elementary/elm_panel_legacy.h
+++ b/src/lib/elementary/elm_panel_legacy.h
@@ -9,4 +9,4 @@
9 */ 9 */
10EAPI Evas_Object *elm_panel_add(Evas_Object *parent); 10EAPI Evas_Object *elm_panel_add(Evas_Object *parent);
11 11
12#include "elm_panel.eo.legacy.h" \ No newline at end of file 12#include "elm_panel_eo.legacy.h" \ No newline at end of file
diff --git a/src/lib/elementary/elm_widget_panel.h b/src/lib/elementary/elm_widget_panel.h
index 7aa093f..dbbbf80 100644
--- a/src/lib/elementary/elm_widget_panel.h
+++ b/src/lib/elementary/elm_widget_panel.h
@@ -3,7 +3,7 @@
3 3
4#include "elm_interface_scrollable.h" 4#include "elm_interface_scrollable.h"
5#include "elm_widget_layout.h" 5#include "elm_widget_layout.h"
6#include "elm_panel.eo.h" 6#include "elm_panel_eo.h"
7 7
8/* DO NOT USE THIS HEADER UNLESS YOU ARE PREPARED FOR BREAKING OF YOUR 8/* DO NOT USE THIS HEADER UNLESS YOU ARE PREPARED FOR BREAKING OF YOUR
9 * CODE. THIS IS ELEMENTARY'S INTERNAL WIDGET API (for now) AND IS NOT 9 * CODE. THIS IS ELEMENTARY'S INTERNAL WIDGET API (for now) AND IS NOT
diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build
index 752c5c9..72b7d30 100644
--- a/src/lib/elementary/meson.build
+++ b/src/lib/elementary/meson.build
@@ -1,6 +1,5 @@
1pub_legacy_eo_files = [ 1pub_legacy_eo_files = [
2 'efl_ui_clock_legacy.eo', 2 'efl_ui_clock_legacy.eo',
3 'elm_panel.eo',
4 'elm_player.eo', 3 'elm_player.eo',
5 'elm_plug.eo', 4 'elm_plug.eo',
6 'elm_popup.eo', 5 'elm_popup.eo',
@@ -778,6 +777,8 @@ elementary_pub_headers = [
778 'elm_naviframe_item_eo.legacy.h', 777 'elm_naviframe_item_eo.legacy.h',
779 'elm_notify_eo.h', 778 'elm_notify_eo.h',
780 'elm_notify_eo.legacy.h', 779 'elm_notify_eo.legacy.h',
780 'elm_panel_eo.h',
781 'elm_panel_eo.legacy.h',
781] 782]
782 783
783elementary_header_src = [ 784elementary_header_src = [