raster pushed a commit to branch master.
commit 29c530c591551957c9b8130b9b39e5da08497d61
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date: Thu Jul 25 18:32:09 2013 +0900
make elm player fully baked theme-wise.
---
edje/edc/elm/button.edc | 6 +
edje/edc/elm/icon.edc | 6 +
edje/edc/elm/player.edc | 279 ++++++++++++++++++++++++++++++++++++++++--
edje/edc/elm/slider.edc | 11 +-
edje/edc/elm/toolbar.edc | 1 -
edje/img/icon_eject.png | Bin 0 -> 2542 bytes
edje/img/icon_eject_mono.png | Bin 0 -> 218 bytes
edje/img/icon_mute.png | Bin 0 -> 4369 bytes
edje/img/icon_mute_mono.png | Bin 0 -> 383 bytes
edje/img/icon_volume.png | Bin 0 -> 5142 bytes
edje/img/icon_volume_mono.png | Bin 0 -> 700 bytes
eject.svgz | Bin 0 -> 3895 bytes
mock-19.xcf.gz | Bin 129938 -> 143554 bytes
mute.svgz | Bin 0 -> 3927 bytes
speaker.svgz | Bin 0 -> 4110 bytes
15 files changed, 293 insertions(+), 10 deletions(-)
diff --git a/edje/edc/elm/button.edc b/edje/edc/elm/button.edc
index 2599764..e604c76 100644
--- a/edje/edc/elm/button.edc
+++ b/edje/edc/elm/button.edc
@@ -688,6 +688,9 @@ group { name: "elm/button/base/media_player/prev/default";
alias: "elm/button/base/media_player/forward/default";
alias: "elm/button/base/media_player/next/default";
alias: "elm/button/base/media_player/info/default";
+ alias: "elm/button/base/media_player/eject/default";
+ alias: "elm/button/base/media_player/volume/default";
+ alias: "elm/button/base/media_player/mute/default";
alias: "elm/button/base/media_player/prev/flush";
alias: "elm/button/base/media_player/rewind/flush";
@@ -697,6 +700,9 @@ group { name: "elm/button/base/media_player/prev/default";
alias: "elm/button/base/media_player/forward/flush";
alias: "elm/button/base/media_player/next/flush";
alias: "elm/button/base/media_player/info/flush";
+ alias: "elm/button/base/media_player/eject/flush";
+ alias: "elm/button/base/media_player/volume/flush";
+ alias: "elm/button/base/media_player/mute/flush";
images.image: "shadow_inset_bevels.png" COMP;
images.image: "shadow_angled_in_sides.png" COMP;
diff --git a/edje/edc/elm/icon.edc b/edje/edc/elm/icon.edc
index 183c0b1..7551190 100644
--- a/edje/edc/elm/icon.edc
+++ b/edje/edc/elm/icon.edc
@@ -57,6 +57,9 @@ IC("media_player/play", "icon_play.png", 16, 0);
IC("media_player/prev", "icon_prev.png", 16, 0);
IC("media_player/rewind", "icon_rewind.png", 16, 0);
IC("media_player/stop", "icon_stop.png", 16, 0);
+IC("media_player/eject", "icon_eject.png", 16, 0);
+IC("media_player/volume", "icon_volume.png", 16, 0);
+IC("media_player/mute", "icon_mute.png", 16, 0);
#undef IC
#define IC(Name, File, Min, Max) \
@@ -79,5 +82,8 @@ IC("media_player/play", "icon_play_mono.png", 16, 0);
IC("media_player/prev", "icon_prev_mono.png", 16, 0);
IC("media_player/rewind", "icon_rewind_mono.png", 16, 0);
IC("media_player/stop", "icon_stop_mono.png", 16, 0);
+IC("media_player/eject", "icon_eject_mono.png", 16, 0);
+IC("media_player/volume", "icon_volume_mono.png", 16, 0);
+IC("media_player/mute", "icon_mute_mono.png", 16, 0);
#undef IC
diff --git a/edje/edc/elm/player.edc b/edje/edc/elm/player.edc
index 9fa0b3c..0a2b191 100644
--- a/edje/edc/elm/player.edc
+++ b/edje/edc/elm/player.edc
@@ -3,12 +3,34 @@ group { name: "elm/player/base/default";
images.image: "inset_shadow.png" COMP;
images.image: "shine.png" COMP;
images.image: "bevel_out.png" COMP;
-
images.image: "vgrad_med_lighter.png" COMP;
images.image: "bevel_out.png" COMP;
images.image: "shine.png" COMP;
images.image: "vgrad_shadow_bi.png" COMP;
-
+ images.image: "shadow_square_tiny.png" COMP;
+ script {
+ public in_control;
+ public in_volume;
+ public inside;
+
+ public eval_in() {
+ new v1 = get_int(in_control);
+ new v2 = get_int(in_volume);
+ new isin = get_int(inside);
+
+ if (isin) {
+ if ((!v1) && (!v2)) {
+ emit("conhide", "");
+ set_int(inside, 0);
+ }
+ } else {
+ if ((v1) || (v2)) {
+ emit("conshow", "");
+ set_int(inside, 1);
+ }
+ }
+ }
+ }
parts {
part { name: "bg"; type: RECT;
description { state: "default" 0.0;
@@ -49,6 +71,19 @@ group { name: "elm/player/base/default";
visible: 1;
}
}
+ part { name: "volpop_shadow"; mouse_events: 0;
+ clip_to: "volclip";
+ description { state: "default" 0.0;
+ rel1.offset: -3 -2;
+ rel1.to: "volpop";
+ rel2.offset: 3 4;
+ rel2.to: "volpop";
+ image.normal: "shadow_square_tiny.png";
+ image.border: 6 6 6 6;
+ fill.smooth: 0;
+ }
+ }
+
part { name: "bar";
clip_to: "clipper";
description { state: "default" 0.0;
@@ -56,7 +91,7 @@ group { name: "elm/player/base/default";
image.normal: "vgrad_med_lighter.png";
rel1.to_y: "elm.swallow.media_player.prev";
rel1.offset: 1 -1;
- rel2.to_y: "elm.swallow.media_player.position";
+ rel2.to_y: "elm.swallow.media_player.positionslider";
rel2.offset: -2 -1;
fill.smooth: 0;
TILED_HORIZ(120)
@@ -94,6 +129,64 @@ group { name: "elm/player/base/default";
FIXED_SIZE(69, 5)
}
}
+
+ part { name: "volclip"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to: "bg";
+ rel2.to: "bg";
+ color: 255 255 255 0;
+ visible: 0;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ color: 255 255 255 255;
+ visible: 1;
+ }
+ }
+ part { name: "volpop";
+ clip_to: "volclip";
+ description { state: "default" 0.0;
+ color_class: "player_volume";
+ image.normal: "vgrad_med_lighter.png";
+ rel1.to: "elm.swallow.media_player.volumeslider";
+ rel1.offset: -1 -1;
+ rel2.to: "elm.swallow.media_player.volumeslider";
+ rel2.offset: 0 0;
+ fill.smooth: 0;
+ TILED_HORIZ(120)
+ }
+ }
+ part { name: "volpopclip"; type: RECT;
+ clip_to: "volclip";
+ description { state: "default" 0.0;
+ rel1.to: "volpop";
+ rel1.offset: 0 -5;
+ rel2.to: "volpop";
+ color: 255 255 255 255;
+ }
+ }
+ part { name: "volpopbev";
+ clip_to: "volpopclip";
+ description { state: "default" 0.0;
+ rel1.to: "volpop";
+ rel2.to: "volpop";
+ image.normal: "bevel_out.png";
+ image.border: 2 2 2 2;
+ fill.smooth: 0;
+ }
+ }
+ part { name: "volshine"; mouse_events: 0;
+ clip_to: "volpopclip";
+ description { state: "default" 0.0;
+ image.normal: "shine.png";
+ rel1.offset: 0 -2;
+ rel1.to: "volpop";
+ rel2.relative: 1.0 0.0;
+ rel2.offset: -1 2;
+ rel2.to: "volpop";
+ FIXED_SIZE(69, 5)
+ }
+ }
part { name: "elm.swallow.media_player.prev"; type: SWALLOW;
clip_to: "clipper";
@@ -207,7 +300,7 @@ group { name: "elm/player/base/default";
rel2.offset: 0 -1;
}
}
- part { name: "elm.swallow.media_player.info"; type: SWALLOW;
+ part { name: "elm.swallow.media_player.eject"; type: SWALLOW;
clip_to: "clipper";
scale: 1;
description { state: "default" 0.0;
@@ -222,7 +315,55 @@ group { name: "elm/player/base/default";
rel2.offset: 0 -1;
}
}
- part { name: "elm.swallow.media_player.position"; type: SWALLOW;
+ part { name: "elm.swallow.media_player.volume"; type: SWALLOW;
+ clip_to: "clipper";
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ min: BSZ BSZ;
+ align: 0.0 1.0;
+ rel1.to: "elm.swallow.media_player.eject";
+ rel1.relative: 1.0 0.0;
+ rel1.offset: 0 0;
+ rel2.to: "elm.swallow.media_player.eject";
+ rel2.relative: 1.0 1.0;
+ rel2.offset: 0 -1;
+ }
+ description { state: "hidden" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "elm.swallow.media_player.mute"; type: SWALLOW;
+ clip_to: "clipper";
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ min: BSZ BSZ;
+ rel1.to: "elm.swallow.media_player.volume";
+ rel2.to: "elm.swallow.media_player.volume";
+ }
+ description { state: "hidden" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "elm.swallow.media_player.info"; type: SWALLOW;
+ clip_to: "clipper";
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ min: BSZ BSZ;
+ align: 0.0 1.0;
+ rel1.to: "elm.swallow.media_player.volume";
+ rel1.relative: 1.0 0.0;
+ rel1.offset: 0 0;
+ rel2.to: "elm.swallow.media_player.volume";
+ rel2.relative: 1.0 1.0;
+ rel2.offset: 0 -1;
+ }
+ }
+ part { name: "elm.swallow.media_player.positionslider"; type: SWALLOW;
clip_to: "clipper";
description { state: "default" 0.0;
fixed: 0 1;
@@ -232,6 +373,20 @@ group { name: "elm/player/base/default";
rel2.offset: -2 -1;
}
}
+ part { name: "elm.swallow.media_player.volumeslider"; type: SWALLOW;
+ clip_to: "volclip";
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ rel1.to_x: "elm.swallow.media_player.volume";
+ rel1.offset: 0 1;
+ rel2.to: "elm.swallow.media_player.volume";
+ rel2.offset: -1 -3;
+ rel2.relative: 1.0 0.0;
+ align: 0.5 1.0;
+ max: 99999 100;
+ }
+ }
part { name: "shadow"; mouse_events: 0;
description { state: "default" 0.0;
@@ -256,7 +411,10 @@ group { name: "elm/player/base/default";
fill.smooth: 0;
}
}
+
part { name: "controls"; type: RECT; repeat_events: 1;
+ clip_to: "clipper";
+ scale: 1;
description { state: "default" 0.0;
min: BSZ BSZ;
align: 0.5 1.0;
@@ -264,22 +422,95 @@ group { name: "elm/player/base/default";
color: 0 0 0 0;
}
}
+
+ part { name: "volumetop"; type: SPACER;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ rel1.to_y: "elm.swallow.media_player.volumeslider";
+ rel1.relative: 0.0 0.0;
+ rel2.to_y: "controls";
+ rel2.relative: 1.0 0.0;
+ align: 0.5 0.0;
+ }
+ }
+ part { name: "volume"; type: RECT; repeat_events: 1;
+ clip_to: "clipper";
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ rel1.to_y: "volumetop";
+ rel1.to_x: "elm.swallow.media_player.volume";
+ rel1.relative: -1.0 0.0;
+ rel1.offset: 0 -20;
+ rel2.to: "elm.swallow.media_player.volume";
+ rel2.relative: 2.0 1.0;
+ align: 0.5 1.0;
+ color: 0 0 0 0;
+ visible: 0;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ }
+ }
}
programs {
- program {
+ program { name: "ci";
signal: "mouse,in"; source: "controls";
+ script {
+ set_int(in_control, 1);
+ eval_in();
+ }
+ }
+ program { name: "co";
+ signal: "mouse,out"; source: "controls";
+ script {
+ set_int(in_control, 0);
+ eval_in();
+ }
+ }
+ program { name: "vi";
+ signal: "mouse,in"; source: "volume";
+ script {
+ set_int(in_volume, 1);
+ eval_in();
+ }
+ }
+ program { name: "vo";
+ signal: "mouse,out"; source: "volume";
+ script {
+ set_int(in_volume, 0);
+ eval_in();
+ }
+ }
+ program {
+ signal: "conshow"; source: "";
action: STATE_SET "visible" 0.0;
transition: DECELERATE 0.2;
target: "elm.swallow.media_player.prev";
target: "barshad";
+ target: "volume";
}
program {
- signal: "mouse,out"; source: "controls";
+ signal: "conhide"; source: "";
action: STATE_SET "default" 0.0;
transition: DECELERATE 0.5;
target: "elm.swallow.media_player.prev";
target: "barshad";
+ target: "volume";
+ }
+ program {
+ signal: "mouse,in"; source: "volume";
+ action: STATE_SET "visible" 0.0;
+ transition: DECELERATE 0.5;
+ target: "volclip";
+ }
+ program {
+ signal: "mouse,out"; source: "volume";
+ action: STATE_SET "default" 0.0;
+ transition: DECELERATE 0.5;
+ target: "volclip";
}
+
program {
signal: "load"; source: "";
after: "pause/0";
@@ -310,6 +541,38 @@ group { name: "elm/player/base/default";
action: STATE_SET "default" 0.0;
target: "elm.swallow.media_player.play";
}
+
+ program {
+ signal: "load"; source: "";
+ after: "unmute/0";
+ }
+ program {
+ signal: "elm,player,mute"; source: "elm";
+ after: "mute/0";
+ }
+ program {
+ signal: "elm,player,unmute"; source: "elm";
+ after: "unmute/0";
+ }
+ program { name: "mute/0";
+ action: STATE_SET "hidden" 0.0;
+ target: "elm.swallow.media_player.volume";
+ after: "mute/1";
+ }
+ program { name: "mute/1";
+ action: STATE_SET "default" 0.0;
+ target: "elm.swallow.media_player.mute";
+ }
+ program { name: "unmute/0";
+ action: STATE_SET "hidden" 0.0;
+ target: "elm.swallow.media_player.mute";
+ after: "unmute/1";
+ }
+ program { name: "unmute/1";
+ action: STATE_SET "default" 0.0;
+ target: "elm.swallow.media_player.volume";
+ }
+
}
}
@@ -356,7 +619,7 @@ group { name: "elm/player/base/flush";
rel2.offset: 0 -1;
}
}
- part { name: "elm.swallow.media_player.position";
+ part { name: "elm.swallow.media_player.positionslider";
description { state: "default" 0.0;
rel2.offset: -1 -1;
}
diff --git a/edje/edc/elm/slider.edc b/edje/edc/elm/slider.edc
index 610c823..3356c13 100644
--- a/edje/edc/elm/slider.edc
+++ b/edje/edc/elm/slider.edc
@@ -31,6 +31,8 @@ group { name: "elm/slider/horizontal/default";
alias: "elm/slider/horizontal/disabled";
alias: "elm/slider/horizontal/media_player/position/default";
alias: "elm/slider/horizontal/media_player/position/flush";
+ alias: "elm/slider/horizontal/media_player/volume/default";
+ alias: "elm/slider/horizontal/media_player/volume/flush";
images.image: "slider_run_base_horiz.png" COMP;
images.image: "slider_run_bevel_horiz.png" COMP;
images.image: "slider_run_base_light_horiz.png" COMP;
@@ -614,6 +616,8 @@ group { name: "elm/slider/horizontal/indicator/default";
alias: "elm/slider/horizontal/popup/default";
alias: "elm/slider/horizontal/indicator/media_player/position/default";
alias: "elm/slider/horizontal/indicator/media_player/position/flush";
+ alias: "elm/slider/horizontal/indicator/media_player/volume/default";
+ alias: "elm/slider/horizontal/indicator/media_player/volume/flush";
images.image: "darken_rounded_square.png" COMP;
parts {
part { name: "base"; type: SPACER;
@@ -739,6 +743,8 @@ group { name: "elm/slider/vertical/default";
alias: "elm/slider/vertical/disabled";
alias: "elm/slider/vertical/media_player/position/default";
alias: "elm/slider/vertical/media_player/position/flush";
+ alias: "elm/slider/vertical/media_player/volume/default";
+ alias: "elm/slider/vertical/media_player/volume/flush";
images.image: "slider_run_base_vert.png" COMP;
images.image: "slider_run_bevel_vert.png" COMP;
images.image: "slider_run_base_light_vert.png" COMP;
@@ -1037,8 +1043,8 @@ group { name: "elm/slider/vertical/default";
scale: 1;
description { state: "default" 0.0;
align: 0.5 1.0;
- min: SOURCE;
fixed: 1 1;
+ max: 0 0;
rel1.to_y: "elm.swallow.end";
rel1.relative: 0.0 0.0;
rel1.offset: 2 1;
@@ -1048,6 +1054,7 @@ group { name: "elm/slider/vertical/default";
}
description { state: "visible" 0.0;
inherit: "default" 0.0;
+ min: SOURCE;
rel1.offset: 2 -3;
rel2.offset: -3 -3;
}
@@ -1321,6 +1328,8 @@ group { name: "elm/slider/vertical/indicator/default";
alias: "elm/slider/vertical/popup/default";
alias: "elm/slider/vertical/indicator/media_player/position/default";
alias: "elm/slider/vertical/indicator/media_player/position/flush";
+ alias: "elm/slider/vertical/indicator/media_player/volume/default";
+ alias: "elm/slider/vertical/indicator/media_player/volume/flush";
images.image: "darken_rounded_square.png" COMP;
parts {
part { name: "base"; type: SPACER;
diff --git a/edje/edc/elm/toolbar.edc b/edje/edc/elm/toolbar.edc
index 43fc700..a91035d 100644
--- a/edje/edc/elm/toolbar.edc
+++ b/edje/edc/elm/toolbar.edc
@@ -885,7 +885,6 @@ group { name: "elm/toolbar/item/default";
}
program { name: "st2";
signal: "elm,text,visible"; source: "elm";
- action: STATE_SET "default" 0.0;
script {
new m = get_int(btmode);
m |= LABEL; set_int(btmode, m);
diff --git a/edje/img/icon_eject.png b/edje/img/icon_eject.png
new file mode 100644
index 0000000..10c7c49
Binary files /dev/null and b/edje/img/icon_eject.png differ
diff --git a/edje/img/icon_eject_mono.png b/edje/img/icon_eject_mono.png
new file mode 100644
index 0000000..a64bf82
Binary files /dev/null and b/edje/img/icon_eject_mono.png differ
diff --git a/edje/img/icon_mute.png b/edje/img/icon_mute.png
new file mode 100644
index 0000000..f242605
Binary files /dev/null and b/edje/img/icon_mute.png differ
diff --git a/edje/img/icon_mute_mono.png b/edje/img/icon_mute_mono.png
new file mode 100644
index 0000000..029e3d2
Binary files /dev/null and b/edje/img/icon_mute_mono.png differ
diff --git a/edje/img/icon_volume.png b/edje/img/icon_volume.png
new file mode 100644
index 0000000..f9a12d1
Binary files /dev/null and b/edje/img/icon_volume.png differ
diff --git a/edje/img/icon_volume_mono.png b/edje/img/icon_volume_mono.png
new file mode 100644
index 0000000..f6599f2
Binary files /dev/null and b/edje/img/icon_volume_mono.png differ
diff --git a/eject.svgz b/eject.svgz
new file mode 100644
index 0000000..9c90ea5
Binary files /dev/null and b/eject.svgz differ
diff --git a/mock-19.xcf.gz b/mock-19.xcf.gz
index c13c865..a5ee22b 100644
Binary files a/mock-19.xcf.gz and b/mock-19.xcf.gz differ
diff --git a/mute.svgz b/mute.svgz
new file mode 100644
index 0000000..32c21fe
Binary files /dev/null and b/mute.svgz differ
diff --git a/speaker.svgz b/speaker.svgz
new file mode 100644
index 0000000..e4ea888
Binary files /dev/null and b/speaker.svgz differ
--
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk