[elm] Naviframe now ported.

Man, this one was tough (though there are toughers). Please help me
test it in the real, wild, world.



SVN revision: 71635
This commit is contained in:
Gustavo Lima Chaves 2012-06-01 21:56:09 +00:00
parent c08f0989ce
commit 83d85fe5bd
4 changed files with 911 additions and 1073 deletions

View File

@ -3002,7 +3002,6 @@ _status_config_full(Evas_Object *win,
evas_object_show(tb);
naviframe = elm_naviframe_add(win);
elm_naviframe_event_enabled_set(naviframe, EINA_TRUE);
evas_object_size_hint_align_set(naviframe, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(naviframe, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_data_set(win, "naviframe", naviframe);

View File

@ -235,7 +235,6 @@ test_naviframe(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
elm_win_autodel_set(win, EINA_TRUE);
nf = elm_naviframe_add(win);
elm_naviframe_event_enabled_set(nf, EINA_TRUE);
evas_object_size_hint_weight_set(nf, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_win_resize_object_add(win, nf);
evas_object_show(nf);

File diff suppressed because it is too large Load Diff

View File

@ -2,61 +2,72 @@
* @defgroup Naviframe Naviframe
* @ingroup Elementary
*
* @brief Naviframe is a kind of view manager for the applications.
* @brief Naviframe stands for navigation frame. It's a views manager
* for applications.
*
* Naviframe provides functions to switch different pages with stack
* mechanism. It means if one page(item) needs to be changed to the new one,
* then naviframe would push the new page to its internal stack. Of course,
* it can be back to the previous page by popping the top page. Naviframe
* provides some transition effect while the pages are switching (same as
* pager).
* 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. The
* transition between views is animated, depending on the theme
* applied to the widget.
*
* Since each item could keep the different styles, users could keep the
* same look & feel for the pages or different styles for the items in it's
* application.
* 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.
*
* Default content parts of the naviframe that you can use content hooks for
* are:
* @li "default" - The main content of the current page
* @li "icon" - An icon in the title area of the current page
* @li "prev_btn" - A button of the current page to go to the previous page
* @li "next_btn" - A button of the current page to go to the next page
* This widget inherits from the @ref Layout one, so that all the
* functions acting on it also work for naviframe objects.
*
* Default text parts of the naviframe that you can use for are:
* @li "default" - Title label in the title area of the current page
* @li "subtitle" - Sub-title label in the title area of the current page
* Becase this widget is a layout, one places content on those areas
* by using elm_layout_content_set() on the right swallow part names
* expected for each, which are:
* @li @c "default" - The main content of the current page
* @li @c "icon" - An icon in the title area of the current page
* @li @c "prev_btn" - A button of the current page to go to the
* previous page
* @li @c "next_btn" - A button of the current page to go to the next
* page
*
* Signals that you can add callbacks for are:
* @li "transition,finished" - When the transition is finished in changing the
* item
* @li "title,clicked" - User clicked title area
* For text, elm_layout_text_set() will work here on:
* @li @c "default" - Title label in the title area of the current
* page
* @li @c "subtitle" - Sub-title label in the title area of the
* current page
*
* Default content parts of the naviframe items that you can use content hooks
* for are:
* @li "default" - The main content of the page
* @li "icon" - An icon in the title area
* @li "prev_btn" - A button to go to the previous page
* @li "next_btn" - A button to go to the next page
* Most of those content objects can be passed at the time of an item
* creation (see elm_naviframe_item_push()).
*
* Default text parts of the naviframe items that you can use for are:
* @li "default" - Title label in the title area
* @li "subtitle" - Sub-title label in the title area
* Naviframe items can have different styles, which affect the
* transition between views, for example. On the default theme, two of
* them are supported:
* - @c "default" - views are switched sliding horizontally, one after
* the other
* - @c "overlap" - like the previous one, but the previous view stays
* at its place and is ovelapped by the new
*
* Supported elm_object common APIs.
* @li @ref elm_object_signal_emit
* @li @ref elm_object_part_text_set
* @li @ref elm_object_part_text_get
* @li @ref elm_object_part_content_set
* @li @ref elm_object_part_content_get
* @li @ref elm_object_part_content_unset
*
* Supported elm_object_item common APIs.
* This widget emits the following signals, besides the ones sent from
* @ref Layout:
* @li @c "transition,finished" - When the transition is finished in
* changing the item
* @li @c "title,clicked" - User clicked title area
*
* All the parts, for content and text, described here will also be
* reachable by naviframe @b items direct calls:
* @li @ref elm_object_item_part_text_set
* @li @ref elm_object_item_part_text_get
* @li @ref elm_object_item_part_content_set
* @li @ref elm_object_item_part_content_get
* @li @ref elm_object_item_part_content_unset
* @li @ref 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.
*/
/**