{NULL, NULL}
};
+static Evas_Object *_content_get_hook(const Evas_Object *obj,
+ const char *part);
static void _del_hook(Evas_Object *obj);
static void _theme_hook(Evas_Object *obj);
static void _emit_hook(Evas_Object *obj,
return btn;
}
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part)
+{
+ Widget_Data *wd;
+ Elm_Naviframe_Item *it;
+ ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+
+ if (part && strcmp(part, "default")) return NULL;
+ wd = elm_widget_data_get(obj);
+ if ((!wd) || (!wd->stack)) return NULL;
+ it = (Elm_Naviframe_Item *) (EINA_INLIST_CONTAINER_GET(wd->stack->last,
+ Elm_Naviframe_Item));
+ return it->content;
+}
+
static void
_title_content_del(void *data,
Evas *e __UNUSED__,
elm_widget_del_hook_set(obj, _del_hook);
elm_widget_disable_hook_set(obj, _disable_hook);
elm_widget_theme_hook_set(obj, _theme_hook);
+ elm_widget_content_get_hook_set(obj, _content_get_hook);
elm_widget_signal_emit_hook_set(obj, _emit_hook);
elm_widget_can_focus_set(obj, EINA_FALSE);
elm_widget_focus_next_hook_set(obj, _focus_next_hook);
* 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.
- *
+ *
+ * Default content parts of the naviframe that you can use content hooks for are:
+ * @li "default" - The main content of the current page
+ *
* Signals that you can add callback for are:
* @li "transition,finished" - When the transition is finished in changing
* the item
* @li "title,clicked" - User clicked title area
*
- * Default contents parts of the naviframe items that you can use for are:
- * @li "default" - A main content of the 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