forked from enlightenment/efl
naviframe: improve automatic previous button without breaking compatibility.
proper fix instead of r74428. SVN revision: 74450
This commit is contained in:
parent
de83b738fa
commit
f97856f4e7
|
@ -1,5 +1,7 @@
|
||||||
group { name: "elm/button/base/default";
|
group { name: "elm/button/base/default";
|
||||||
alias: "elm/button/base/popup_button/default";
|
alias: "elm/button/base/popup_button/default";
|
||||||
|
alias: "elm/button/base/naviframe/back_btn/default";
|
||||||
|
|
||||||
images {
|
images {
|
||||||
image: "bt_base1.png" COMP;
|
image: "bt_base1.png" COMP;
|
||||||
image: "bt_base2.png" COMP;
|
image: "bt_base2.png" COMP;
|
||||||
|
@ -1103,193 +1105,6 @@ group { name: "elm/button/base/anchor";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
group { name: "elm/button/base/naviframe/back_btn/default";
|
|
||||||
images {
|
|
||||||
image: "bt_base1.png" COMP;
|
|
||||||
image: "bt_base2.png" COMP;
|
|
||||||
image: "bt_hilight.png" COMP;
|
|
||||||
image: "bt_shine.png" COMP;
|
|
||||||
image: "bt_glow.png" COMP;
|
|
||||||
image: "bt_dis_base.png" COMP;
|
|
||||||
image: "bt_dis_hilight.png" COMP;
|
|
||||||
image: "icon_left_arrow.png" COMP;
|
|
||||||
}
|
|
||||||
parts {
|
|
||||||
part { name: "button_image";
|
|
||||||
mouse_events: 1;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
min: 12 12;
|
|
||||||
image {
|
|
||||||
normal: "bt_base2.png";
|
|
||||||
border: 7 7 7 7;
|
|
||||||
}
|
|
||||||
image.middle: SOLID;
|
|
||||||
}
|
|
||||||
description { state: "clicked" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
image.normal: "bt_base1.png";
|
|
||||||
}
|
|
||||||
description { state: "disabled" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
image {
|
|
||||||
normal: "bt_dis_base.png";
|
|
||||||
border: 4 4 4 4;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
part { name: "prev_image";
|
|
||||||
type: IMAGE;
|
|
||||||
scale: 1;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
min: 15 15;
|
|
||||||
max: 15 15;
|
|
||||||
fixed: 1 1;
|
|
||||||
align: 0.5 0.5;
|
|
||||||
image.normal: "icon_left_arrow.png";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
part { name: "over1";
|
|
||||||
mouse_events: 0;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
rel2.relative: 1.0 0.5;
|
|
||||||
image {
|
|
||||||
normal: "bt_hilight.png";
|
|
||||||
border: 7 7 7 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
description { state: "disabled" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
image {
|
|
||||||
normal: "bt_dis_hilight.png";
|
|
||||||
border: 4 4 4 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
part { name: "over2";
|
|
||||||
mouse_events: 1;
|
|
||||||
repeat_events: 1;
|
|
||||||
ignore_flags: ON_HOLD;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
image {
|
|
||||||
normal: "bt_shine.png";
|
|
||||||
border: 7 7 7 7;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
description { state: "disabled" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
visible: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
part { name: "over3";
|
|
||||||
mouse_events: 1;
|
|
||||||
repeat_events: 1;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
color: 255 255 255 0;
|
|
||||||
image {
|
|
||||||
normal: "bt_glow.png";
|
|
||||||
border: 12 12 12 12;
|
|
||||||
}
|
|
||||||
fill.smooth : 0;
|
|
||||||
}
|
|
||||||
description { state: "clicked" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
color: 255 255 255 255;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
part { name: "disabler";
|
|
||||||
type: RECT;
|
|
||||||
description { state: "default" 0.0;
|
|
||||||
color: 0 0 0 0;
|
|
||||||
visible: 0;
|
|
||||||
}
|
|
||||||
description { state: "disabled" 0.0;
|
|
||||||
inherit: "default" 0.0;
|
|
||||||
visible: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
programs {
|
|
||||||
program {
|
|
||||||
name: "button_click";
|
|
||||||
signal: "mouse,down,1";
|
|
||||||
source: "over2";
|
|
||||||
action: SIGNAL_EMIT "elm,action,press" "";
|
|
||||||
after: "button_click_anim";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_click_anim";
|
|
||||||
action: STATE_SET "clicked" 0.0;
|
|
||||||
target: "button_image";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_unclick";
|
|
||||||
signal: "mouse,up,1";
|
|
||||||
source: "over3";
|
|
||||||
action: SIGNAL_EMIT "elm,action,unpress" "";
|
|
||||||
after: "button_unclick_anim";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_pressed_anim";
|
|
||||||
signal: "elm,anim,activate";
|
|
||||||
source: "elm";
|
|
||||||
action: STATE_SET "clicked" 0.0;
|
|
||||||
target: "button_image";
|
|
||||||
target: "over3";
|
|
||||||
after: "button_unpressed_anim";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_unpressed_anim";
|
|
||||||
action: STATE_SET "default" 0.0;
|
|
||||||
transition: DECELERATE 0.5;
|
|
||||||
target: "button_image";
|
|
||||||
target: "over3";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_unclick_anim";
|
|
||||||
action: STATE_SET "default" 0.0;
|
|
||||||
target: "button_image";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_click2";
|
|
||||||
signal: "mouse,down,1";
|
|
||||||
source: "over3";
|
|
||||||
action: STATE_SET "clicked" 0.0;
|
|
||||||
target: "over3";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_unclick2";
|
|
||||||
signal: "mouse,up,1";
|
|
||||||
source: "over3";
|
|
||||||
action: STATE_SET "default" 0.0;
|
|
||||||
transition: DECELERATE 0.5;
|
|
||||||
target: "over3";
|
|
||||||
}
|
|
||||||
program {
|
|
||||||
name: "button_unclick3";
|
|
||||||
signal: "mouse,clicked,1";
|
|
||||||
source: "over2";
|
|
||||||
action: SIGNAL_EMIT "elm,action,click" "";
|
|
||||||
}
|
|
||||||
program { name: "disable";
|
|
||||||
signal: "elm,state,disabled";
|
|
||||||
source: "elm";
|
|
||||||
action: STATE_SET "disabled" 0.0;
|
|
||||||
target: "button_image";
|
|
||||||
target: "over1";
|
|
||||||
target: "over2";
|
|
||||||
target: "disabler";
|
|
||||||
}
|
|
||||||
program { name: "enable";
|
|
||||||
signal: "elm,state,enabled";
|
|
||||||
source: "elm";
|
|
||||||
action: STATE_SET "default" 0.0;
|
|
||||||
target: "button_image";
|
|
||||||
target: "over1";
|
|
||||||
target: "over2";
|
|
||||||
target: "disabler";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
group { name: "elm/button/base/colorselector/left/default";
|
group { name: "elm/button/base/colorselector/left/default";
|
||||||
images {
|
images {
|
||||||
|
|
|
@ -632,7 +632,7 @@ _on_item_back_btn_clicked(void *data,
|
||||||
static Evas_Object *
|
static Evas_Object *
|
||||||
_back_btn_new(Evas_Object *obj, const char *title_label)
|
_back_btn_new(Evas_Object *obj, const char *title_label)
|
||||||
{
|
{
|
||||||
Evas_Object *btn;
|
Evas_Object *btn, *ed;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
|
|
||||||
btn = elm_button_add(obj);
|
btn = elm_button_add(obj);
|
||||||
|
@ -648,6 +648,24 @@ _back_btn_new(Evas_Object *obj, const char *title_label)
|
||||||
else
|
else
|
||||||
elm_object_domain_translatable_text_set(btn, PACKAGE, N_("Back"));
|
elm_object_domain_translatable_text_set(btn, PACKAGE, N_("Back"));
|
||||||
|
|
||||||
|
/* HACK NOTE: this explicit check only exists to avoid an ERR()
|
||||||
|
* message from elm_layout_content_set().
|
||||||
|
*
|
||||||
|
* The button was ALWAYS supposed to support an elm.swallow.content, but
|
||||||
|
* default naviframe/back_btn/default theme did not provide such, then
|
||||||
|
* old themes would emit such error message.
|
||||||
|
*
|
||||||
|
* Once we can break the theme API, remove this check and always
|
||||||
|
* set an icon.
|
||||||
|
*/
|
||||||
|
ed = elm_layout_edje_get(btn);
|
||||||
|
if (edje_object_part_exists(ed, "elm.swallow.content"))
|
||||||
|
{
|
||||||
|
Evas_Object *ico = elm_icon_add(btn);
|
||||||
|
elm_icon_standard_set(ico, "arrow_left");
|
||||||
|
elm_layout_content_set(btn, "elm.swallow.content", ico);
|
||||||
|
}
|
||||||
|
|
||||||
return btn;
|
return btn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue