[Eve] Force the use of Efenniht's Elm_Toggle theme.

Patch by Alex Grilo.

SVN revision: 52702
This commit is contained in:
Leandro Pereira 2010-09-24 20:00:50 +00:00
parent dc6f9a13ed
commit 5eafd2afb3
7 changed files with 386 additions and 6 deletions

View File

@ -44,14 +44,18 @@ images = \
cur_shad.png \
progress-bar-background.png \
arrow_right.png \
toggle_bg.png \
toggle_off.png \
toggle_on.png \
check.png
edcdeps = data/themes/elm-gengrid.edc \
data/themes/elm-notify.edc \
data/themes/elm-scroller.edc \
data/themes/elm-entry.edc \
data/themes/elm-list.edc \
data/themes/elm-pager.edc
edcdeps = elm-gengrid.edc \
elm-notify.edc \
elm-scroller.edc \
elm-entry.edc \
elm-list.edc \
elm-pager.edc \
elm-toggle.edc
fonts =

View File

@ -251,6 +251,7 @@ collections {
#include "elm-notify.edc"
#include "elm-pager.edc"
#include "elm-entry.edc"
#include "elm-toggle.edc"
group { name: "bg";
parts {
part { name: "bg";

374
data/themes/elm-toggle.edc Normal file
View File

@ -0,0 +1,374 @@
group { name: "elm/toggle/base/ewebkit";
images {
image: "toggle_bg.png" COMP;
image: "toggle_on.png" COMP;
image: "toggle_off.png" COMP;
}
parts {
part { name: "bg";
mouse_events: 0;
scale: 1;
description { state: "default" 0.0;
rel1.relative: 1.0 0.0;
rel1.offset: -4 3;
rel2.offset: -4 -4;
align: 1.0 0.5;
min: 96 30;
max: 96 30;
fixed: 1 1;
image {
normal: "toggle_bg.png";
border: 3 3 3 3;
}
}
}
part { name: "clipper";
type: RECT;
mouse_events: 0;
description { state: "default" 0.0;
rel1 {
to: "bg";
offset: 2 2;
}
rel2 {
to: "bg";
offset: -3 -3;
}
color: 255 255 255 255;
}
}
part { name: "button";
type: RECT;
scale: 1;
clip_to: "clipper";
mouse_events: 1;
dragable {
x: 1 1 0;
y: 0 0 0;
confine: "bg";
}
description { state: "default" 0.0;
fixed: 1 1;
rel1.to: "bg";
rel2.to: "bg";
min: 30 30;
max: 30 30;
aspect: 1.0 1.0;
aspect_preference: VERTICAL;
color: 0 0 0 0;
}
}
part { name: "button_events";
type: RECT;
dragable {
events: "button";
}
description { state: "default" 0.0;
rel1.to_x: "bg";
rel1.offset: 0 0;
rel1.relative: 0.0 0.0;
rel2.to_x: "bg";
rel2.offset: -1 -1;
rel2.relative: 1.0 1.0;
color: 0 0 0 0;
}
}
part { name: "bg2";
type: IMAGE;
clip_to: "disable_clipper";
mouse_events: 0;
description { state: "default" 0.0;
visible: 1;
image {
normal: "toggle_off.png";
border: 2 16 9 9;
}
rel1 {
to: "bg";
offset: 3 3;
}
rel2 {
to_x: "button";
to_y: "bg";
relative: 1.0 1.0;
offset: -4 -4;
}
align: 0.0 0.5;
fixed: 1 0;
}
description { state: "on" 0.0;
inherit: "default" 0.0;
image {
normal: "toggle_on.png";
border: 2 11 9 9;
}
}
}
part { name: "onrect";
type: RECT;
scale: 1;
mouse_events: 0;
description { state: "default" 0.0;
fixed: 1 1;
rel1.to: "bg2";
rel2 {
to: "bg2";
offset: -17 -1;
}
min: 72 0;
max: 72 99999;
align: 1.0 0.5;
color: 0 0 0 0;
visible: 0;
}
}
part { name: "offrect";
type: RECT;
scale: 1;
mouse_events: 0;
description { state: "default" 0.0;
fixed: 1 1;
rel1 {
to: "bg2";
relative: 1.0 0.0;
}
rel2.to: "bg2";
min: 70 0;
max: 70 99999;
align: 0.0 0.5;
color: 0 0 0 0;
visible: 0;
}
}
part { name: "elm.offtext";
type: TEXT;
mouse_events: 0;
scale: 1;
clip_to: "clipper";
description { state: "default" 0.0;
fixed: 1 1;
rel1.to_x: "offrect";
rel2.to_x: "offrect";
color_class: "toggle_text_off";
text {
font: "Sans,Edje-Vera";
size: 10;
min: 0 1;
align: 0.5 0.5;
text: "OFF";
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
color_class: "toggle_text_off_disabled";
}
}
part { name: "elm.ontext";
type: TEXT;
mouse_events: 0;
scale: 1;
clip_to: "clipper";
description { state: "default" 0.0;
fixed: 1 1;
rel1.to_x: "onrect";
rel1.offset: 1 1;
rel2.to_x: "onrect";
rel2.offset: 0 0;
color_class: "toggle_text_on";
text {
font: "Sans,Edje-Vera";
size: 10;
min: 0 1;
align: 0.5 0.5;
text: "ON";
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
color_class: "toggle_text_on_disabled";
}
}
part { name: "elm.swallow.content";
clip_to: "disable_clipper";
type: SWALLOW;
description { state: "default" 0.0;
fixed: 1 0;
visible: 0;
align: 0.0 0.5;
rel1.offset: 4 4;
rel2.relative: 0.0 1.0;
rel2.offset: 3 -5;
}
description { state: "visible" 0.0;
inherit: "default" 0.0;
fixed: 1 1;
visible: 1;
aspect: 1.0 1.0;
aspect_preference: VERTICAL;
rel2.offset: 4 -5;
}
}
part { name: "elm.text";
type: TEXT;
mouse_events: 0;
scale: 1;
description { state: "default" 0.0;
visible: 0;
rel1.to_x: "elm.swallow.content";
rel1.relative: 1.0 0.0;
rel1.offset: 0 4;
rel2.to_x: "bg";
rel2.relative: 0.0 1.0;
rel2.offset: -5 -5;
color: 255 255 255 0;
color_class: "toggle_text";
text {
font: "Sans,Edje-Vera";
size: 10;
min: 0 0;
align: 0.0 0.5;
}
}
description { state: "visible" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
text.min: 1 1;
}
description { state: "disabled_visible" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
text.min: 1 1;
color_class: "toggle_text_disabled";
}
}
part { name: "disable_clipper";
type: RECT;
mouse_events: 0;
description { state: "default" 0.0;
aspect: 1.0 1.0;
aspect_preference: HORIZONTAL;
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
color_class: "toggle_disable_clipper";
}
}
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: "drag_end";
signal: "mouse,up,1";
source: "button";
script {
new Float:dx, Float:dy;
get_drag(PART:"button", dx, dy);
if (dx > 0.5)
{
set_drag(PART:"button", 1.0, 0.0);
emit("elm,action,toggle,on", "");
set_state(PART:"bg2", "on", 0.0);
}
else
{
set_drag(PART:"button", 0.0, 0.0);
emit("elm,action,toggle,off", "");
set_state(PART:"bg2", "default", 0.0);
}
}
}
program { name: "toggle_on";
signal: "elm,state,toggle,on";
source: "elm";
script {
set_drag(PART:"button", 100.0, 0.0);
set_state(PART:"bg2", "on", 0.0);
}
}
program { name: "toggle_off";
signal: "elm,state,toggle,off";
source: "elm";
script {
set_drag(PART:"button", 0.0, 0.0);
set_state(PART:"bg2", "default", 0.0);
}
}
program { name: "text_show";
signal: "elm,state,text,visible";
source: "elm";
action: STATE_SET "visible" 0.0;
target: "elm.text";
}
program { name: "text_hide";
signal: "elm,state,text,hidden";
source: "elm";
action: STATE_SET "default" 0.0;
target: "elm.text";
}
program { name: "icon_show";
signal: "elm,state,icon,visible";
source: "elm";
action: STATE_SET "visible" 0.0;
target: "elm.swallow.content";
}
program { name: "icon_hide";
signal: "elm,state,icon,hidden";
source: "elm";
action: STATE_SET "default" 0.0;
target: "elm.swallow.content";
}
program { name: "disable";
signal: "elm,state,disabled";
source: "elm";
action: STATE_SET "disabled" 0.0;
target: "elm.offtext";
target: "elm.ontext";
target: "disabler";
target: "disable_clipper";
after: "disable_text";
}
program { name: "disable_text";
script {
new st[31];
new Float:vl;
get_state(PART:"elm.text", st, 30, vl);
if (!strcmp(st, "visible"))
set_state(PART:"elm.text", "disabled_visible", 0.0);
else
set_state(PART:"elm.text", "disabled", 0.0);
}
}
program { name: "enable";
signal: "elm,state,enabled";
source: "elm";
action: STATE_SET "default" 0.0;
target: "elm.offtext";
target: "elm.ontext";
target: "disabler";
target: "disable_clipper";
after: "enable_text";
}
program { name: "enable_text";
script {
new st[31];
new Float:vl;
get_state(PART:"elm.text", st, 30, vl);
if (!strcmp(st, "disabled_visible"))
set_state(PART:"elm.text", "visible", 0.0);
else
set_state(PART:"elm.text", "default", 0.0);
}
}
}
}

BIN
data/themes/toggle_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 720 B

BIN
data/themes/toggle_off.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
data/themes/toggle_on.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -1205,6 +1205,7 @@ config_widget_get(Evas_Object *parent, More_Menu_Config *mmc)
Evas_Object *toggle = elm_toggle_add(parent);
conf_get = mmc->conf_get;
elm_object_style_set(toggle, "ewebkit");
elm_toggle_state_set(toggle, conf_get(config));
evas_object_smart_callback_add(toggle, "changed", cb_config_bool_changed, mmc);