lib/elementary/elm_actionslider_part.eo \
lib/elementary/elm_bubble_part.eo \
lib/elementary/elm_fileselector_part.eo \
- lib/elementary/elm_naviframe.eo \
- lib/elementary/elm_naviframe_item.eo \
lib/elementary/elm_photo.eo \
lib/elementary/elm_prefs.eo \
lib/elementary/elm_segment_control.eo \
lib/elementary/elm_multibuttonentry_eo.legacy.c \
lib/elementary/elm_multibuttonentry_item_eo.c \
lib/elementary/elm_multibuttonentry_item_eo.legacy.c \
+lib/elementary/elm_naviframe_eo.c \
+lib/elementary/elm_naviframe_eo.legacy.c \
+lib/elementary/elm_naviframe_item_eo.c \
+lib/elementary/elm_naviframe_item_eo.legacy.c \
$(NULL)
elm_legacy_eo_headers = \
lib/elementary/elm_multibuttonentry_eo.legacy.h \
lib/elementary/elm_multibuttonentry_item_eo.h \
lib/elementary/elm_multibuttonentry_item_eo.legacy.h \
+lib/elementary/elm_naviframe_eo.h \
+lib/elementary/elm_naviframe_eo.legacy.h \
+lib/elementary/elm_naviframe_item_eo.h \
+lib/elementary/elm_naviframe_item_eo.legacy.h \
$(NULL)
#include <Elementary.h>
#include "elm_priv.h"
-#include "elm_naviframe.eo.h"
-#include "elm_naviframe_item.eo.h"
+#include "elm_naviframe_eo.h"
+#include "elm_naviframe_item_eo.h"
#include "elm_widget_naviframe.h"
#include "elm_widget_container.h"
ELM_LAYOUT_SIZING_EVAL_OPS(elm_naviframe), \
EFL_CANVAS_GROUP_ADD_DEL_OPS(elm_naviframe)
-#include "elm_naviframe_item.eo.c"
-#include "elm_naviframe.eo.c"
+#include "elm_naviframe_item_eo.c"
+#include "elm_naviframe_eo.c"
*/
EAPI const char *elm_naviframe_item_style_get(const Elm_Object_Item *obj);
-#include "elm_naviframe_item.eo.legacy.h"
-#include "elm_naviframe.eo.legacy.h"
+#include "elm_naviframe_item_eo.legacy.h"
+#include "elm_naviframe_eo.legacy.h"
+++ /dev/null
-class Elm.Naviframe extends Efl.Ui.Layout_Base implements Efl.Access.Widget.Action, Efl.Ui.Legacy
-{
- [[Elementary naviframe class]]
- legacy_prefix: elm_naviframe;
- eo_prefix: elm_obj_naviframe;
- event_prefix: elm_naviframe;
- methods {
- @property event_enabled {
- [[Control the event enabled when pushing/popping items
-
- If $enabled is $true, the contents of the naviframe item will
- receives events from mouse and keyboard during view changing such as
- item push/pop.
-
- Warning: Events will be blocked by calling evas_object_freeze_events_set()
- internally. So don't call the API whiling pushing/popping items.]]
- set {
- }
- get {
- }
- values {
- enabled: bool; [[Events are received when enabled is $true, and ignored otherwise.]]
- }
- }
- @property content_preserve_on_pop {
- [[Preserve the content objects when items are popped.]]
- set {
- }
- get {
- }
- values {
- preserve: bool; [[Enable the preserve mode if $true, disable otherwise]]
- }
- }
- @property prev_btn_auto_pushed {
- [[Control if creating prev button automatically or not]]
- set {
- }
- get {
- }
- values {
- auto_pushed: bool; [[If $true, the previous button(back button) will be created internally when you pass the $NULL to the prev_btn parameter in elm_naviframe_item_push]]
- }
- }
- @property items {
- get {
- [[Get a list of all the naviframe items.]]
-
- return: list<Elm.Widget.Item> @owned @warn_unused; [[A list of naviframe items, @Elm.Widget.Item, or $NULL on failure. Note: The returned list MUST be freed.]]
- }
- }
- @property top_item {
- get {
- [[Get a top item on the naviframe stack]]
-
- return: Elm.Widget.Item; [[The top item on the naviframe stack or $NULL, if the stack is empty]]
- }
- }
- @property bottom_item {
- get {
- [[Get a bottom item on the naviframe stack]]
-
- return: Elm.Widget.Item; [[The bottom item on the naviframe stack or $NULL, if the stack is empty]]
- }
- }
- item_pop {
- [[Pop an item that is on top of the stack
-
- This pops an item that is on the top(visible) of the naviframe, makes it
- disappear, then deletes the item. The item that was underneath it on the
- stack will become visible.
-
- When pop transition animation is in progress, new pop operation is blocked until current pop operation
- is complete.
- ]]
-
- return: Efl.Canvas.Object; [[$NULL or the content object(if the elm_naviframe_content_preserve_on_pop_get is true).]]
- }
- item_insert_before {
- [[Insert a new item into the naviframe before item $before.
-
- The item is inserted into the naviframe straight away without any
- transition operations. This item will be deleted when it is popped.]]
-
- return: Elm.Widget.Item; [[The created item or $NULL upon failure.]]
- params {
- @in before: Elm.Widget.Item; [[The naviframe item to insert before.]]
- @in title_label: string @optional; [[The label in the title area. The name of the title label part is "elm.text.title"]]
- @in prev_btn: Efl.Canvas.Object @nullable; [[The button to go to the previous item. If it is NULL, then naviframe will create a back button automatically. The name of the prev_btn part is "elm.swallow.prev_btn"]]
- @in next_btn: Efl.Canvas.Object @nullable; [[The button to go to the next item. Or It could be just an extra function button. The name of the next_btn part is "elm.swallow.next_btn"]]
- @in content: Efl.Canvas.Object; [[The main content object. The name of content part is "elm.swallow.content"]]
- @in item_style: string @nullable; [[The current item style name. $NULL would be default.]]
- }
- }
- item_push {
- [[Push a new item to the top of the naviframe stack (and show it).
-
-
- The item pushed becomes one page of the naviframe, this item will be
- deleted when it is popped.
-
- When push transition animation is in progress, pop operation is blocked until push is complete.
-
- The following styles are available for this item:
- "default"]]
-
- return: Elm.Widget.Item; [[The created item or $NULL upon failure.]]
- params {
- @in title_label: string @optional; [[The label in the title area. The name of the title label part is "elm.text.title"]]
- @in prev_btn: Efl.Canvas.Object @nullable; [[The button to go to the previous item. If it is NULL, then naviframe will create a back button automatically. The name of the prev_btn part is "elm.swallow.prev_btn"]]
- @in next_btn: Efl.Canvas.Object @nullable; [[The button to go to the next item. Or It could be just an extra function button. The name of the next_btn part is "elm.swallow.next_btn"]]
- @in content: Efl.Canvas.Object; [[The main content object. The name of content part is "elm.swallow.content"]]
- @in item_style: string @nullable; [[The current item style name. $NULL would be default.]]
- }
- }
- item_simple_promote {
- [[Simple version of item_promote.]]
-
- params {
- @in content: Efl.Canvas.Object; [[Item to promote]]
- }
- }
- item_insert_after {
- [[Insert a new item into the naviframe after item $after.
-
- The item is inserted into the naviframe straight away without any
- transition operations. This item will be deleted when it is popped.
-
- The following styles are available for this item:
- "default"]]
-
- return: Elm.Widget.Item; [[The created item or $NULL upon failure.]]
- params {
- @in after: Elm.Widget.Item; [[The naviframe item to insert after.]]
- @in title_label: string @optional; [[The label in the title area. The name of the title label part is "elm.text.title"]]
- @in prev_btn: Efl.Canvas.Object @nullable; [[The button to go to the previous item. If it is NULL, then naviframe will create a back button automatically. The name of the prev_btn part is "elm.swallow.prev_btn"]]
- @in next_btn: Efl.Canvas.Object @nullable; [[The button to go to the next item. Or It could be just an extra function button. The name of the next_btn part is "elm.swallow.next_btn"]]
- @in content: Efl.Canvas.Object; [[The main content object. The name of content part is "elm.swallow.content"]]
- @in item_style: string @nullable; [[The current item style name. $NULL would be default.]]
- }
- }
- }
- implements {
- class.constructor;
- Efl.Object.constructor;
- Efl.Gfx.Entity.visible { set; }
- Efl.Ui.Widget.on_access_update;
- Efl.Ui.L10n.translation_update;
- Efl.Ui.Widget.theme_apply;
- Efl.Ui.Widget.widget_input_event_handler;
- Efl.Layout.Signal.signal_emit;
- Efl.Access.Widget.Action.elm_actions { get; }
- Efl.Ui.Widget.resize_object { set; }
- Efl.Part.part_get;
-
- //TIZEN_ONLY(20160822): When atspi mode is dynamically switched on/off,
- //register/unregister access objects accordingly.
- // TIZEN_ONLY(20170516): connect to at-spi dbus based on org.a11y.Status.IsEnabled property
- Efl.Ui.Widget.screen_reader;
- //
- //
-
- //TIZEN_ONLY(20161208): add API elm_object_part_access_object_get
- Efl.Ui.Widget.part_access_object_get;
- //
-
- //TIZEN_ONLY(20161213) Using VIEW(item) for naviframe, naviframe item accessible information
- Efl.Access.Object.i18n_name { get; }
- Efl.Access.Object.description { get; }
- //
- //TIZEN_ONLY(20180607): Restore legacy focus
- Efl.Ui.Widget.focus_direction;
- Efl.Ui.Widget.focus_direction_manager_is;
- Efl.Ui.Widget.focus_next;
- Efl.Ui.Widget.focus_next_manager_is;
- //
- }
- events {
- transition,finished: Efl.Object; [[Called when naviframe transition finished]]
- title,transition,finished: Efl.Object; [[Called when naviframe title transaction finished]]
- title,clicked: Efl.Object; [[Called when naviframe title was clicked]]
- item,activated: Efl.Object; [[Called when naviframe item was activated]]
- }
-}
--- /dev/null
+EWAPI const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TRANSITION_FINISHED =
+ EFL_EVENT_DESCRIPTION("transition,finished");
+EWAPI const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TITLE_TRANSITION_FINISHED =
+ EFL_EVENT_DESCRIPTION("title,transition,finished");
+EWAPI const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TITLE_CLICKED =
+ EFL_EVENT_DESCRIPTION("title,clicked");
+EWAPI const Efl_Event_Description _ELM_NAVIFRAME_EVENT_ITEM_ACTIVATED =
+ EFL_EVENT_DESCRIPTION("item,activated");
+
+void _elm_naviframe_event_enabled_set(Eo *obj, Elm_Naviframe_Data *pd, Eina_Bool enabled);
+
+
+static Eina_Error
+__eolian_elm_naviframe_event_enabled_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_naviframe_event_enabled_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_event_enabled_set, EFL_FUNC_CALL(enabled), Eina_Bool enabled);
+
+Eina_Bool _elm_naviframe_event_enabled_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+
+static Eina_Value
+__eolian_elm_naviframe_event_enabled_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_naviframe_event_enabled_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_event_enabled_get, Eina_Bool, 0);
+
+void _elm_naviframe_content_preserve_on_pop_set(Eo *obj, Elm_Naviframe_Data *pd, Eina_Bool preserve);
+
+
+static Eina_Error
+__eolian_elm_naviframe_content_preserve_on_pop_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_naviframe_content_preserve_on_pop_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_content_preserve_on_pop_set, EFL_FUNC_CALL(preserve), Eina_Bool preserve);
+
+Eina_Bool _elm_naviframe_content_preserve_on_pop_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+
+static Eina_Value
+__eolian_elm_naviframe_content_preserve_on_pop_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_naviframe_content_preserve_on_pop_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_content_preserve_on_pop_get, Eina_Bool, 0);
+
+void _elm_naviframe_prev_btn_auto_pushed_set(Eo *obj, Elm_Naviframe_Data *pd, Eina_Bool auto_pushed);
+
+
+static Eina_Error
+__eolian_elm_naviframe_prev_btn_auto_pushed_set_reflect(Eo *obj, Eina_Value val)
+{
+ Eina_Error r = 0; Eina_Bool cval;
+ if (!eina_value_bool_convert(&val, &cval))
+ {
+ r = EINA_ERROR_VALUE_FAILED;
+ goto end;
+ }
+ elm_obj_naviframe_prev_btn_auto_pushed_set(obj, cval);
+ end:
+ eina_value_flush(&val);
+ return r;
+}
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_prev_btn_auto_pushed_set, EFL_FUNC_CALL(auto_pushed), Eina_Bool auto_pushed);
+
+Eina_Bool _elm_naviframe_prev_btn_auto_pushed_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+
+static Eina_Value
+__eolian_elm_naviframe_prev_btn_auto_pushed_get_reflect(Eo *obj)
+{
+ Eina_Bool val = elm_obj_naviframe_prev_btn_auto_pushed_get(obj);
+ return eina_value_bool_init(val);
+}
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_prev_btn_auto_pushed_get, Eina_Bool, 0);
+
+Eina_List *_elm_naviframe_items_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_items_get, Eina_List *, NULL);
+
+Elm_Widget_Item *_elm_naviframe_top_item_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_top_item_get, Elm_Widget_Item *, NULL);
+
+Elm_Widget_Item *_elm_naviframe_bottom_item_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_bottom_item_get, Elm_Widget_Item *, NULL);
+
+Efl_Canvas_Object *_elm_naviframe_item_pop(Eo *obj, Elm_Naviframe_Data *pd);
+
+EOAPI EFL_FUNC_BODY(elm_obj_naviframe_item_pop, Efl_Canvas_Object *, NULL);
+
+Elm_Widget_Item *_elm_naviframe_item_insert_before(Eo *obj, Elm_Naviframe_Data *pd, Elm_Widget_Item *before, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+EOAPI EFL_FUNC_BODYV(elm_obj_naviframe_item_insert_before, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(before, title_label, prev_btn, next_btn, content, item_style), Elm_Widget_Item *before, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+Elm_Widget_Item *_elm_naviframe_item_push(Eo *obj, Elm_Naviframe_Data *pd, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+EOAPI EFL_FUNC_BODYV(elm_obj_naviframe_item_push, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(title_label, prev_btn, next_btn, content, item_style), const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+void _elm_naviframe_item_simple_promote(Eo *obj, Elm_Naviframe_Data *pd, Efl_Canvas_Object *content);
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_item_simple_promote, EFL_FUNC_CALL(content), Efl_Canvas_Object *content);
+
+Elm_Widget_Item *_elm_naviframe_item_insert_after(Eo *obj, Elm_Naviframe_Data *pd, Elm_Widget_Item *after, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+EOAPI EFL_FUNC_BODYV(elm_obj_naviframe_item_insert_after, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(after, title_label, prev_btn, next_btn, content, item_style), Elm_Widget_Item *after, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+Efl_Object *_elm_naviframe_efl_object_constructor(Eo *obj, Elm_Naviframe_Data *pd);
+
+
+void _elm_naviframe_efl_gfx_entity_visible_set(Eo *obj, Elm_Naviframe_Data *pd, Eina_Bool v);
+
+
+void _elm_naviframe_efl_ui_widget_on_access_update(Eo *obj, Elm_Naviframe_Data *pd, Eina_Bool enable);
+
+
+void _elm_naviframe_efl_ui_l10n_translation_update(Eo *obj, Elm_Naviframe_Data *pd);
+
+
+Eina_Error _elm_naviframe_efl_ui_widget_theme_apply(Eo *obj, Elm_Naviframe_Data *pd);
+
+
+Eina_Bool _elm_naviframe_efl_ui_widget_widget_input_event_handler(Eo *obj, Elm_Naviframe_Data *pd, const Efl_Event *eo_event, Efl_Canvas_Object *source);
+
+
+void _elm_naviframe_efl_layout_signal_signal_emit(Eo *obj, Elm_Naviframe_Data *pd, const char *emission, const char *source);
+
+
+const Efl_Access_Action_Data *_elm_naviframe_efl_access_widget_action_elm_actions_get(const Eo *obj, Elm_Naviframe_Data *pd);
+
+
+void _elm_naviframe_efl_ui_widget_resize_object_set(Eo *obj, Elm_Naviframe_Data *pd, Efl_Canvas_Object *sobj);
+
+
+Efl_Object *_elm_naviframe_efl_part_part_get(const Eo *obj, Elm_Naviframe_Data *pd, const char *name);
+
+
+static Eina_Bool
+_elm_naviframe_class_initializer(Efl_Class *klass)
+{
+ const Efl_Object_Ops *opsp = NULL;
+
+ const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
+
+#ifndef ELM_NAVIFRAME_EXTRA_OPS
+#define ELM_NAVIFRAME_EXTRA_OPS
+#endif
+
+ EFL_OPS_DEFINE(ops,
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_event_enabled_set, _elm_naviframe_event_enabled_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_event_enabled_get, _elm_naviframe_event_enabled_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_content_preserve_on_pop_set, _elm_naviframe_content_preserve_on_pop_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_content_preserve_on_pop_get, _elm_naviframe_content_preserve_on_pop_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_prev_btn_auto_pushed_set, _elm_naviframe_prev_btn_auto_pushed_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_prev_btn_auto_pushed_get, _elm_naviframe_prev_btn_auto_pushed_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_items_get, _elm_naviframe_items_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_top_item_get, _elm_naviframe_top_item_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_bottom_item_get, _elm_naviframe_bottom_item_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_pop, _elm_naviframe_item_pop),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_insert_before, _elm_naviframe_item_insert_before),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_push, _elm_naviframe_item_push),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_simple_promote, _elm_naviframe_item_simple_promote),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_insert_after, _elm_naviframe_item_insert_after),
+ EFL_OBJECT_OP_FUNC(efl_constructor, _elm_naviframe_efl_object_constructor),
+ EFL_OBJECT_OP_FUNC(efl_gfx_entity_visible_set, _elm_naviframe_efl_gfx_entity_visible_set),
+ EFL_OBJECT_OP_FUNC(efl_ui_widget_on_access_update, _elm_naviframe_efl_ui_widget_on_access_update),
+ EFL_OBJECT_OP_FUNC(efl_ui_l10n_translation_update, _elm_naviframe_efl_ui_l10n_translation_update),
+ EFL_OBJECT_OP_FUNC(efl_ui_widget_theme_apply, _elm_naviframe_efl_ui_widget_theme_apply),
+ EFL_OBJECT_OP_FUNC(efl_ui_widget_input_event_handler, _elm_naviframe_efl_ui_widget_widget_input_event_handler),
+ EFL_OBJECT_OP_FUNC(efl_layout_signal_emit, _elm_naviframe_efl_layout_signal_signal_emit),
+ EFL_OBJECT_OP_FUNC(efl_access_widget_action_elm_actions_get, _elm_naviframe_efl_access_widget_action_elm_actions_get),
+ EFL_OBJECT_OP_FUNC(efl_ui_widget_resize_object_set, _elm_naviframe_efl_ui_widget_resize_object_set),
+ EFL_OBJECT_OP_FUNC(efl_part_get, _elm_naviframe_efl_part_part_get),
+ ELM_NAVIFRAME_EXTRA_OPS
+ );
+ opsp = &ops;
+
+ static const Efl_Object_Property_Reflection refl_table[] = {
+ {"event_enabled", __eolian_elm_naviframe_event_enabled_set_reflect, __eolian_elm_naviframe_event_enabled_get_reflect},
+ {"content_preserve_on_pop", __eolian_elm_naviframe_content_preserve_on_pop_set_reflect, __eolian_elm_naviframe_content_preserve_on_pop_get_reflect},
+ {"prev_btn_auto_pushed", __eolian_elm_naviframe_prev_btn_auto_pushed_set_reflect, __eolian_elm_naviframe_prev_btn_auto_pushed_get_reflect},
+ };
+ static const Efl_Object_Property_Reflection_Ops rops = {
+ refl_table, EINA_C_ARRAY_LENGTH(refl_table)
+ };
+ ropsp = &rops;
+
+ return efl_class_functions_set(klass, opsp, ropsp);
+}
+
+static const Efl_Class_Description _elm_naviframe_class_desc = {
+ EO_VERSION,
+ "Elm.Naviframe",
+ EFL_CLASS_TYPE_REGULAR,
+ sizeof(Elm_Naviframe_Data),
+ _elm_naviframe_class_initializer,
+ _elm_naviframe_class_constructor,
+ NULL
+};
+
+EFL_DEFINE_CLASS(elm_naviframe_class_get, &_elm_naviframe_class_desc, EFL_UI_LAYOUT_BASE_CLASS, EFL_ACCESS_WIDGET_ACTION_MIXIN, EFL_UI_LEGACY_INTERFACE, NULL);
+
+#include "elm_naviframe_eo.legacy.c"
--- /dev/null
+#ifndef _ELM_NAVIFRAME_EO_H_
+#define _ELM_NAVIFRAME_EO_H_
+
+#ifndef _ELM_NAVIFRAME_EO_CLASS_TYPE
+#define _ELM_NAVIFRAME_EO_CLASS_TYPE
+
+typedef Eo Elm_Naviframe;
+
+#endif
+
+#ifndef _ELM_NAVIFRAME_EO_TYPES
+#define _ELM_NAVIFRAME_EO_TYPES
+
+
+#endif
+/** Elementary naviframe class
+ *
+ * @ingroup Elm_Naviframe
+ */
+#define ELM_NAVIFRAME_CLASS elm_naviframe_class_get()
+
+EWAPI const Efl_Class *elm_naviframe_class_get(void);
+
+/**
+ * @brief Control the event enabled when pushing/popping items
+ *
+ * If @c enabled is @c true, the contents of the naviframe item will receives
+ * events from mouse and keyboard during view changing such as item push/pop.
+ *
+ * @warning Events will be blocked by calling evas_object_freeze_events_set()
+ * internally. So don't call the API whiling pushing/popping items.
+ *
+ * @param[in] obj The object.
+ * @param[in] enabled Events are received when enabled is @c true, and ignored
+ * otherwise.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI void elm_obj_naviframe_event_enabled_set(Eo *obj, Eina_Bool enabled);
+
+/**
+ * @brief Control the event enabled when pushing/popping items
+ *
+ * If @c enabled is @c true, the contents of the naviframe item will receives
+ * events from mouse and keyboard during view changing such as item push/pop.
+ *
+ * @warning Events will be blocked by calling evas_object_freeze_events_set()
+ * internally. So don't call the API whiling pushing/popping items.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Events are received when enabled is @c true, and ignored otherwise.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Eina_Bool elm_obj_naviframe_event_enabled_get(const Eo *obj);
+
+/**
+ * @brief Preserve the content objects when items are popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] preserve Enable the preserve mode if @c true, disable otherwise
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI void elm_obj_naviframe_content_preserve_on_pop_set(Eo *obj, Eina_Bool preserve);
+
+/**
+ * @brief Preserve the content objects when items are popped.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Enable the preserve mode if @c true, disable otherwise
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Eina_Bool elm_obj_naviframe_content_preserve_on_pop_get(const Eo *obj);
+
+/**
+ * @brief Control if creating prev button automatically or not
+ *
+ * @param[in] obj The object.
+ * @param[in] auto_pushed If @c true, the previous button(back button) will be
+ * created internally when you pass the @c NULL to the prev_btn parameter in
+ * elm_naviframe_item_push
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI void elm_obj_naviframe_prev_btn_auto_pushed_set(Eo *obj, Eina_Bool auto_pushed);
+
+/**
+ * @brief Control if creating prev button automatically or not
+ *
+ * @param[in] obj The object.
+ *
+ * @return If @c true, the previous button(back button) will be created
+ * internally when you pass the @c NULL to the prev_btn parameter in
+ * elm_naviframe_item_push
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Eina_Bool elm_obj_naviframe_prev_btn_auto_pushed_get(const Eo *obj);
+
+/**
+ * @brief Get a list of all the naviframe items.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A list of naviframe items, @ref Elm_Widget_Item, or @c NULL on
+ * failure. Note: The returned list MUST be freed.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Eina_List *elm_obj_naviframe_items_get(const Eo *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Get a top item on the naviframe stack
+ *
+ * @param[in] obj The object.
+ *
+ * @return The top item on the naviframe stack or @c NULL, if the stack is
+ * empty
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Elm_Widget_Item *elm_obj_naviframe_top_item_get(const Eo *obj);
+
+/**
+ * @brief Get a bottom item on the naviframe stack
+ *
+ * @param[in] obj The object.
+ *
+ * @return The bottom item on the naviframe stack or @c NULL, if the stack is
+ * empty
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Elm_Widget_Item *elm_obj_naviframe_bottom_item_get(const Eo *obj);
+
+/**
+ * @brief Pop an item that is on top of the stack
+ *
+ * This pops an item that is on the top(visible) of the naviframe, makes it
+ * disappear, then deletes the item. The item that was underneath it on the
+ * stack will become visible.
+ *
+ * When pop transition animation is in progress, new pop operation is blocked
+ * until current pop operation is complete.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c NULL or the content object(if the
+ * elm_naviframe_content_preserve_on_pop_get is true).
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Efl_Canvas_Object *elm_obj_naviframe_item_pop(Eo *obj);
+
+/**
+ * @brief Insert a new item into the naviframe before item @c before.
+ *
+ * The item is inserted into the naviframe straight away without any transition
+ * operations. This item will be deleted when it is popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] before The naviframe item to insert before.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Elm_Widget_Item *elm_obj_naviframe_item_insert_before(Eo *obj, Elm_Widget_Item *before, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+/**
+ * @brief Push a new item to the top of the naviframe stack (and show it).
+ *
+ * The item pushed becomes one page of the naviframe, this item will be deleted
+ * when it is popped.
+ *
+ * When push transition animation is in progress, pop operation is blocked
+ * until push is complete.
+ *
+ * The following styles are available for this item: "default"
+ *
+ * @param[in] obj The object.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Elm_Widget_Item *elm_obj_naviframe_item_push(Eo *obj, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+/**
+ * @brief Simple version of item_promote.
+ *
+ * @param[in] obj The object.
+ * @param[in] content Item to promote
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI void elm_obj_naviframe_item_simple_promote(Eo *obj, Efl_Canvas_Object *content);
+
+/**
+ * @brief Insert a new item into the naviframe after item @c after.
+ *
+ * The item is inserted into the naviframe straight away without any transition
+ * operations. This item will be deleted when it is popped.
+ *
+ * The following styles are available for this item: "default"
+ *
+ * @param[in] obj The object.
+ * @param[in] after The naviframe item to insert after.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe
+ */
+EOAPI Elm_Widget_Item *elm_obj_naviframe_item_insert_after(Eo *obj, Elm_Widget_Item *after, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+EWAPI extern const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TRANSITION_FINISHED;
+
+/** Called when naviframe transition finished
+ * @return Efl_Object *
+ *
+ * @ingroup Elm_Naviframe
+ */
+#define ELM_NAVIFRAME_EVENT_TRANSITION_FINISHED (&(_ELM_NAVIFRAME_EVENT_TRANSITION_FINISHED))
+
+EWAPI extern const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TITLE_TRANSITION_FINISHED;
+
+/** Called when naviframe title transaction finished
+ * @return Efl_Object *
+ *
+ * @ingroup Elm_Naviframe
+ */
+#define ELM_NAVIFRAME_EVENT_TITLE_TRANSITION_FINISHED (&(_ELM_NAVIFRAME_EVENT_TITLE_TRANSITION_FINISHED))
+
+EWAPI extern const Efl_Event_Description _ELM_NAVIFRAME_EVENT_TITLE_CLICKED;
+
+/** Called when naviframe title was clicked
+ * @return Efl_Object *
+ *
+ * @ingroup Elm_Naviframe
+ */
+#define ELM_NAVIFRAME_EVENT_TITLE_CLICKED (&(_ELM_NAVIFRAME_EVENT_TITLE_CLICKED))
+
+EWAPI extern const Efl_Event_Description _ELM_NAVIFRAME_EVENT_ITEM_ACTIVATED;
+
+/** Called when naviframe item was activated
+ * @return Efl_Object *
+ *
+ * @ingroup Elm_Naviframe
+ */
+#define ELM_NAVIFRAME_EVENT_ITEM_ACTIVATED (&(_ELM_NAVIFRAME_EVENT_ITEM_ACTIVATED))
+
+#endif
--- /dev/null
+
+EAPI void
+elm_naviframe_event_enabled_set(Elm_Naviframe *obj, Eina_Bool enabled)
+{
+ elm_obj_naviframe_event_enabled_set(obj, enabled);
+}
+
+EAPI Eina_Bool
+elm_naviframe_event_enabled_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_event_enabled_get(obj);
+}
+
+EAPI void
+elm_naviframe_content_preserve_on_pop_set(Elm_Naviframe *obj, Eina_Bool preserve)
+{
+ elm_obj_naviframe_content_preserve_on_pop_set(obj, preserve);
+}
+
+EAPI Eina_Bool
+elm_naviframe_content_preserve_on_pop_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_content_preserve_on_pop_get(obj);
+}
+
+EAPI void
+elm_naviframe_prev_btn_auto_pushed_set(Elm_Naviframe *obj, Eina_Bool auto_pushed)
+{
+ elm_obj_naviframe_prev_btn_auto_pushed_set(obj, auto_pushed);
+}
+
+EAPI Eina_Bool
+elm_naviframe_prev_btn_auto_pushed_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_prev_btn_auto_pushed_get(obj);
+}
+
+EAPI Eina_List *
+elm_naviframe_items_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_items_get(obj);
+}
+
+EAPI Elm_Widget_Item *
+elm_naviframe_top_item_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_top_item_get(obj);
+}
+
+EAPI Elm_Widget_Item *
+elm_naviframe_bottom_item_get(const Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_bottom_item_get(obj);
+}
+
+EAPI Efl_Canvas_Object *
+elm_naviframe_item_pop(Elm_Naviframe *obj)
+{
+ return elm_obj_naviframe_item_pop(obj);
+}
+
+EAPI Elm_Widget_Item *
+elm_naviframe_item_insert_before(Elm_Naviframe *obj, Elm_Widget_Item *before, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style)
+{
+ return elm_obj_naviframe_item_insert_before(obj, before, title_label, prev_btn, next_btn, content, item_style);
+}
+
+EAPI Elm_Widget_Item *
+elm_naviframe_item_push(Elm_Naviframe *obj, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style)
+{
+ return elm_obj_naviframe_item_push(obj, title_label, prev_btn, next_btn, content, item_style);
+}
+
+EAPI void
+elm_naviframe_item_simple_promote(Elm_Naviframe *obj, Efl_Canvas_Object *content)
+{
+ elm_obj_naviframe_item_simple_promote(obj, content);
+}
+
+EAPI Elm_Widget_Item *
+elm_naviframe_item_insert_after(Elm_Naviframe *obj, Elm_Widget_Item *after, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style)
+{
+ return elm_obj_naviframe_item_insert_after(obj, after, title_label, prev_btn, next_btn, content, item_style);
+}
--- /dev/null
+#ifndef _ELM_NAVIFRAME_EO_LEGACY_H_
+#define _ELM_NAVIFRAME_EO_LEGACY_H_
+
+#ifndef _ELM_NAVIFRAME_EO_CLASS_TYPE
+#define _ELM_NAVIFRAME_EO_CLASS_TYPE
+
+typedef Eo Elm_Naviframe;
+
+#endif
+
+#ifndef _ELM_NAVIFRAME_EO_TYPES
+#define _ELM_NAVIFRAME_EO_TYPES
+
+
+#endif
+
+/**
+ * @brief Control the event enabled when pushing/popping items
+ *
+ * If @c enabled is @c true, the contents of the naviframe item will receives
+ * events from mouse and keyboard during view changing such as item push/pop.
+ *
+ * @warning Events will be blocked by calling evas_object_freeze_events_set()
+ * internally. So don't call the API whiling pushing/popping items.
+ *
+ * @param[in] obj The object.
+ * @param[in] enabled Events are received when enabled is @c true, and ignored
+ * otherwise.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI void elm_naviframe_event_enabled_set(Elm_Naviframe *obj, Eina_Bool enabled);
+
+/**
+ * @brief Control the event enabled when pushing/popping items
+ *
+ * If @c enabled is @c true, the contents of the naviframe item will receives
+ * events from mouse and keyboard during view changing such as item push/pop.
+ *
+ * @warning Events will be blocked by calling evas_object_freeze_events_set()
+ * internally. So don't call the API whiling pushing/popping items.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Events are received when enabled is @c true, and ignored otherwise.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Eina_Bool elm_naviframe_event_enabled_get(const Elm_Naviframe *obj);
+
+/**
+ * @brief Preserve the content objects when items are popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] preserve Enable the preserve mode if @c true, disable otherwise
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI void elm_naviframe_content_preserve_on_pop_set(Elm_Naviframe *obj, Eina_Bool preserve);
+
+/**
+ * @brief Preserve the content objects when items are popped.
+ *
+ * @param[in] obj The object.
+ *
+ * @return Enable the preserve mode if @c true, disable otherwise
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Eina_Bool elm_naviframe_content_preserve_on_pop_get(const Elm_Naviframe *obj);
+
+/**
+ * @brief Control if creating prev button automatically or not
+ *
+ * @param[in] obj The object.
+ * @param[in] auto_pushed If @c true, the previous button(back button) will be
+ * created internally when you pass the @c NULL to the prev_btn parameter in
+ * elm_naviframe_item_push
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI void elm_naviframe_prev_btn_auto_pushed_set(Elm_Naviframe *obj, Eina_Bool auto_pushed);
+
+/**
+ * @brief Control if creating prev button automatically or not
+ *
+ * @param[in] obj The object.
+ *
+ * @return If @c true, the previous button(back button) will be created
+ * internally when you pass the @c NULL to the prev_btn parameter in
+ * elm_naviframe_item_push
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Eina_Bool elm_naviframe_prev_btn_auto_pushed_get(const Elm_Naviframe *obj);
+
+/**
+ * @brief Get a list of all the naviframe items.
+ *
+ * @param[in] obj The object.
+ *
+ * @return A list of naviframe items, @ref Elm_Widget_Item, or @c NULL on
+ * failure. Note: The returned list MUST be freed.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Eina_List *elm_naviframe_items_get(const Elm_Naviframe *obj) EINA_WARN_UNUSED_RESULT;
+
+/**
+ * @brief Get a top item on the naviframe stack
+ *
+ * @param[in] obj The object.
+ *
+ * @return The top item on the naviframe stack or @c NULL, if the stack is
+ * empty
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Elm_Widget_Item *elm_naviframe_top_item_get(const Elm_Naviframe *obj);
+
+/**
+ * @brief Get a bottom item on the naviframe stack
+ *
+ * @param[in] obj The object.
+ *
+ * @return The bottom item on the naviframe stack or @c NULL, if the stack is
+ * empty
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Elm_Widget_Item *elm_naviframe_bottom_item_get(const Elm_Naviframe *obj);
+
+/**
+ * @brief Pop an item that is on top of the stack
+ *
+ * This pops an item that is on the top(visible) of the naviframe, makes it
+ * disappear, then deletes the item. The item that was underneath it on the
+ * stack will become visible.
+ *
+ * When pop transition animation is in progress, new pop operation is blocked
+ * until current pop operation is complete.
+ *
+ * @param[in] obj The object.
+ *
+ * @return @c NULL or the content object(if the
+ * elm_naviframe_content_preserve_on_pop_get is true).
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Efl_Canvas_Object *elm_naviframe_item_pop(Elm_Naviframe *obj);
+
+/**
+ * @brief Insert a new item into the naviframe before item @c before.
+ *
+ * The item is inserted into the naviframe straight away without any transition
+ * operations. This item will be deleted when it is popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] before The naviframe item to insert before.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Elm_Widget_Item *elm_naviframe_item_insert_before(Elm_Naviframe *obj, Elm_Widget_Item *before, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+/**
+ * @brief Push a new item to the top of the naviframe stack (and show it).
+ *
+ * The item pushed becomes one page of the naviframe, this item will be deleted
+ * when it is popped.
+ *
+ * When push transition animation is in progress, pop operation is blocked
+ * until push is complete.
+ *
+ * The following styles are available for this item: "default"
+ *
+ * @param[in] obj The object.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Elm_Widget_Item *elm_naviframe_item_push(Elm_Naviframe *obj, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+/**
+ * @brief Simple version of item_promote.
+ *
+ * @param[in] obj The object.
+ * @param[in] content Item to promote
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI void elm_naviframe_item_simple_promote(Elm_Naviframe *obj, Efl_Canvas_Object *content);
+
+/**
+ * @brief Insert a new item into the naviframe after item @c after.
+ *
+ * The item is inserted into the naviframe straight away without any transition
+ * operations. This item will be deleted when it is popped.
+ *
+ * The following styles are available for this item: "default"
+ *
+ * @param[in] obj The object.
+ * @param[in] after The naviframe item to insert after.
+ * @param[in] title_label The label in the title area. The name of the title
+ * label part is "elm.text.title"
+ * @param[in] prev_btn The button to go to the previous item. If it is NULL,
+ * then naviframe will create a back button automatically. The name of the
+ * prev_btn part is "elm.swallow.prev_btn"
+ * @param[in] next_btn The button to go to the next item. Or It could be just
+ * an extra function button. The name of the next_btn part is
+ * "elm.swallow.next_btn"
+ * @param[in] content The main content object. The name of content part is
+ * "elm.swallow.content"
+ * @param[in] item_style The current item style name. @c NULL would be default.
+ *
+ * @return The created item or @c NULL upon failure.
+ *
+ * @ingroup Elm_Naviframe_Group
+ */
+EAPI Elm_Widget_Item *elm_naviframe_item_insert_after(Elm_Naviframe *obj, Elm_Widget_Item *after, const char *title_label, Efl_Canvas_Object *prev_btn, Efl_Canvas_Object *next_btn, Efl_Canvas_Object *content, const char *item_style);
+
+#endif
+++ /dev/null
-type Elm_Naviframe_Item_Pop_Cb: __undefined_type; [[Elementary naviframe item pop callback type]]
-
-class Elm.Naviframe.Item extends Elm.Widget.Item implements Efl.Ui.Legacy
-{
- [[Elementary naviframe item class]]
- legacy_prefix: elm_naviframe_item;
- eo_prefix: elm_obj_naviframe_item;
- methods {
- pop_to {
- [[Pop the top item and delete the items between the top and the
- above one on the given item.
-
- The items between the top and the given item will be deleted
- first, and then the top item will be popped at last.
-
- Warning: The pop callback function set by
- elm_naviframe_item_pop_cb_set is not called for items between the
- top item and the destination item since those items are deleted
- without being popped.
- ]]
- }
- title_enabled_get @const {
- [[Get a value whether title area is enabled or not.]]
- return: bool; [[If $true, title area will be enabled, disabled otherwise]]
- }
- title_enabled_set {
- [[Enable/Disable the title area with transition effect
-
- When the title area is disabled, then the controls would be
- hidden so as to expand the content area to full-size.
- ]]
- params {
- @in enable: bool; [[If $true, title area will be enabled, disabled otherwise]]
- @in transition: bool; [[If $true, transition effect of the title will be visible, invisible otherwise]]
- }
- }
- promote {
- [[Promote an item already in the naviframe stack to the top of
- the stack.
-
- This will take the indicated item and promote it to the top of
- the stack as if it had been pushed there. The item must already
- be inside the naviframe stack to work.
- ]]
- }
-
- pop_cb_set {
- [[Set a function to be called when an item of the naviframe is
- going to be popped.
-
- Warning: Don't set "clicked" callback to the prev button
- additionally if the function does an exact same logic with
- this $func. When hardware back key is pressed then both
- callbacks will be called.
- Warning: The pop callback function is called only if the item is
- popped. Therefore, the pop callback function is not called if the
- item is deleted without being popped.
-
- @since 1.8
- ]]
- params {
- @in func: Elm_Naviframe_Item_Pop_Cb @nullable; [[The callback function.]]
- @in data: void_ptr @optional; [[Data to be passed to func call.]]
- }
- }
- }
- implements {
- Efl.Object.constructor;
- Efl.Object.invalidate;
- Efl.Object.destructor;
- Elm.Widget.Item.signal_emit;
- Elm.Widget.Item.part_text { get; set; }
- Elm.Widget.Item.part_content { get; set; }
- Elm.Widget.Item.part_content_unset;
- Elm.Widget.Item.style { set; }
- Efl.Access.Object.access_children { get; }
- //TIZEN_ONLY(20161213) Using VIEW(item) for naviframe, naviframe item accessible information
- Efl.Access.Object.i18n_name { get; set; }
- Efl.Access.Object.description { get; set; }
- //
- Efl.Access.Object.name_cb { set; }
- Efl.Access.Object.description_cb { set; }
- Efl.Access.Object.translation_domain { set; get; }
- }
-}
--- /dev/null
+
+void _elm_naviframe_item_pop_to(Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+EOAPI EFL_VOID_FUNC_BODY(elm_obj_naviframe_item_pop_to);
+
+Eina_Bool _elm_naviframe_item_title_enabled_get(const Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+EOAPI EFL_FUNC_BODY_CONST(elm_obj_naviframe_item_title_enabled_get, Eina_Bool, 0);
+
+void _elm_naviframe_item_title_enabled_set(Eo *obj, Elm_Naviframe_Item_Data *pd, Eina_Bool enable, Eina_Bool transition);
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_item_title_enabled_set, EFL_FUNC_CALL(enable, transition), Eina_Bool enable, Eina_Bool transition);
+
+void _elm_naviframe_item_promote(Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+EOAPI EFL_VOID_FUNC_BODY(elm_obj_naviframe_item_promote);
+
+void _elm_naviframe_item_pop_cb_set(Eo *obj, Elm_Naviframe_Item_Data *pd, Elm_Naviframe_Item_Pop_Cb func, void *data);
+
+EOAPI EFL_VOID_FUNC_BODYV(elm_obj_naviframe_item_pop_cb_set, EFL_FUNC_CALL(func, data), Elm_Naviframe_Item_Pop_Cb func, void *data);
+
+Efl_Object *_elm_naviframe_item_efl_object_constructor(Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+
+void _elm_naviframe_item_efl_object_invalidate(Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+
+void _elm_naviframe_item_efl_object_destructor(Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+
+void _elm_naviframe_item_elm_widget_item_signal_emit(Eo *obj, Elm_Naviframe_Item_Data *pd, const char *emission, const char *source);
+
+
+void _elm_naviframe_item_elm_widget_item_part_text_set(Eo *obj, Elm_Naviframe_Item_Data *pd, const char *part, const char *label);
+
+
+const char *_elm_naviframe_item_elm_widget_item_part_text_get(const Eo *obj, Elm_Naviframe_Item_Data *pd, const char *part);
+
+
+void _elm_naviframe_item_elm_widget_item_part_content_set(Eo *obj, Elm_Naviframe_Item_Data *pd, const char *part, Efl_Canvas_Object *content);
+
+
+Efl_Canvas_Object *_elm_naviframe_item_elm_widget_item_part_content_get(const Eo *obj, Elm_Naviframe_Item_Data *pd, const char *part);
+
+
+Efl_Canvas_Object *_elm_naviframe_item_elm_widget_item_part_content_unset(Eo *obj, Elm_Naviframe_Item_Data *pd, const char *part);
+
+
+void _elm_naviframe_item_elm_widget_item_style_set(Eo *obj, Elm_Naviframe_Item_Data *pd, const char *style);
+
+
+Eina_List *_elm_naviframe_item_efl_access_object_access_children_get(const Eo *obj, Elm_Naviframe_Item_Data *pd);
+
+
+static Eina_Bool
+_elm_naviframe_item_class_initializer(Efl_Class *klass)
+{
+ const Efl_Object_Ops *opsp = NULL;
+
+ const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
+
+#ifndef ELM_NAVIFRAME_ITEM_EXTRA_OPS
+#define ELM_NAVIFRAME_ITEM_EXTRA_OPS
+#endif
+
+ EFL_OPS_DEFINE(ops,
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_pop_to, _elm_naviframe_item_pop_to),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_title_enabled_get, _elm_naviframe_item_title_enabled_get),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_title_enabled_set, _elm_naviframe_item_title_enabled_set),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_promote, _elm_naviframe_item_promote),
+ EFL_OBJECT_OP_FUNC(elm_obj_naviframe_item_pop_cb_set, _elm_naviframe_item_pop_cb_set),
+ EFL_OBJECT_OP_FUNC(efl_constructor, _elm_naviframe_item_efl_object_constructor),
+ EFL_OBJECT_OP_FUNC(efl_invalidate, _elm_naviframe_item_efl_object_invalidate),
+ EFL_OBJECT_OP_FUNC(efl_destructor, _elm_naviframe_item_efl_object_destructor),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_signal_emit, _elm_naviframe_item_elm_widget_item_signal_emit),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_set, _elm_naviframe_item_elm_widget_item_part_text_set),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_get, _elm_naviframe_item_elm_widget_item_part_text_get),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_set, _elm_naviframe_item_elm_widget_item_part_content_set),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_get, _elm_naviframe_item_elm_widget_item_part_content_get),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_unset, _elm_naviframe_item_elm_widget_item_part_content_unset),
+ EFL_OBJECT_OP_FUNC(elm_wdg_item_style_set, _elm_naviframe_item_elm_widget_item_style_set),
+ EFL_OBJECT_OP_FUNC(efl_access_object_access_children_get, _elm_naviframe_item_efl_access_object_access_children_get),
+ ELM_NAVIFRAME_ITEM_EXTRA_OPS
+ );
+ opsp = &ops;
+
+ return efl_class_functions_set(klass, opsp, ropsp);
+}
+
+static const Efl_Class_Description _elm_naviframe_item_class_desc = {
+ EO_VERSION,
+ "Elm.Naviframe.Item",
+ EFL_CLASS_TYPE_REGULAR,
+ sizeof(Elm_Naviframe_Item_Data),
+ _elm_naviframe_item_class_initializer,
+ NULL,
+ NULL
+};
+
+EFL_DEFINE_CLASS(elm_naviframe_item_class_get, &_elm_naviframe_item_class_desc, ELM_WIDGET_ITEM_CLASS, EFL_UI_LEGACY_INTERFACE, NULL);
+
+#include "elm_naviframe_item_eo.legacy.c"
--- /dev/null
+#ifndef _ELM_NAVIFRAME_ITEM_EO_H_
+#define _ELM_NAVIFRAME_ITEM_EO_H_
+
+#ifndef _ELM_NAVIFRAME_ITEM_EO_CLASS_TYPE
+#define _ELM_NAVIFRAME_ITEM_EO_CLASS_TYPE
+
+typedef Eo Elm_Naviframe_Item;
+
+#endif
+
+#ifndef _ELM_NAVIFRAME_ITEM_EO_TYPES
+#define _ELM_NAVIFRAME_ITEM_EO_TYPES
+
+
+#endif
+/** Elementary naviframe item class
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+#define ELM_NAVIFRAME_ITEM_CLASS elm_naviframe_item_class_get()
+
+EWAPI const Efl_Class *elm_naviframe_item_class_get(void);
+
+/**
+ * @brief Pop the top item and delete the items between the top and the above
+ * one on the given item.
+ *
+ * The items between the top and the given item will be deleted first, and then
+ * the top item will be popped at last.
+ *
+ * @warning The pop callback function set by elm_naviframe_item_pop_cb_set is
+ * not called for items between the top item and the destination item since
+ * those items are deleted without being popped.
+ * @param[in] obj The object.
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+EOAPI void elm_obj_naviframe_item_pop_to(Eo *obj);
+
+/**
+ * @brief Get a value whether title area is enabled or not.
+ *
+ * @param[in] obj The object.
+ *
+ * @return If @c true, title area will be enabled, disabled otherwise
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+EOAPI Eina_Bool elm_obj_naviframe_item_title_enabled_get(const Eo *obj);
+
+/**
+ * @brief Enable/Disable the title area with transition effect
+ *
+ * When the title area is disabled, then the controls would be hidden so as to
+ * expand the content area to full-size.
+ *
+ * @param[in] obj The object.
+ * @param[in] enable If @c true, title area will be enabled, disabled otherwise
+ * @param[in] transition If @c true, transition effect of the title will be
+ * visible, invisible otherwise
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+EOAPI void elm_obj_naviframe_item_title_enabled_set(Eo *obj, Eina_Bool enable, Eina_Bool transition);
+
+/**
+ * @brief Promote an item already in the naviframe stack to the top of the
+ * stack.
+ *
+ * This will take the indicated item and promote it to the top of the stack as
+ * if it had been pushed there. The item must already be inside the naviframe
+ * stack to work.
+ * @param[in] obj The object.
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+EOAPI void elm_obj_naviframe_item_promote(Eo *obj);
+
+/**
+ * @brief Set a function to be called when an item of the naviframe is going to
+ * be popped.
+ *
+ * @warning Don't set "clicked" callback to the prev button additionally if the
+ * function does an exact same logic with this @c func. When hardware back key
+ * is pressed then both callbacks will be called. Warning: The pop callback
+ * function is called only if the item is popped. Therefore, the pop callback
+ * function is not called if the item is deleted without being popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function.
+ * @param[in] data Data to be passed to func call.
+ *
+ * @since 1.8
+ *
+ * @ingroup Elm_Naviframe_Item
+ */
+EOAPI void elm_obj_naviframe_item_pop_cb_set(Eo *obj, Elm_Naviframe_Item_Pop_Cb func, void *data);
+
+#endif
--- /dev/null
+
+EAPI void
+elm_naviframe_item_pop_to(Elm_Naviframe_Item *obj)
+{
+ elm_obj_naviframe_item_pop_to(obj);
+}
+
+EAPI Eina_Bool
+elm_naviframe_item_title_enabled_get(const Elm_Naviframe_Item *obj)
+{
+ return elm_obj_naviframe_item_title_enabled_get(obj);
+}
+
+EAPI void
+elm_naviframe_item_title_enabled_set(Elm_Naviframe_Item *obj, Eina_Bool enable, Eina_Bool transition)
+{
+ elm_obj_naviframe_item_title_enabled_set(obj, enable, transition);
+}
+
+EAPI void
+elm_naviframe_item_promote(Elm_Naviframe_Item *obj)
+{
+ elm_obj_naviframe_item_promote(obj);
+}
+
+EAPI void
+elm_naviframe_item_pop_cb_set(Elm_Naviframe_Item *obj, Elm_Naviframe_Item_Pop_Cb func, void *data)
+{
+ elm_obj_naviframe_item_pop_cb_set(obj, func, data);
+}
--- /dev/null
+#ifndef _ELM_NAVIFRAME_ITEM_EO_LEGACY_H_
+#define _ELM_NAVIFRAME_ITEM_EO_LEGACY_H_
+
+#ifndef _ELM_NAVIFRAME_ITEM_EO_CLASS_TYPE
+#define _ELM_NAVIFRAME_ITEM_EO_CLASS_TYPE
+
+typedef Eo Elm_Naviframe_Item;
+
+#endif
+
+#ifndef _ELM_NAVIFRAME_ITEM_EO_TYPES
+#define _ELM_NAVIFRAME_ITEM_EO_TYPES
+
+
+#endif
+
+/**
+ * @brief Pop the top item and delete the items between the top and the above
+ * one on the given item.
+ *
+ * The items between the top and the given item will be deleted first, and then
+ * the top item will be popped at last.
+ *
+ * @warning The pop callback function set by elm_naviframe_item_pop_cb_set is
+ * not called for items between the top item and the destination item since
+ * those items are deleted without being popped.
+ * @param[in] obj The object.
+ *
+ * @ingroup Elm_Naviframe_Item_Group
+ */
+EAPI void elm_naviframe_item_pop_to(Elm_Naviframe_Item *obj);
+
+/**
+ * @brief Get a value whether title area is enabled or not.
+ *
+ * @param[in] obj The object.
+ *
+ * @return If @c true, title area will be enabled, disabled otherwise
+ *
+ * @ingroup Elm_Naviframe_Item_Group
+ */
+EAPI Eina_Bool elm_naviframe_item_title_enabled_get(const Elm_Naviframe_Item *obj);
+
+/**
+ * @brief Enable/Disable the title area with transition effect
+ *
+ * When the title area is disabled, then the controls would be hidden so as to
+ * expand the content area to full-size.
+ *
+ * @param[in] obj The object.
+ * @param[in] enable If @c true, title area will be enabled, disabled otherwise
+ * @param[in] transition If @c true, transition effect of the title will be
+ * visible, invisible otherwise
+ *
+ * @ingroup Elm_Naviframe_Item_Group
+ */
+EAPI void elm_naviframe_item_title_enabled_set(Elm_Naviframe_Item *obj, Eina_Bool enable, Eina_Bool transition);
+
+/**
+ * @brief Promote an item already in the naviframe stack to the top of the
+ * stack.
+ *
+ * This will take the indicated item and promote it to the top of the stack as
+ * if it had been pushed there. The item must already be inside the naviframe
+ * stack to work.
+ * @param[in] obj The object.
+ *
+ * @ingroup Elm_Naviframe_Item_Group
+ */
+EAPI void elm_naviframe_item_promote(Elm_Naviframe_Item *obj);
+
+/**
+ * @brief Set a function to be called when an item of the naviframe is going to
+ * be popped.
+ *
+ * @warning Don't set "clicked" callback to the prev button additionally if the
+ * function does an exact same logic with this @c func. When hardware back key
+ * is pressed then both callbacks will be called. Warning: The pop callback
+ * function is called only if the item is popped. Therefore, the pop callback
+ * function is not called if the item is deleted without being popped.
+ *
+ * @param[in] obj The object.
+ * @param[in] func The callback function.
+ * @param[in] data Data to be passed to func call.
+ *
+ * @since 1.8
+ *
+ * @ingroup Elm_Naviframe_Item_Group
+ */
+EAPI void elm_naviframe_item_pop_cb_set(Elm_Naviframe_Item *obj, Elm_Naviframe_Item_Pop_Cb func, void *data);
+
+#endif
'elm_actionslider_part.eo',
'elm_bubble_part.eo',
'elm_fileselector_part.eo',
- 'elm_naviframe.eo',
- 'elm_naviframe_item.eo',
'elm_photo.eo',
'elm_prefs.eo',
'elm_segment_control.eo',
'elm_multibuttonentry_eo.legacy.h',
'elm_multibuttonentry_item_eo.h',
'elm_multibuttonentry_item_eo.legacy.h',
+ 'elm_naviframe_eo.h',
+ 'elm_naviframe_eo.legacy.h',
+ 'elm_naviframe_item_eo.h',
+ 'elm_naviframe_item_eo.legacy.h',
]
elementary_header_src = [