forked from enlightenment/efl
elementary/elm_naviframe - modified to use elm_object_item common_apis
SVN revision: 62097
This commit is contained in:
parent
c2736b1e8b
commit
2b4f061b56
|
@ -54,8 +54,8 @@ _page4(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||||
bt,
|
bt,
|
||||||
bt2,
|
bt2,
|
||||||
NULL);
|
NULL);
|
||||||
elm_naviframe_item_subtitle_label_set(it, "Here is sub-title part!");
|
elm_object_item_text_part_set(it, "elm.text.subtitle", "Here is sub-title part!");
|
||||||
elm_naviframe_item_icon_set(it, ic);
|
elm_object_item_content_part_set(it, "elm.swallow.icon", ic);
|
||||||
elm_naviframe_item_title_visible_set(it, EINA_FALSE);
|
elm_naviframe_item_title_visible_set(it, EINA_FALSE);
|
||||||
evas_object_smart_callback_add(bt2, "clicked", _title_visible, it);
|
evas_object_smart_callback_add(bt2, "clicked", _title_visible, it);
|
||||||
}
|
}
|
||||||
|
@ -92,8 +92,8 @@ _page3(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||||
bt2,
|
bt2,
|
||||||
bt3,
|
bt3,
|
||||||
NULL);
|
NULL);
|
||||||
elm_naviframe_item_subtitle_label_set(it, "Here is sub-title part!");
|
elm_object_item_text_part_set(it, "elm.text.subtitle", "Here is sub-title part!");
|
||||||
elm_naviframe_item_icon_set(it, ic);
|
elm_object_item_content_part_set(it, "elm.swallow.icon", ic);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -123,7 +123,7 @@ _page2(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||||
bt,
|
bt,
|
||||||
bt2,
|
bt2,
|
||||||
NULL);
|
NULL);
|
||||||
elm_naviframe_item_subtitle_label_set(it, "Here is sub-title part!");
|
elm_object_item_text_part_set(it, "elm.text.subtitle", "Here is sub-title part!");
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -348,6 +348,7 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
typedef struct _Elm_Object_Item Elm_Object_Item;
|
typedef struct _Elm_Object_Item Elm_Object_Item;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called back when a widget's tooltip is activated and needs content.
|
* Called back when a widget's tooltip is activated and needs content.
|
||||||
* @param data user-data given to elm_object_tooltip_content_cb_set()
|
* @param data user-data given to elm_object_tooltip_content_cb_set()
|
||||||
|
@ -24149,8 +24150,6 @@ extern "C" {
|
||||||
EAPI Evas_Object *elm_naviframe_item_pop(Evas_Object *obj) EINA_ARG_NONNULL(1);
|
EAPI Evas_Object *elm_naviframe_item_pop(Evas_Object *obj) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_content_preserve_on_pop_set(Evas_Object *obj, Eina_Bool preserve) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_content_preserve_on_pop_set(Evas_Object *obj, Eina_Bool preserve) EINA_ARG_NONNULL(1);
|
||||||
EAPI Eina_Bool elm_naviframe_content_preserve_on_pop_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
|
EAPI Eina_Bool elm_naviframe_content_preserve_on_pop_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_item_content_set(Elm_Object_Item *item, Evas_Object *content) EINA_ARG_NONNULL(1);
|
|
||||||
EAPI Evas_Object *elm_naviframe_item_content_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
|
||||||
EAPI void elm_naviframe_item_title_label_set(Elm_Object_Item *it, const char *label) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_item_title_label_set(Elm_Object_Item *it, const char *label) EINA_ARG_NONNULL(1);
|
||||||
EAPI const char *elm_naviframe_item_title_label_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
EAPI const char *elm_naviframe_item_title_label_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_item_subtitle_label_set(Elm_Object_Item *it, const char *label) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_item_subtitle_label_set(Elm_Object_Item *it, const char *label) EINA_ARG_NONNULL(1);
|
||||||
|
@ -24159,8 +24158,6 @@ extern "C" {
|
||||||
EAPI Elm_Object_Item *elm_naviframe_bottom_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
|
EAPI Elm_Object_Item *elm_naviframe_bottom_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_item_button_set(Elm_Object_Item *it, Evas_Object *btn, Elm_Naviframe_Button_Type btn_type) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_item_button_set(Elm_Object_Item *it, Evas_Object *btn, Elm_Naviframe_Button_Type btn_type) EINA_ARG_NONNULL(1);
|
||||||
EAPI Evas_Object *elm_naviframe_item_button_get(const Elm_Object_Item *it, Elm_Naviframe_Button_Type btn_type) EINA_ARG_NONNULL(1);
|
EAPI Evas_Object *elm_naviframe_item_button_get(const Elm_Object_Item *it, Elm_Naviframe_Button_Type btn_type) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_item_icon_set(Elm_Object_Item *it, Evas_Object *icon) EINA_ARG_NONNULL(1);
|
|
||||||
EAPI Evas_Object *elm_naviframe_item_icon_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
|
||||||
EAPI void elm_naviframe_item_style_set(Elm_Object_Item *it, const char *item_style) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_item_style_set(Elm_Object_Item *it, const char *item_style) EINA_ARG_NONNULL(1);
|
||||||
EAPI const char *elm_naviframe_item_style_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
EAPI const char *elm_naviframe_item_style_get(const Elm_Object_Item *it) EINA_ARG_NONNULL(1);
|
||||||
EAPI void elm_naviframe_item_title_visible_set(Elm_Object_Item *it, Eina_Bool visible) EINA_ARG_NONNULL(1);
|
EAPI void elm_naviframe_item_title_visible_set(Elm_Object_Item *it, Eina_Bool visible) EINA_ARG_NONNULL(1);
|
||||||
|
|
|
@ -41,6 +41,18 @@ static const Evas_Smart_Cb_Description _signals[] = {
|
||||||
static void _del_hook(Evas_Object *obj);
|
static void _del_hook(Evas_Object *obj);
|
||||||
static void _theme_hook(Evas_Object *obj);
|
static void _theme_hook(Evas_Object *obj);
|
||||||
static void _disable_hook(Evas_Object *obj);
|
static void _disable_hook(Evas_Object *obj);
|
||||||
|
static void _text_set_hook(Elm_Object_Item *it,
|
||||||
|
const char *part,
|
||||||
|
const char *label);
|
||||||
|
static const char *_text_get_hook(const Elm_Object_Item *it,
|
||||||
|
const char *part);
|
||||||
|
static void _content_set_hook(Elm_Object_Item *it,
|
||||||
|
const char *part,
|
||||||
|
Evas_Object *content);
|
||||||
|
static Evas_Object *_content_get_hook(const Elm_Object_Item *it,
|
||||||
|
const char *part);
|
||||||
|
static Evas_Object *_content_unset_hook(Elm_Object_Item *it,
|
||||||
|
const char *part);
|
||||||
static void _sizing_eval(Evas_Object *obj);
|
static void _sizing_eval(Evas_Object *obj);
|
||||||
static void _item_sizing_eval(Elm_Naviframe_Item *it);
|
static void _item_sizing_eval(Elm_Naviframe_Item *it);
|
||||||
static void _move(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
static void _move(void *data, Evas *e, Evas_Object *obj, void *event_info);
|
||||||
|
@ -88,6 +100,15 @@ static void _show_finished(void *data,
|
||||||
Evas_Object *obj,
|
Evas_Object *obj,
|
||||||
const char *emission,
|
const char *emission,
|
||||||
const char *source);
|
const char *source);
|
||||||
|
static void _item_content_set(Elm_Naviframe_Item *navi_it,
|
||||||
|
Evas_Object *content);
|
||||||
|
static void _item_icon_set(Elm_Naviframe_Item *it, Evas_Object *icon);
|
||||||
|
static void _item_title_label_set(Elm_Naviframe_Item *navi_it,
|
||||||
|
const char *label);
|
||||||
|
static void _item_subtitle_label_set(Elm_Naviframe_Item *navi_it,
|
||||||
|
const char *label);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_del_hook(Evas_Object *obj)
|
_del_hook(Evas_Object *obj)
|
||||||
|
@ -117,6 +138,87 @@ _disable_hook(Evas_Object *obj __UNUSED__)
|
||||||
//FIXME:
|
//FIXME:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_text_set_hook(Elm_Object_Item *it, const char *part, const char *label)
|
||||||
|
{
|
||||||
|
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
||||||
|
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
||||||
|
|
||||||
|
if ((!part) || (!strcmp(part, "elm.text.title")))
|
||||||
|
{
|
||||||
|
_item_title_label_set(navi_it, label);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if(!strcmp(part, "elm.text.subtitle"))
|
||||||
|
{
|
||||||
|
_item_subtitle_label_set(navi_it, label);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static const char *
|
||||||
|
_text_get_hook(const Elm_Object_Item *it, const char *part)
|
||||||
|
{
|
||||||
|
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
||||||
|
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
||||||
|
|
||||||
|
if ((!part) || (!strcmp(part, "elm.text.title")))
|
||||||
|
{
|
||||||
|
return navi_it->title_label;
|
||||||
|
}
|
||||||
|
else if(!strcmp(part, "elm.text.subtitle"))
|
||||||
|
{
|
||||||
|
return navi_it->title_sublabel;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_content_set_hook(Elm_Object_Item *it,
|
||||||
|
const char *part,
|
||||||
|
Evas_Object *content)
|
||||||
|
{
|
||||||
|
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
||||||
|
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
||||||
|
|
||||||
|
if ((!(part)) || (!strcmp(part, "elm.swallow.content")))
|
||||||
|
{
|
||||||
|
_item_content_set(navi_it, content);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if(!strcmp(part, "elm.swallow.icon"))
|
||||||
|
{
|
||||||
|
_item_icon_set(navi_it, content);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static Evas_Object *
|
||||||
|
_content_get_hook(const Elm_Object_Item *it,
|
||||||
|
const char *part)
|
||||||
|
{
|
||||||
|
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
||||||
|
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
||||||
|
|
||||||
|
if ((!(part)) || (!strcmp(part, "elm.swallow.content")))
|
||||||
|
{
|
||||||
|
return navi_it->content;
|
||||||
|
}
|
||||||
|
else if(!strcmp(part, "elm.swallow.icon"))
|
||||||
|
{
|
||||||
|
return navi_it->title_icon;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Evas_Object *
|
||||||
|
_content_unset_hook(Elm_Object_Item *it __UNUSED__,
|
||||||
|
const char *part __UNUSED__)
|
||||||
|
{
|
||||||
|
//FIXME:
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_sizing_eval(Evas_Object *obj)
|
_sizing_eval(Evas_Object *obj)
|
||||||
{
|
{
|
||||||
|
@ -366,6 +468,79 @@ _show_finished(void *data,
|
||||||
evas_object_pass_events_set(wd->base, EINA_FALSE);
|
evas_object_pass_events_set(wd->base, EINA_FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_item_content_set(Elm_Naviframe_Item *navi_it, Evas_Object *content)
|
||||||
|
{
|
||||||
|
if (navi_it->content == content) return;
|
||||||
|
if (navi_it->content) evas_object_del(navi_it->content);
|
||||||
|
elm_widget_sub_object_add(navi_it->base.widget, content);
|
||||||
|
edje_object_part_swallow(navi_it->base.view, "elm.swallow.content", content);
|
||||||
|
if (content)
|
||||||
|
edje_object_signal_emit(navi_it->base.view,
|
||||||
|
"elm,state,content,show",
|
||||||
|
"elm");
|
||||||
|
else
|
||||||
|
edje_object_signal_emit(navi_it->base.view,
|
||||||
|
"elm,state,content,hide",
|
||||||
|
"elm");
|
||||||
|
evas_object_event_callback_add(content,
|
||||||
|
EVAS_CALLBACK_DEL,
|
||||||
|
_content_del,
|
||||||
|
navi_it);
|
||||||
|
navi_it->content = content;
|
||||||
|
_item_sizing_eval(navi_it);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_item_icon_set(Elm_Naviframe_Item *navi_it, Evas_Object *icon)
|
||||||
|
{
|
||||||
|
Widget_Data *wd = elm_widget_data_get(navi_it->base.widget);
|
||||||
|
if (!wd) return;
|
||||||
|
|
||||||
|
if (navi_it->title_icon == icon) return;
|
||||||
|
if (navi_it->title_icon) evas_object_del(navi_it->title_icon);
|
||||||
|
navi_it->title_icon = icon;
|
||||||
|
if (!icon)
|
||||||
|
{
|
||||||
|
edje_object_signal_emit(navi_it->title,
|
||||||
|
"elm,state,icon,hide",
|
||||||
|
"elm");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
elm_widget_sub_object_add(navi_it->base.widget, icon);
|
||||||
|
edje_object_part_swallow(navi_it->title, "elm.swallow.icon", icon);
|
||||||
|
edje_object_signal_emit(navi_it->title, "elm,state,icon,show", "elm");
|
||||||
|
|
||||||
|
evas_object_event_callback_add(icon, EVAS_CALLBACK_DEL, _title_icon_del, navi_it);
|
||||||
|
_item_sizing_eval(navi_it);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_item_title_label_set(Elm_Naviframe_Item *navi_it, const char *label)
|
||||||
|
{
|
||||||
|
edje_object_part_text_set(navi_it->title, "elm.text.title", label);
|
||||||
|
if (label)
|
||||||
|
edje_object_signal_emit(navi_it->title, "elm,state,title,show", "elm");
|
||||||
|
else
|
||||||
|
edje_object_signal_emit(navi_it->title, "elm,state,title,hidew", "elm");
|
||||||
|
|
||||||
|
eina_stringshare_replace(&navi_it->title_label, label);
|
||||||
|
_item_sizing_eval(navi_it);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_item_subtitle_label_set(Elm_Naviframe_Item *navi_it, const char *label)
|
||||||
|
{
|
||||||
|
edje_object_part_text_set(navi_it->title, "elm.text.subtitle", label);
|
||||||
|
if (label)
|
||||||
|
edje_object_signal_emit(navi_it->title, "elm,state,subtitle,show", "elm");
|
||||||
|
else
|
||||||
|
edje_object_signal_emit(navi_it->title, "elm,state,subtitle,hide", "elm");
|
||||||
|
|
||||||
|
eina_stringshare_replace(&navi_it->title_sublabel, label);
|
||||||
|
_item_sizing_eval(navi_it);
|
||||||
|
}
|
||||||
|
|
||||||
EAPI Evas_Object *
|
EAPI Evas_Object *
|
||||||
elm_naviframe_add(Evas_Object *parent)
|
elm_naviframe_add(Evas_Object *parent)
|
||||||
{
|
{
|
||||||
|
@ -413,6 +588,13 @@ elm_naviframe_item_push(Evas_Object *obj, const char *title_label, Evas_Object *
|
||||||
ERR("Failed to allocate new item! : naviframe=%p", obj);
|
ERR("Failed to allocate new item! : naviframe=%p", obj);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
elm_widget_item_text_set_hook_set(it, _text_set_hook);
|
||||||
|
elm_widget_item_text_get_hook_set(it, _text_get_hook);
|
||||||
|
elm_widget_item_content_set_hook_set(it, _content_set_hook);
|
||||||
|
elm_widget_item_content_get_hook_set(it, _content_get_hook);
|
||||||
|
elm_widget_item_content_unset_hook_set(it, _content_unset_hook);
|
||||||
|
|
||||||
//item base layout
|
//item base layout
|
||||||
it->base.view = edje_object_add(evas_object_evas_get(obj));
|
it->base.view = edje_object_add(evas_object_evas_get(obj));
|
||||||
evas_object_smart_member_add(it->base.view, wd->base);
|
evas_object_smart_member_add(it->base.view, wd->base);
|
||||||
|
@ -443,7 +625,7 @@ elm_naviframe_item_push(Evas_Object *obj, const char *title_label, Evas_Object *
|
||||||
"elm",
|
"elm",
|
||||||
_title_clicked, it);
|
_title_clicked, it);
|
||||||
|
|
||||||
elm_naviframe_item_title_label_set(ELM_CAST(it), title_label);
|
_item_title_label_set(it, title_label);
|
||||||
|
|
||||||
//title buttons
|
//title buttons
|
||||||
if ((!prev_btn) && (eina_list_count(wd->stack)))
|
if ((!prev_btn) && (eina_list_count(wd->stack)))
|
||||||
|
@ -457,7 +639,7 @@ elm_naviframe_item_push(Evas_Object *obj, const char *title_label, Evas_Object *
|
||||||
_title_next_btn_set(it, next_btn);
|
_title_next_btn_set(it, next_btn);
|
||||||
edje_object_part_swallow(it->base.view, "elm.swallow.title", it->title);
|
edje_object_part_swallow(it->base.view, "elm.swallow.title", it->title);
|
||||||
|
|
||||||
elm_naviframe_item_content_set(ELM_CAST(it), content);
|
_item_content_set(it, content);
|
||||||
|
|
||||||
_item_sizing_eval(it);
|
_item_sizing_eval(it);
|
||||||
evas_object_show(it->base.view);
|
evas_object_show(it->base.view);
|
||||||
|
@ -535,88 +717,6 @@ elm_naviframe_content_preserve_on_pop_get(const Evas_Object *obj)
|
||||||
return wd->preserve;
|
return wd->preserve;
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI void
|
|
||||||
elm_naviframe_item_content_set(Elm_Object_Item *it, Evas_Object *content)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
|
|
||||||
if (navi_it->content == content) return;
|
|
||||||
if (navi_it->content) evas_object_del(navi_it->content);
|
|
||||||
elm_widget_sub_object_add(navi_it->base.widget, content);
|
|
||||||
edje_object_part_swallow(navi_it->base.view, "elm.swallow.content", content);
|
|
||||||
if (content)
|
|
||||||
edje_object_signal_emit(navi_it->base.view,
|
|
||||||
"elm,state,content,show",
|
|
||||||
"elm");
|
|
||||||
else
|
|
||||||
edje_object_signal_emit(navi_it->base.view,
|
|
||||||
"elm,state,content,hide",
|
|
||||||
"elm");
|
|
||||||
evas_object_event_callback_add(content,
|
|
||||||
EVAS_CALLBACK_DEL,
|
|
||||||
_content_del,
|
|
||||||
navi_it);
|
|
||||||
navi_it->content = content;
|
|
||||||
_item_sizing_eval(navi_it);
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI Evas_Object *
|
|
||||||
elm_naviframe_item_content_get(const Elm_Object_Item *it)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
return navi_it->content;
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI void
|
|
||||||
elm_naviframe_item_title_label_set(Elm_Object_Item *it, const char *label)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
|
|
||||||
edje_object_part_text_set(navi_it->title, "elm.text.title", label);
|
|
||||||
if (label)
|
|
||||||
edje_object_signal_emit(navi_it->title, "elm,state,title,show", "elm");
|
|
||||||
else
|
|
||||||
edje_object_signal_emit(navi_it->title, "elm,state,title,hidew", "elm");
|
|
||||||
|
|
||||||
eina_stringshare_replace(&navi_it->title_label, label);
|
|
||||||
_item_sizing_eval(navi_it);
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI const char *
|
|
||||||
elm_naviframe_item_title_label_get(const Elm_Object_Item *it)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
return navi_it->title_label;
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI void
|
|
||||||
elm_naviframe_item_subtitle_label_set(Elm_Object_Item *it, const char *label)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
|
|
||||||
edje_object_part_text_set(navi_it->title, "elm.text.subtitle", label);
|
|
||||||
if (label)
|
|
||||||
edje_object_signal_emit(navi_it->title, "elm,state,subtitle,show", "elm");
|
|
||||||
else
|
|
||||||
edje_object_signal_emit(navi_it->title, "elm,state,subtitle,hide", "elm");
|
|
||||||
|
|
||||||
eina_stringshare_replace(&navi_it->title_sublabel, label);
|
|
||||||
_item_sizing_eval(navi_it);
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI const char *
|
|
||||||
elm_naviframe_item_subtitle_label_get(const Elm_Object_Item *it)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
return navi_it->title_sublabel;
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI Elm_Object_Item*
|
EAPI Elm_Object_Item*
|
||||||
elm_naviframe_top_item_get(const Evas_Object *obj)
|
elm_naviframe_top_item_get(const Evas_Object *obj)
|
||||||
{
|
{
|
||||||
|
@ -675,41 +775,6 @@ elm_naviframe_item_button_get(const Elm_Object_Item *it, Elm_Naviframe_Button_Ty
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI void
|
|
||||||
elm_naviframe_item_icon_set(Elm_Object_Item *it, Evas_Object *icon)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
|
|
||||||
Widget_Data *wd = elm_widget_data_get(navi_it->base.widget);
|
|
||||||
if (!wd) return;
|
|
||||||
|
|
||||||
if (navi_it->title_icon == icon) return;
|
|
||||||
if (navi_it->title_icon) evas_object_del(navi_it->title_icon);
|
|
||||||
navi_it->title_icon = icon;
|
|
||||||
if (!icon)
|
|
||||||
{
|
|
||||||
edje_object_signal_emit(navi_it->title,
|
|
||||||
"elm,state,icon,hide",
|
|
||||||
"elm");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
elm_widget_sub_object_add(navi_it->base.widget, icon);
|
|
||||||
edje_object_part_swallow(navi_it->title, "elm.swallow.icon", icon);
|
|
||||||
edje_object_signal_emit(navi_it->title, "elm,state,icon,show", "elm");
|
|
||||||
|
|
||||||
evas_object_event_callback_add(icon, EVAS_CALLBACK_DEL, _title_icon_del, navi_it);
|
|
||||||
_item_sizing_eval(navi_it);
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI Evas_Object *
|
|
||||||
elm_naviframe_item_icon_get(const Elm_Object_Item *it)
|
|
||||||
{
|
|
||||||
ELM_OBJ_ITEM_CHECK_OR_RETURN(it, NULL);
|
|
||||||
Elm_Naviframe_Item *navi_it = ELM_CAST(it);
|
|
||||||
return navi_it->title_icon;
|
|
||||||
}
|
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
elm_naviframe_item_style_set(Elm_Object_Item *it, const char *item_style)
|
elm_naviframe_item_style_set(Elm_Object_Item *it, const char *item_style)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue