- Elementary
- Main
- Authors
- Examples
- Files
- Pages
- Types
- Modules

Functions
Naviframe

Naviframe stands for navigation frame. It's a views manager for applications. More...

## Functions
Evas_Object * | elm_naviframe_add (Evas_Object *parent)
| Add a new Naviframe object to the parent. More...
void | elm_naviframe_item_pop_to (Elm_Object_Item *it)
| Pop the items between the top and the above one on the given item. More...
void | elm_naviframe_item_style_set (Elm_Object_Item *it, const char *item_style)
| Set an item style. More...
const char * | elm_naviframe_item_style_get (const Elm_Object_Item *it)
| Get an item style. More...
void | elm_naviframe_item_title_visible_set (Elm_Object_Item *it, Eina_Bool visible)
| Show/Hide the title area. More...
Eina_Bool | elm_naviframe_item_title_visible_get (const Elm_Object_Item *it)
| Get a value whether title area is visible or not. More...
void | elm_naviframe_item_pop_cb_set (Elm_Object_Item *it, Elm_Naviframe_Item_Pop_Cb func, void *data)
| Set a function to be called when `it` of the naviframe is going to be popped. More...
Elm_Object_Item * | elm_naviframe_item_push (Evas_Object *obj, const char *title_label, Evas_Object *prev_btn, Evas_Object *next_btn, Evas_Object *content, const char *item_style)
| Push a new item to the top of the naviframe stack (and show it). More...
Elm_Object_Item * | elm_naviframe_item_insert_before (Evas_Object *obj, Elm_Object_Item *before, const char *title_label, Evas_Object *prev_btn, Evas_Object *next_btn, Evas_Object *content, const char *item_style)
| Insert a new item into the naviframe before item `before`. More...
Elm_Object_Item * | elm_naviframe_item_insert_after (Evas_Object *obj, Elm_Object_Item *after, const char *title_label, Evas_Object *prev_btn, Evas_Object *next_btn, Evas_Object *content, const char *item_style)
| Insert a new item into the naviframe after item `after`. More...
Evas_Object * | elm_naviframe_item_pop (Evas_Object *obj)
| Pop an item that is on top of the stack. More...
void | elm_naviframe_content_preserve_on_pop_set (Evas_Object *obj, Eina_Bool preserve)
| preserve the content objects when items are popped. More...
Eina_Bool | elm_naviframe_content_preserve_on_pop_get (const Evas_Object *obj)
| Get a value whether preserve mode is enabled or not. More...
Elm_Object_Item * | elm_naviframe_top_item_get (const Evas_Object *obj)
| Get a top item on the naviframe stack. More...
Elm_Object_Item * | elm_naviframe_bottom_item_get (const Evas_Object *obj)
| Get a bottom item on the naviframe stack. More...
void | elm_naviframe_prev_btn_auto_pushed_set (Evas_Object *obj, Eina_Bool auto_pushed)
| Set creating prev button automatically or not. More...
Eina_Bool | elm_naviframe_prev_btn_auto_pushed_get (const Evas_Object *obj)
| Get a value whether prev button(back button) will be auto pushed or not. More...
Eina_List * | elm_naviframe_items_get (const Evas_Object *obj)
| Get a list of all the naviframe items. More...
void | elm_naviframe_event_enabled_set (Evas_Object *obj, Eina_Bool enabled)
| Set the event enabled when pushing/popping items. More...
Eina_Bool | elm_naviframe_event_enabled_get (const Evas_Object *obj)
| Get the value of event enabled status. More...
#define | elm_obj_naviframe_item_push(title_label, prev_btn, next_btn, content, item_style, ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_PUSH), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)
| Push a new item to the top of the naviframe stack (and show it). More...
#define | elm_obj_naviframe_item_insert_before(before, title_label, prev_btn, next_btn, content, item_style, ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_INSERT_BEFORE), EO_TYPECHECK(Elm_Object_Item *, before), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)
| Insert a new item into the naviframe before item before. More...
#define | elm_obj_naviframe_item_insert_after(after, title_label, prev_btn, next_btn, content, item_style, ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_INSERT_AFTER), EO_TYPECHECK(Elm_Object_Item *, after), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)
| Insert a new item into the naviframe after item after. More...
#define | elm_obj_naviframe_item_pop(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_POP), EO_TYPECHECK(Evas_Object **, ret)
| Pop an item that is on top of the stack. More...
#define | elm_obj_naviframe_item_simple_promote(content) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_SIMPLE_PROMOTE), EO_TYPECHECK(Evas_Object *, content)
| Simple version of item_promote. More...
#define | elm_obj_naviframe_content_preserve_on_pop_set(preserve) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_CONTENT_PRESERVE_ON_POP_SET), EO_TYPECHECK(Eina_Bool, preserve)
| preserve the content objects when items are popped. More...
#define | elm_obj_naviframe_content_preserve_on_pop_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_CONTENT_PRESERVE_ON_POP_GET), EO_TYPECHECK(Eina_Bool *, ret)
| Get a value whether preserve mode is enabled or not. More...
#define | elm_obj_naviframe_top_item_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_TOP_ITEM_GET), EO_TYPECHECK(Elm_Object_Item **, ret)
| Get a top item on the naviframe stack. More...
#define | elm_obj_naviframe_bottom_item_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_BOTTOM_ITEM_GET), EO_TYPECHECK(Elm_Object_Item **, ret)
| Get a bottom item on the naviframe stack. More...
#define | elm_obj_naviframe_prev_btn_auto_pushed_set(auto_pushed) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_PREV_BTN_AUTO_PUSHED_SET), EO_TYPECHECK(Eina_Bool, auto_pushed)
| Set creating prev button automatically or not. More...
#define | elm_obj_naviframe_prev_btn_auto_pushed_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_PREV_BTN_AUTO_PUSHED_GET), EO_TYPECHECK(Eina_Bool *, ret)
| Get a value whether prev button(back button) will be auto pushed or. More...
#define | elm_obj_naviframe_items_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEMS_GET), EO_TYPECHECK(Eina_List **, ret)
| Get a list of all the naviframe items. More...
#define | elm_obj_naviframe_event_enabled_set(enabled) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_EVENT_ENABLED_SET), EO_TYPECHECK(Eina_Bool, enabled)
| Set the event enabled when pushing/popping items. More...
#define | elm_obj_naviframe_event_enabled_get(ret) ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_EVENT_ENABLED_GET), EO_TYPECHECK(Eina_Bool *, ret)
| Get the value of event enabled status. More...

## Detailed Description

Naviframe stands for navigation frame. It's a views manager for applications.

A naviframe holds views (or pages) as its items. Those items are organized in a stack, so that new items get pushed on top of the old, and only the topmost view is displayed at one time. Due to the characteristics of a stack, even though you push a new item, previous item is not deleted. Previous item will be shown when you pop new item. The transition between views is animated, depending on the theme applied to the widget.

Naviframe views hold spaces to various elements, which are:

- back button, used to navigate to previous views,
- next button, used to navigate to next views in the stack,
- title label,
- sub-title label,
- title icon and
- content area.

One can use elm_object_item_part_content_set, elm_object_item_part_content_get, elm_object_item_part_content_unset functions to handle the contents. The swallow part name should be one of these:

- `"default"` - The main content of the current page
- `"icon"` - An icon in the title area of the current page
- `"prev_btn"` - A button of the current page to go to the previous page
- `"next_btn"` - A button of the current page to go to the next page

One can use elm_object_item_part_text_set, elm_object_item_part_text_get to handle the text parts. The swallow part name should be one of these:

- `"default"` - Title label in the title area of the current page
- `"subtitle"` - Sub-title label in the title area of the current page

Most of those content objects can be passed at the time of an item creation (see elm_naviframe_item_push()).

Naviframe items can have different styles, which affect the transition between views, for example. On the default theme, two of them are supported:

- `"basic"` - views are switched sliding horizontally, one after the other
- `"overlap"` - like the previous one, but the previous view stays at its place and is overlapped by the new

This widget emits the following signals, besides the ones sent from Layout:

- `"transition,finished"` - When the transition is finished in changing the item
- `"title,clicked"` - User clicked title area
- `"focused"` - When the naviframe has received focus. (since 1.8)
- `"unfocused"` - When the naviframe has lost focus. (since 1.8)

All the parts, for content and text, described here will also be reachable by naviframe items direct calls:

- elm_object_item_del
- elm_object_item_part_text_set
- elm_object_item_part_text_get
- elm_object_item_part_content_set
- elm_object_item_part_content_get
- elm_object_item_part_content_unset
- elm_object_item_signal_emit

What happens is that the topmost item of a naviframe will be the widget's target layout, when accessed directly. Items lying below the top one can be interacted with this way.

Here is an example on its usage:

- naviframe_example

## Macro Definition Documentation

#define elm_obj_naviframe_bottom_item_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_BOTTOM_ITEM_GET), EO_TYPECHECK(Elm_Object_Item **, ret)

Get a bottom item on the naviframe stack.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_bottom_item_get

Referenced by elm_naviframe_bottom_item_get().

#define elm_obj_naviframe_content_preserve_on_pop_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_CONTENT_PRESERVE_ON_POP_GET), EO_TYPECHECK(Eina_Bool *, ret)

Get a value whether preserve mode is enabled or not.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_content_preserve_on_pop_get

Referenced by elm_naviframe_content_preserve_on_pop_get().

#define elm_obj_naviframe_content_preserve_on_pop_set | ( |  | preserve | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_CONTENT_PRESERVE_ON_POP_SET), EO_TYPECHECK(Eina_Bool, preserve)

preserve the content objects when items are popped.

Since
  1.8

Parameters

  [in] | preserve |

See Also
  elm_naviframe_content_preserve_on_pop_set

Referenced by elm_naviframe_content_preserve_on_pop_set().

#define elm_obj_naviframe_event_enabled_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_EVENT_ENABLED_GET), EO_TYPECHECK(Eina_Bool *, ret)

Get the value of event enabled status.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_event_enabled_get

Referenced by elm_naviframe_event_enabled_get().

#define elm_obj_naviframe_event_enabled_set | ( |  | enabled | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_EVENT_ENABLED_SET), EO_TYPECHECK(Eina_Bool, enabled)

Set the event enabled when pushing/popping items.

Since
  1.8

Parameters

  [in] | enabled |

See Also
  elm_naviframe_event_enabled_set

Referenced by elm_naviframe_event_enabled_set().

#define elm_obj_naviframe_item_insert_after | ( |  | after,
|  |  | title_label,
|  |  | prev_btn,
|  |  | next_btn,
|  |  | content,
|  |  | item_style,
|  |  | ret
| ) |  | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_INSERT_AFTER), EO_TYPECHECK(Elm_Object_Item *, after), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)

Insert a new item into the naviframe after item after.

Since
  1.8

Parameters

  [in] | after |
  [in] | title_label |
  [in] | prev_btn |
  [in] | next_btn |
  [in] | content |
  [in] | item_style |
  [out] | ret |

See Also
  elm_naviframe_item_insert_after

Referenced by elm_naviframe_item_insert_after().

#define elm_obj_naviframe_item_insert_before | ( |  | before,
|  |  | title_label,
|  |  | prev_btn,
|  |  | next_btn,
|  |  | content,
|  |  | item_style,
|  |  | ret
| ) |  | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_INSERT_BEFORE), EO_TYPECHECK(Elm_Object_Item *, before), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)

Insert a new item into the naviframe before item before.

Since
  1.8

Parameters

  [in] | before |
  [in] | title_label |
  [in] | prev_btn |
  [in] | next_btn |
  [in] | content |
  [in] | item_style |
  [out] | ret |

See Also
  elm_naviframe_item_insert_before

Referenced by elm_naviframe_item_insert_before().

#define elm_obj_naviframe_item_pop | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_POP), EO_TYPECHECK(Evas_Object **, ret)

Pop an item that is on top of the stack.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_item_pop

Referenced by elm_naviframe_item_pop().

#define elm_obj_naviframe_item_push | ( |  | title_label,
|  |  | prev_btn,
|  |  | next_btn,
|  |  | content,
|  |  | item_style,
|  |  | ret
| ) |  | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_PUSH), EO_TYPECHECK(const char *, title_label), EO_TYPECHECK(Evas_Object *, prev_btn), EO_TYPECHECK(Evas_Object *, next_btn), EO_TYPECHECK(Evas_Object *, content), EO_TYPECHECK(const char *, item_style), EO_TYPECHECK(Elm_Object_Item **, ret)

Push a new item to the top of the naviframe stack (and show it).

Since
  1.8

Parameters

  [in] | title_label |
  [in] | prev_btn |
  [in] | next_btn |
  [in] | content |
  [in] | item_style |
  [out] | ret |

See Also
  elm_naviframe_item_push

Referenced by elm_naviframe_item_push().

#define elm_obj_naviframe_item_simple_promote | ( |  | content | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEM_SIMPLE_PROMOTE), EO_TYPECHECK(Evas_Object *, content)

Simple version of item_promote.

Since
  1.8

Parameters

  [in] | content |

See Also
  elm_naviframe_item_simple_promote

#define elm_obj_naviframe_items_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_ITEMS_GET), EO_TYPECHECK(Eina_List **, ret)

Get a list of all the naviframe items.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_items_get

Referenced by elm_naviframe_items_get().

#define elm_obj_naviframe_prev_btn_auto_pushed_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_PREV_BTN_AUTO_PUSHED_GET), EO_TYPECHECK(Eina_Bool *, ret)

Get a value whether prev button(back button) will be auto pushed or.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_prev_btn_auto_pushed_get

Referenced by elm_naviframe_prev_btn_auto_pushed_get().

#define elm_obj_naviframe_prev_btn_auto_pushed_set | ( |  | auto_pushed | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_PREV_BTN_AUTO_PUSHED_SET), EO_TYPECHECK(Eina_Bool, auto_pushed)

Set creating prev button automatically or not.

Since
  1.8

Parameters

  [in] | auto_pushed |

See Also
  elm_naviframe_prev_btn_auto_pushed_set

Referenced by elm_naviframe_prev_btn_auto_pushed_set().

#define elm_obj_naviframe_top_item_get | ( |  | ret | ) | ELM_OBJ_NAVIFRAME_ID(ELM_OBJ_NAVIFRAME_SUB_ID_TOP_ITEM_GET), EO_TYPECHECK(Elm_Object_Item **, ret)

Get a top item on the naviframe stack.

Since
  1.8

Parameters

  [out] | ret |

See Also
  elm_naviframe_top_item_get

Referenced by elm_naviframe_top_item_get().

## Function Documentation

Evas_Object* elm_naviframe_add | ( | Evas_Object * | parent | ) |

Add a new Naviframe object to the parent.

Parameters

  parent | Parent object

Returns
  New object or `NULL`, if it cannot be created

Elm_Object_Item* elm_naviframe_bottom_item_get | ( | const Evas_Object * | obj | ) |

Get a bottom item on the naviframe stack.

Parameters

  obj | The naviframe object

Returns
  The bottom item on the naviframe stack or `NULL`, if the stack is empty

References elm_obj_naviframe_bottom_item_get.

Eina_Bool elm_naviframe_content_preserve_on_pop_get | ( | const Evas_Object * | obj | ) |

Get a value whether preserve mode is enabled or not.

Parameters

  obj | The naviframe object

Returns
  If `EINA_TRUE`, preserve mode is enabled

See Also
  also elm_naviframe_content_preserve_on_pop_set()

References elm_obj_naviframe_content_preserve_on_pop_get.

void elm_naviframe_content_preserve_on_pop_set | ( | Evas_Object * | obj,
|  | Eina_Bool | preserve
| ) |  |

preserve the content objects when items are popped.

Parameters

  obj | The naviframe object
  preserve | Enable the preserve mode if EINA_TRUE, disable otherwise

See Also
  also elm_naviframe_content_preserve_on_pop_get()

References elm_obj_naviframe_content_preserve_on_pop_set.

