forked from enlightenment/efl
elementary/naviframe - merged groups base and title
SVN revision: 63379
This commit is contained in:
parent
8d54a54260
commit
8d780ef4b5
|
@ -45,6 +45,10 @@ group { name:"elm/naviframe/base/default";
|
|||
}
|
||||
}
|
||||
group { name:"elm/naviframe/item/basic/default";
|
||||
images {
|
||||
image: "flip_base.png" COMP;
|
||||
image: "flip_shad.png" COMP;
|
||||
}
|
||||
parts {
|
||||
part { name: "title_clip";
|
||||
type: RECT;
|
||||
|
@ -98,8 +102,8 @@ group { name:"elm/naviframe/item/basic/default";
|
|||
rel2.relative: 2.0 1.0;
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.title";
|
||||
type: SWALLOW;
|
||||
part { name: "title_base";
|
||||
type: IMAGE;
|
||||
scale: 1;
|
||||
repeat_events: 0;
|
||||
clip_to: "title_clip";
|
||||
|
@ -109,6 +113,106 @@ group { name:"elm/naviframe/item/basic/default";
|
|||
fixed: 0 1;
|
||||
rel1 { relative: 0.0 0.0; }
|
||||
rel2 { relative: 1.0 0.0; }
|
||||
image.normal: "flip_base.png";
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.prev_btn";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
min: 80 40;
|
||||
max: 80 40;
|
||||
align: 0 0;
|
||||
fixed: 1 1;
|
||||
rel1.offset: 5 5;
|
||||
rel1.to: "title_base";
|
||||
rel2.offset: -1 -6;
|
||||
rel2.to: "title_base";
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.next_btn";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
min: 80 40;
|
||||
max: 80 40;
|
||||
align: 1 0;
|
||||
fixed: 1 1;
|
||||
rel1.offset: 0 5;
|
||||
rel1.to: "title_base";
|
||||
rel2.offset: -6 -6;
|
||||
rel2.to: "title_base";
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.icon";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
min: 40 40;
|
||||
max: 40 40;
|
||||
align: 1 0.5;
|
||||
rel1.to: "elm.text.title";
|
||||
rel1.relative: 0 0;
|
||||
rel1.to: "title_base";
|
||||
rel2.to: "elm.text.title";
|
||||
rel2.relative: 0 1;
|
||||
rel2.to: "title_base";
|
||||
}
|
||||
}
|
||||
part { name: "elm.text.title";
|
||||
type: TEXT;
|
||||
scale: 1;
|
||||
repeat_events: 1;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
text { font: "Sans,Edje-Vera";
|
||||
size: 10;
|
||||
min: 0 0;
|
||||
max: 1 0;
|
||||
align: 0.5 0.5;
|
||||
}
|
||||
color: 0 0 0 255;
|
||||
align: 0.5 0.5;
|
||||
rel1.to: "title_base";
|
||||
rel2.to: "title_base";
|
||||
}
|
||||
}
|
||||
part { name: "elm.text.subtitle";
|
||||
type: TEXT;
|
||||
scale: 1;
|
||||
repeat_events: 1;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
text { font: "Sans,Edje-Vera";
|
||||
size: 8;
|
||||
min: 0 0;
|
||||
max: 1 0;
|
||||
align: 0.5 1;
|
||||
}
|
||||
rel1.to_y: "elm.text.title";
|
||||
rel1.relative: 0 1;
|
||||
rel1.to: "title_base";
|
||||
rel2.to: "title_base";
|
||||
color: 50 50 50 255;
|
||||
align: 0.5 0;
|
||||
}
|
||||
}
|
||||
part { name: "shade";
|
||||
type: IMAGE;
|
||||
mouse_events: 0;
|
||||
clip_to: "title_clip";
|
||||
description {
|
||||
align: 0.5 1;
|
||||
rel1.to_y: "elm.text.title";
|
||||
rel1.relative: 0 1;
|
||||
rel1.offset: 0 0;
|
||||
rel1.to: "title_base";
|
||||
rel2.offset: -1 5;
|
||||
rel2.to: "title_base";
|
||||
image.normal: "flip_shad.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -143,115 +247,6 @@ group { name:"elm/naviframe/item/basic/default";
|
|||
action: STATE_SET "show" 0.0;
|
||||
target: "elm.swallow.content";
|
||||
}
|
||||
program { name: "title_show";
|
||||
signal: "elm,state,elm.text.title,show";
|
||||
source: "elm";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "title_clip";
|
||||
}
|
||||
program { name: "title_hide";
|
||||
signal: "elm,state,title,hide";
|
||||
source: "elm";
|
||||
action: STATE_SET "hide" 0.0;
|
||||
target: "title_clip";
|
||||
}
|
||||
program { name: "show_finished";
|
||||
action: SIGNAL_EMIT "elm,action,show,finished" "";
|
||||
}
|
||||
program { name: "pushed_finished";
|
||||
action: SIGNAL_EMIT "elm,action,pushed,finished" "";
|
||||
}
|
||||
program { name: "popped_finished";
|
||||
action: SIGNAL_EMIT "elm,action,popped,finished" "";
|
||||
}
|
||||
}
|
||||
}
|
||||
group { name:"elm/naviframe/item/instant/default";
|
||||
parts {
|
||||
part { name: "title_clip";
|
||||
type: RECT;
|
||||
mouse_events: 0;
|
||||
description { state: "default" 0.0;
|
||||
min: 1 50;
|
||||
align: 0.0 0.0;
|
||||
fixed: 0 1;
|
||||
rel1 { relative: 0.0 0.0; }
|
||||
rel2 { relative: 1.0 0.0; }
|
||||
}
|
||||
description { state: "hide" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
min: 0 0;
|
||||
max: 0 0;
|
||||
fixed: 1 1;
|
||||
}
|
||||
}
|
||||
part { name: "content_clip";
|
||||
type: RECT;
|
||||
mouse_events: 0;
|
||||
description { state: "default" 0.0;
|
||||
rel1.to_y: "title_clip";
|
||||
rel1.relative: 0 1;
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.content";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
repeat_events: 0;
|
||||
clip_to: "content_clip";
|
||||
description { state: "default" 0.0;
|
||||
align: 0.0 0.0;
|
||||
rel1.relative: 0.0 1.0;
|
||||
rel1.to_y: "title_clip";
|
||||
rel2.relative: 1.0 1.0;
|
||||
visible: 0;
|
||||
}
|
||||
description { state: "show" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 1;
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.title";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
repeat_events: 0;
|
||||
clip_to: "title_clip";
|
||||
description { state: "default" 0.0;
|
||||
min: 1 50;
|
||||
align: 0.5 0.0;
|
||||
fixed: 0 1;
|
||||
rel1 { relative: 0.0 0.0; }
|
||||
rel2 { relative: 1.0 0.0; }
|
||||
}
|
||||
}
|
||||
}
|
||||
programs {
|
||||
program { name: "show";
|
||||
signal: "elm,state,show";
|
||||
source: "elm";
|
||||
action: STATE_SET "show" 0.0;
|
||||
target: "elm.swallow.content";
|
||||
after: "show_finished";
|
||||
}
|
||||
program { name: "pushed";
|
||||
signal: "elm,state,pushed";
|
||||
source: "elm";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "elm.swallow.content";
|
||||
after: "pushed_finished";
|
||||
}
|
||||
program { name: "popped";
|
||||
signal: "elm,state,popped";
|
||||
source: "elm";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "elm.swallow.content";
|
||||
after: "popped_finished";
|
||||
}
|
||||
program { name: "visible";
|
||||
signal: "elm,state,visible";
|
||||
source: "elm";
|
||||
action: STATE_SET "show" 0.0;
|
||||
target: "elm.swallow.content";
|
||||
}
|
||||
program { name: "title_show";
|
||||
signal: "elm,state,title,show";
|
||||
source: "elm";
|
||||
|
@ -264,6 +259,12 @@ group { name:"elm/naviframe/item/instant/default";
|
|||
action: STATE_SET "hide" 0.0;
|
||||
target: "title_clip";
|
||||
}
|
||||
program {
|
||||
name: "title_clicked";
|
||||
signal: "mouse,clicked,1";
|
||||
source: "base";
|
||||
action: SIGNAL_EMIT "elm,action,clicked" "elm";
|
||||
}
|
||||
program { name: "show_finished";
|
||||
action: SIGNAL_EMIT "elm,action,show,finished" "";
|
||||
}
|
||||
|
@ -275,106 +276,4 @@ group { name:"elm/naviframe/item/instant/default";
|
|||
}
|
||||
}
|
||||
}
|
||||
group { name:"elm/naviframe/title/default";
|
||||
images {
|
||||
image: "flip_base.png" COMP;
|
||||
image: "flip_shad.png" COMP;
|
||||
}
|
||||
parts {
|
||||
part { name: "base";
|
||||
type: IMAGE;
|
||||
description {
|
||||
image.normal: "flip_base.png";
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.prev_btn";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
description { state: "default" 0.0;
|
||||
min: 80 40;
|
||||
max: 80 40;
|
||||
align: 0 0;
|
||||
fixed: 1 1;
|
||||
rel1.offset: 5 5;
|
||||
rel2.offset: -1 -6;
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.next_btn";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
description { state: "default" 0.0;
|
||||
min: 80 40;
|
||||
max: 80 40;
|
||||
align: 1 0;
|
||||
fixed: 1 1;
|
||||
rel1.offset: 0 5;
|
||||
rel2.offset: -6 -6;
|
||||
}
|
||||
}
|
||||
part { name: "elm.swallow.icon";
|
||||
type: SWALLOW;
|
||||
scale: 1;
|
||||
description { state: "default" 0.0;
|
||||
min: 40 40;
|
||||
max: 40 40;
|
||||
align: 1 0.5;
|
||||
rel1.to: "elm.text.title";
|
||||
rel1.relative: 0 0;
|
||||
rel2.to: "elm.text.title";
|
||||
rel2.relative: 0 1;
|
||||
}
|
||||
}
|
||||
part { name: "elm.text.title";
|
||||
type: TEXT;
|
||||
scale: 1;
|
||||
repeat_events: 1;
|
||||
description { state: "default" 0.0;
|
||||
text { font: "Sans,Edje-Vera";
|
||||
size: 10;
|
||||
min: 0 0;
|
||||
max: 1 0;
|
||||
align: 0.5 0.5;
|
||||
}
|
||||
color: 0 0 0 255;
|
||||
align: 0.5 0.5;
|
||||
}
|
||||
}
|
||||
part { name: "elm.text.subtitle";
|
||||
type: TEXT;
|
||||
scale: 1;
|
||||
repeat_events: 1;
|
||||
description { state: "default" 0.0;
|
||||
text { font: "Sans,Edje-Vera";
|
||||
size: 8;
|
||||
min: 0 0;
|
||||
max: 1 0;
|
||||
align: 0.5 1;
|
||||
}
|
||||
rel1.to_y: "elm.text.title";
|
||||
rel1.relative: 0 1;
|
||||
color: 50 50 50 255;
|
||||
align: 0.5 0;
|
||||
}
|
||||
}
|
||||
part { name: "shade";
|
||||
type: IMAGE;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
align: 0.5 1;
|
||||
rel1.to_y: "elm.text.title";
|
||||
rel1.relative: 0 1;
|
||||
rel1.offset: 0 0;
|
||||
rel2.offset: -1 5;
|
||||
image.normal: "flip_shad.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
programs {
|
||||
program {
|
||||
name: "title_clicked";
|
||||
signal: "mouse,clicked,1";
|
||||
source: "base";
|
||||
action: SIGNAL_EMIT "elm,action,clicked" "elm";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -30,7 +30,6 @@ struct _Elm_Naviframe_Text_Item_Pair
|
|||
struct _Elm_Naviframe_Item
|
||||
{
|
||||
Elm_Widget_Item base;
|
||||
Evas_Object *title;
|
||||
Eina_List *content_list;
|
||||
Eina_List *text_list;
|
||||
Evas_Object *content;
|
||||
|
@ -187,14 +186,14 @@ _text_set_hook(Elm_Object_Item *it, const char *part, const char *label)
|
|||
}
|
||||
|
||||
eina_stringshare_replace(&pair->text, label);
|
||||
edje_object_part_text_set(navi_it->title, part, label);
|
||||
edje_object_part_text_set(navi_it->base.view, part, label);
|
||||
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,show", part);
|
||||
|
||||
if (label)
|
||||
edje_object_signal_emit(navi_it->title, buf, "elm");
|
||||
edje_object_signal_emit(navi_it->base.view, buf, "elm");
|
||||
else
|
||||
edje_object_signal_emit(navi_it->title, buf, "elm");
|
||||
edje_object_signal_emit(navi_it->base.view, buf, "elm");
|
||||
|
||||
_item_sizing_eval(navi_it);
|
||||
}
|
||||
|
@ -319,9 +318,9 @@ _content_unset_hook(Elm_Object_Item *it __UNUSED__,
|
|||
if (!content) return NULL;
|
||||
|
||||
elm_widget_sub_object_del(navi_it->base.widget, content);
|
||||
edje_object_part_unswallow(navi_it->title, content);
|
||||
edje_object_part_unswallow(navi_it->base.view, content);
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,hide", part);
|
||||
edje_object_signal_emit(navi_it->title, buf, "elm");
|
||||
edje_object_signal_emit(navi_it->base.view, buf, "elm");
|
||||
evas_object_event_callback_del(content,
|
||||
EVAS_CALLBACK_DEL,
|
||||
_title_content_del);
|
||||
|
@ -420,7 +419,7 @@ _title_content_del(void *data,
|
|||
Elm_Naviframe_Content_Item_Pair *pair = data;
|
||||
Elm_Naviframe_Item *it = pair->it;
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,hide", pair->part);
|
||||
edje_object_signal_emit(it->title, buf, "elm");
|
||||
edje_object_signal_emit(it->base.view, buf, "elm");
|
||||
it->content_list = eina_list_remove(it->content_list, pair);
|
||||
eina_stringshare_del(pair->part);
|
||||
free(pair);
|
||||
|
@ -495,14 +494,14 @@ _title_content_set(Elm_Naviframe_Item *it,
|
|||
if (!content)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,hide", part);
|
||||
edje_object_signal_emit(it->title, buf, "elm");
|
||||
edje_object_signal_emit(it->base.view, buf, "elm");
|
||||
return;
|
||||
}
|
||||
|
||||
elm_widget_sub_object_add(it->base.widget, content);
|
||||
edje_object_part_swallow(it->title, part, content);
|
||||
edje_object_part_swallow(it->base.view, part, content);
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,show", part);
|
||||
edje_object_signal_emit(it->title, buf, "elm");
|
||||
edje_object_signal_emit(it->base.view, buf, "elm");
|
||||
evas_object_event_callback_add(content,
|
||||
EVAS_CALLBACK_DEL,
|
||||
_title_content_del,
|
||||
|
@ -537,7 +536,7 @@ _title_prev_btn_set(Elm_Naviframe_Item *it, Evas_Object *btn, Eina_Bool back_btn
|
|||
EVAS_CALLBACK_DEL,
|
||||
_title_prev_btn_del,
|
||||
it);
|
||||
edje_object_part_swallow(it->title, "elm.swallow.prev_btn", btn);
|
||||
edje_object_part_swallow(it->base.view, "elm.swallow.prev_btn", btn);
|
||||
it->back_btn = back_btn;
|
||||
|
||||
_item_sizing_eval(it);
|
||||
|
@ -567,7 +566,7 @@ _title_next_btn_set(Elm_Naviframe_Item *it, Evas_Object *btn)
|
|||
EVAS_CALLBACK_DEL,
|
||||
_title_next_btn_del,
|
||||
it);
|
||||
edje_object_part_swallow(it->title, "elm.swallow.next_btn", btn);
|
||||
edje_object_part_swallow(it->base.view, "elm.swallow.next_btn", btn);
|
||||
|
||||
_item_sizing_eval(it);
|
||||
}
|
||||
|
@ -604,7 +603,6 @@ _item_del(Elm_Naviframe_Item *it)
|
|||
eina_list_free(it->content_list);
|
||||
eina_list_free(it->text_list);
|
||||
|
||||
evas_object_del(it->title);
|
||||
evas_object_del(it->base.view);
|
||||
|
||||
wd->stack = eina_list_remove(wd->stack, it);
|
||||
|
@ -749,14 +747,8 @@ elm_naviframe_item_push(Evas_Object *obj, const char *title_label, Evas_Object *
|
|||
elm_naviframe_item_style_set(ELM_CAST(it), item_style);
|
||||
|
||||
//title
|
||||
it->title = edje_object_add(evas_object_evas_get(obj));
|
||||
elm_widget_sub_object_add(obj, it->title);
|
||||
_elm_theme_object_set(obj,
|
||||
it->title, "naviframe",
|
||||
"title",
|
||||
elm_widget_style_get(obj));
|
||||
edje_object_signal_callback_add(it->title,
|
||||
"elm,action,clicked",
|
||||
edje_object_signal_callback_add(it->base.view,
|
||||
"elm,title,clicked",
|
||||
"elm",
|
||||
_title_clicked, it);
|
||||
|
||||
|
@ -772,7 +764,6 @@ elm_naviframe_item_push(Evas_Object *obj, const char *title_label, Evas_Object *
|
|||
_title_prev_btn_set(it, prev_btn, EINA_FALSE);
|
||||
|
||||
_title_next_btn_set(it, next_btn);
|
||||
edje_object_part_swallow(it->base.view, "elm.swallow.title", it->title);
|
||||
|
||||
_item_content_set(it, content);
|
||||
|
||||
|
|
Loading…
Reference in New Issue