Eina_Bool elm_naviframe_event_enabled_get | ( | const Evas_Object * | obj | ) |

Get the value of event enabled status.

Parameters

  obj | The naviframe object

Returns
  EINA_TRUE, when event is enabled

See Also
  elm_naviframe_event_enabled_set()

References elm_obj_naviframe_event_enabled_get.

void elm_naviframe_event_enabled_set | ( | Evas_Object * | obj,
|  | Eina_Bool | enabled
| ) |  |

Set the event enabled when pushing/popping items.

If `enabled` is EINA_TRUE, the contents of the naviframe item will receives events from mouse and keyboard during view changing such as item push/pop.

Parameters

  obj | The naviframe object
  enabled | Events are received when enabled is `EINA_TRUE`, and ignored otherwise.

Warning
  Events will be blocked by calling evas_object_freeze_events_set() internally. So don't call the API whiling pushing/popping items.

See Also
  elm_naviframe_event_enabled_get()
  evas_object_freeze_events_set()

References elm_obj_naviframe_event_enabled_set.

Elm_Object_Item* elm_naviframe_item_insert_after | ( | Evas_Object * | obj,
|  | Elm_Object_Item * | after,
|  | const char * | title_label,
|  | Evas_Object * | prev_btn,
|  | Evas_Object * | next_btn,
|  | Evas_Object * | content,
|  | const char * | item_style
| ) |  |

Insert a new item into the naviframe after item `after`.

Parameters

  obj | The naviframe object
  after | The naviframe item to insert after.
  title_label | The label in the title area. The name of the title label part is "elm.text.title"
  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"
  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"
  content | The main content object. The name of content part is "elm.swallow.content"
  item_style | The current item style name. `NULL` would be default.

Returns
  The created item or `NULL` upon failure.

The item is inserted into the naviframe straight away without any transition operations. This item will be deleted when it is popped.

See Also
  also elm_naviframe_item_style_set()
  also elm_naviframe_item_push()
  also elm_naviframe_item_insert_before()

The following styles are available for this item:

- `"default"`

References elm_obj_naviframe_item_insert_after.

Elm_Object_Item* elm_naviframe_item_insert_before | ( | Evas_Object * | obj,
|  | Elm_Object_Item * | before,
|  | const char * | title_label,
|  | Evas_Object * | prev_btn,
|  | Evas_Object * | next_btn,
|  | Evas_Object * | content,
|  | const char * | item_style
| ) |  |

Insert a new item into the naviframe before item `before`.

Parameters

  obj | The naviframe object
  before | The naviframe item to insert before.
  title_label | The label in the title area. The name of the title label part is "elm.text.title"
  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"
  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"
  content | The main content object. The name of content part is "elm.swallow.content"
  item_style | The current item style name. `NULL` would be default.

Returns
  The created item or `NULL` upon failure.

The item is inserted into the naviframe straight away without any transition operations. This item will be deleted when it is popped.

See Also
  also elm_naviframe_item_style_set()
  also elm_naviframe_item_push()
  also elm_naviframe_item_insert_after()

The following styles are available for this item:

- `"default"`

References elm_obj_naviframe_item_insert_before.

Evas_Object* elm_naviframe_item_pop | ( | Evas_Object * | obj | ) |

Pop an item that is on top of the stack.

Parameters

  obj | The naviframe object

Returns
  `NULL` or the content object(if the elm_naviframe_content_preserve_on_pop_get is true).

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.

See Also
  also elm_naviframe_content_preserve_on_pop_get()
  also elm_naviframe_item_pop_cb_set()

References elm_obj_naviframe_item_pop.

Referenced by elm_naviframe_item_pop_to().

void elm_naviframe_item_pop_cb_set | ( | Elm_Object_Item * | it,
|  | Elm_Naviframe_Item_Pop_Cb | func,
|  | void * | data
| ) |  |

Set a function to be called when `it` of the naviframe is going to be popped.

Parameters

  it | The item to set the callback on
  func | the callback function.

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.

Since
  1.8

void elm_naviframe_item_pop_to | ( | Elm_Object_Item * | it | ) |

Pop 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.

Parameters

  it | The naviframe item

References elm_naviframe_item_pop(), and elm_naviframe_top_item_get().

Elm_Object_Item* elm_naviframe_item_push | ( | Evas_Object * | obj,
|  | const char * | title_label,
|  | Evas_Object * | prev_btn,
|  | Evas_Object * | next_btn,
|  | Evas_Object * | content,
|  | const char * | item_style
| ) |  |

Push a new item to the top of the naviframe stack (and show it).

Parameters

  obj | The naviframe object
  title_label | The label in the title area. The name of the title label part is "elm.text.title"
  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"
  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"
  content | The main content object. The name of content part is "elm.swallow.content"
  item_style | The current item style name. `NULL` would be default.

Returns
  The created item or `NULL` upon failure.

The item pushed becomes one page of the naviframe, this item will be deleted when it is popped.

See Also
  also elm_naviframe_item_style_set()
  also elm_naviframe_item_insert_before()
  also elm_naviframe_item_insert_after()

The following styles are available for this item:

- `"default"`

References elm_obj_naviframe_item_push.

const char* elm_naviframe_item_style_get | ( | const Elm_Object_Item * | it | ) |

Get an item style.

Parameters

  it | The naviframe item

Returns
  The current item style name

See Also
  also elm_naviframe_item_style_set()

void elm_naviframe_item_style_set | ( | Elm_Object_Item * | it,
|  | const char * | item_style
| ) |  |

Set an item style.

Parameters

  it | The naviframe item
  item_style | The current item style name. `NULL` would be default

The following styles are available for this item:

- `"default"`

See Also
  also elm_naviframe_item_style_get()

Eina_Bool elm_naviframe_item_title_visible_get | ( | const Elm_Object_Item * | it | ) |

Get a value whether title area is visible or not.

Parameters

  it | The naviframe item

Returns
  If `EINA_TRUE`, title area is visible

See Also
  also elm_naviframe_item_title_visible_set()

void elm_naviframe_item_title_visible_set | ( | Elm_Object_Item * | it,
|  | Eina_Bool | visible
| ) |  |

Show/Hide the title area.

Parameters

  it | The naviframe item
  visible | If `EINA_TRUE`, title area will be visible, hidden otherwise

When the title area is invisible, then the controls would be hidden so as * to expand the content area to full-size.

See Also
  also elm_naviframe_item_title_visible_get()

Eina_List* elm_naviframe_items_get | ( | const Evas_Object * | obj | ) |

Get a list of all the naviframe items.

Parameters

  obj | The naviframe object

Returns
  An Eina_List of naviframe items, Elm_Object_Item, or `NULL` on failure.

Note
  The returned list MUST be freed.

References elm_obj_naviframe_items_get.

Eina_Bool elm_naviframe_prev_btn_auto_pushed_get | ( | const Evas_Object * | obj | ) |

Get a value whether prev button(back button) will be auto pushed or not.

Parameters

  obj | The naviframe object

Returns
  If `EINA_TRUE`, prev button will be auto pushed.

See Also
  also elm_naviframe_item_push() elm_naviframe_prev_btn_auto_pushed_set()

References elm_obj_naviframe_prev_btn_auto_pushed_get.

void elm_naviframe_prev_btn_auto_pushed_set | ( | Evas_Object * | obj,
|  | Eina_Bool | auto_pushed
| ) |  |

Set creating prev button automatically or not.

Parameters

  obj | The naviframe object
  auto_pushed | If `EINA_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

See Also
  also elm_naviframe_item_push()

References elm_obj_naviframe_prev_btn_auto_pushed_set.

Elm_Object_Item* elm_naviframe_top_item_get | ( | const Evas_Object * | obj | ) |

Get a top item on the naviframe stack.

Parameters

  obj | The naviframe object

Returns
  The top item on the naviframe stack or `NULL`, if the stack is empty

References elm_obj_naviframe_top_item_get.

Referenced by elm_naviframe_item_pop_to().

Copyright ©2000-2014 Enlightenment.org - Samsung Electronics supports the EFL Documentation Project - Generated Wed Jan 8 2014 20:51:12