raster pushed a commit to branch master.
commit 09e5c74ad16ac53e48f8f101af64cfdedf50aa9a
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date: Mon Aug 19 22:13:26 2013 +0900
start border stuff - ews first.
---
edje/dark.edc | 2 +-
edje/edc/elm/border.edc | 731 ++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 732 insertions(+), 1 deletion(-)
diff --git a/edje/dark.edc b/edje/dark.edc
index 0f1b31f..acdc033 100644
--- a/edje/dark.edc
+++ b/edje/dark.edc
@@ -64,7 +64,7 @@ collections {
// needs design work, but edc needs to also scale up and down but not be so
fat when scale is down/finger size smaller
//#include "edc/elm/popup.edc"
// border - this just has to take the e17 borders as-is, combine with comp
swallow for shadow+focus and presto!
-//#include "edc/elm/border.edc"
+#include "edc/elm/border.edc"
#include "edc/elm/spinner.edc"
#include "edc/elm/menu.edc"
#include "edc/elm/clock.edc"
diff --git a/edje/edc/elm/border.edc b/edje/edc/elm/border.edc
new file mode 100644
index 0000000..a75c1ad
--- /dev/null
+++ b/edje/edc/elm/border.edc
@@ -0,0 +1,731 @@
+group { name: "elm/ews/background/default";
+ images.image: "bg_radgrad.png" COMP;
+ images.image: "dot_pattern.png" COMP;
+ parts {
+ part { name: "bg";
+ description { state: "default" 0.0;
+ image.normal: "bg_radgrad.png";
+ image.scale_hint: STATIC;
+ fill.smooth: 0;
+ ASPECT_FILL((1024/653))
+ }
+ }
+ part { name: "pat";
+ description { state: "default" 0.0;
+ image.normal: "dot_pattern.png";
+ TILED_PATTERN(256, 256)
+ }
+ }
+ }
+}
+
+group { name: "elm/ews/decoration/default";
+ images.image: "win_shadow.png" COMP;
+ images.image: "win_glow.png" COMP;
+ images.image: "vgrad_med_lighter.png" COMP;
+ images.image: "vgrad_med_dark.png" COMP;
+ images.image: "bevel_out.png" COMP;
+ images.image: "shine.png" COMP;
+ images.image: "bevel_dark_out.png" COMP;
+ images.image: "sym_close_dark_normal.png" COMP;
+ images.image: "sym_close_dark_selected.png" COMP;
+ images.image: "sym_close_light_normal.png" COMP;
+ images.image: "sym_close_light_selected.png" COMP;
+ images.image: "sym_down_dark_normal.png" COMP;
+ images.image: "sym_down_dark_selected.png" COMP;
+ images.image: "sym_down_light_normal.png" COMP;
+ images.image: "sym_down_light_selected.png" COMP;
+ images.image: "sym_up_dark_normal.png" COMP;
+ images.image: "sym_up_dark_selected.png" COMP;
+ images.image: "sym_up_light_normal.png" COMP;
+ images.image: "sym_up_light_selected.png" COMP;
+ images.image: "glow_round_corners_small.png" COMP;
+ images.image: "knob_round_small_busy.png" COMP;
+ parts {
+ part { name: "shadow"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "win_shadow.png";
+ image.border: 14 14 14 14;
+ image.middle: 0;
+ rel1.offset: -7 -3;
+ rel1.to: "top";
+ rel2.offset: 6 11;
+ rel2.to: "bottom";
+ fill.smooth: 0;
+ }
+ description { state: "hidden" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "glow"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "win_glow.png";
+ image.border: 9 9 9 9;
+ image.middle: 0;
+ rel1.offset: -5 -5;
+ rel1.to: "top";
+ rel2.offset: 4 4;
+ rel2.to: "bottom";
+ fill.smooth: 0;
+ color: 255 255 255 0;
+ visible: 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ color: 255 255 255 255;
+ visible: 1;
+ }
+ }
+ part { name: "top";
+ description { state: "default" 0.0;
+ color_class: "border_top";
+ image.normal: "vgrad_med_lighter.png";
+ rel1.to_y: "title2";
+ rel1.offset: -1 -2;
+ rel2.relative: 1.0 0.0;
+ fill.smooth: 0;
+ TILED_HORIZ(120)
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "vgrad_med_dark.png";
+ }
+ }
+ part { name: "bevel"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "bevel_out.png";
+ image.border: 1 1 1 1;
+ image.middle: 0;
+ rel1.to: "top";
+ rel2.to: "top";
+ fill.smooth: 0;
+ }
+ }
+ part { name: "elm.text.title"; type: TEXT;
+ scale: 1;
+ effect: SHADOW BOTTOM;
+ description { state: "default" 0.0;
+ color_class: "border_title";
+ rel1.relative: 1.0 0.0;
+ rel1.offset: 1 -3;
+ rel1.to_x: "e.event.icon";
+ rel2.relative: 0.0 0.0;
+ rel2.offset: -2 -3;
+ rel2.to_x: "e.event.minimize";
+ align: 0.5 1.0;
+ color: 21 21 21 255;
+ color3: 255 255 255 25;
+ text { font: FNBD; size: 10;
+ text_class: "title_bar";
+ align: 0.5 0.0;
+ min: 0 1;
+ }
+ fixed: 0 1;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "title2"; type: TEXT;
+ scale: 1;
+ effect: SOFT_SHADOW BOTTOM;
+ description { state: "default" 0.0;
+ color_class: "border_title_active";
+ rel1.relative: 1.0 0.0;
+ rel1.offset: 1 2;
+ rel1.to_x: "e.event.icon";
+ rel2.relative: 0.0 0.0;
+ rel2.offset: -1 2;
+ rel2.to_x: "e.event.minimize";
+ align: 0.5 1.0;
+ color: 255 255 255 255;
+ color3: 0 0 0 18;
+ text { font: FNBD; size: 10;
+ text_source: "elm.text.title";
+ text_class: "title_bar";
+ align: 0.5 0.0;
+ min: 0 1;
+ }
+ fixed: 0 1;
+ visible: 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ }
+ }
+ part { name: "icon"; type: SPACER;
+ description { state: "default" 0.0;
+ rel1.to: "e.event.icon";
+ rel2.to: "e.event.icon";
+ }
+ description { state: "bounce1" 0.0;
+ inherit: "default" 0.0;
+ rel1.relative: 0.0 0.15;
+ rel2.relative: 1.0 1.15;
+ }
+ description { state: "bounce2" 0.0;
+ inherit: "default" 0.0;
+ rel1.relative: 0.0 -0.15;
+ rel2.relative: 1.0 0.85;
+ }
+ }
+ part { name: "e.swallow.icon"; type: SWALLOW;
+ description { state: "default" 0.0;
+ rel1.to: "icon";
+ rel1.relative: 0.15 0.15;
+ rel2.to: "icon";
+ rel2.relative: 0.85 0.85;
+ rel2.offset: 0 0;
+ }
+ }
+ part { name: "knob"; mouse_events: 0;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ image.normal: "knob_round_small_busy.png";
+ aspect: 1.0 1.0; aspect_preference: BOTH;
+ max: 20 20;
+ rel1.to: "e.event.icon";
+ rel2.to: "e.event.icon";
+ fixed: 1 1;
+ }
+ }
+
+ part { name: "clip1"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to: "top";
+ rel2.to: "top";
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "clip2"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to: "top";
+ rel2.to: "top";
+ visible: 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ }
+ }
+ part { name: "close1";
+ clip_to: "clip1";
+ description { state: "default" 0.0;
+ image.normal: "sym_close_dark_normal.png";
+ rel1.to: "e.event.close";
+ rel2.to: "e.event.close";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_close_dark_selected.png";
+ }
+ }
+ part { name: "max1";
+ clip_to: "clip1";
+ description { state: "default" 0.0;
+ image.normal: "sym_up_dark_normal.png";
+ rel1.to: "e.event.maximize";
+ rel2.to: "e.event.maximize";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_up_dark_selected.png";
+ }
+ }
+ part { name: "min1";
+ clip_to: "clip1";
+ description { state: "default" 0.0;
+ image.normal: "sym_down_dark_normal.png";
+ rel1.to: "e.event.minimize";
+ rel2.to: "e.event.minimize";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_down_dark_selected.png";
+ }
+ }
+ part { name: "close2";
+ clip_to: "clip2";
+ description { state: "default" 0.0;
+ image.normal: "sym_close_light_normal.png";
+ rel1.to: "e.event.close";
+ rel2.to: "e.event.close";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_close_light_selected.png";
+ }
+ }
+ part { name: "max2";
+ clip_to: "clip2";
+ description { state: "default" 0.0;
+ image.normal: "sym_up_light_normal.png";
+ rel1.to: "e.event.maximize";
+ rel2.to: "e.event.maximize";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_up_light_selected.png";
+ }
+ }
+ part { name: "min2";
+ clip_to: "clip2";
+ description { state: "default" 0.0;
+ image.normal: "sym_down_light_normal.png";
+ rel1.to: "e.event.minimize";
+ rel2.to: "e.event.minimize";
+ min: 15 15;
+ max: 15 15;
+ fixed: 1 1;
+ }
+ description { state: "selected" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "sym_down_light_selected.png";
+ }
+ }
+ part { name: "e.event.icon"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 0.0 0.0;
+ rel1.to_y: "top";
+ rel2.relative: 0.0 0.0;
+ align: 0.0 0.5;
+ aspect: 1.0 1.0; aspect_preference: VERTICAL;
+ color: 0 0 0 0;
+ }
+ }
+ program {
+ signal: "mouse,clicked,1"; source: "e.event.icon";
+ action: SIGNAL_EMIT "elm,action,menu" "elm";
+ }
+ part { name: "e.event.titlebar"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to_y: "top";
+ rel1.relative: 1.0 0.0;
+ rel1.to_x: "e.event.icon";
+ rel2.relative: 0.0 0.0;
+ rel2.to_x: "e.event.minimize";
+ color: 0 0 0 0;
+ }
+ }
+ program {
+ signal: "mouse,down,1"; source: "e.event.titlebar";
+ action: SIGNAL_EMIT "elm,action,move,start" "elm";
+ }
+ program {
+ signal: "mouse,up,1"; source: "e.event.titlebar";
+ action: SIGNAL_EMIT "elm,action,move,stop" "elm";
+ }
+ part { name: "e.event.close"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 1.0 0.0;
+ rel1.to_y: "top";
+ rel2.relative: 1.0 0.0;
+ align: 1.0 0.5;
+ aspect: 1.0 1.0; aspect_preference: VERTICAL;
+ color: 0 0 0 0;
+ }
+ }
+ program {
+ signal: "mouse,clicked,1"; source: "e.event.close";
+ action: SIGNAL_EMIT "elm,action,close" "elm";
+ }
+ part { name: "e.event.maximize"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to_y: "top";
+ rel1.relative: -0.25 0.0;
+ rel1.offset: -1 0;
+ rel1.to_x: "e.event.close";
+ rel2.relative: -0.25 0.0;
+ rel2.to_x: "e.event.close";
+ align: 1.0 0.5;
+ aspect: 1.0 1.0; aspect_preference: VERTICAL;
+ color: 0 0 0 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "e.event.maximize2"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to: "e.event.maximize";
+ rel2.to: "e.event.maximize";
+ color: 0 0 0 0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ }
+ }
+ program {
+ signal: "mouse,clicked,1"; source: "e.event.maximize";
+ action: SIGNAL_EMIT "elm,action,maximize" "elm";
+ }
+ program {
+ signal: "mouse,clicked,1"; source: "e.event.maximize2";
+ action: SIGNAL_EMIT "elm,action,restore" "elm";
+ }
+ part { name: "e.event.minimize"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.to_y: "top";
+ rel1.relative: 0.0 0.0;
+ rel1.offset: -1 0;
+ rel1.to_x: "e.event.maximize";
+ rel2.relative: 0.0 0.0;
+ rel2.to_x: "e.event.maximize";
+ align: 1.0 0.5;
+ aspect: 1.0 1.0; aspect_preference: VERTICAL;
+ color: 0 0 0 0;
+ }
+ }
+ program {
+ signal: "mouse,clicked,1"; source: "e.event.minimize";
+ action: SIGNAL_EMIT "elm,action,iconify" "elm";
+ }
+ part { name: "e.event.resize.tl"; type: RECT;
+ description { state: "default" 0.0;
+ rel2.relative: 0.0 0.0;
+ min: 32 4;
+ align: 0.0 0.0;
+ color: 0 0 0 0;
+ }
+ }
+ part { name: "e.event.resize.t"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 1.0 0.0;
+ rel1.to_x: "e.event.resize.tl";
+ rel2.relative: 0.0 0.0;
+ rel2.to_x: "e.event.resize.tr";
+ min: 0 4;
+ align: 0.5 0.0;
+ color: 0 0 0 0;
+ }
+ }
+ part { name: "e.event.resize.tr"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 1.0 0.0;
+ rel2.relative: 1.0 0.0;
+ min: 32 4;
+ align: 1.0 0.0;
+ color: 0 0 0 0;
+ }
+ }
+ part { name: "bottom"; type: RECT;
+ description { state: "default" 0.0;
+ color_class: "border_bottom";
+ rel1.relative: 0.0 1.0;
+ rel2.relative: 1.0 1.0;
+ rel2.offset: -1 4;
+ min: 0 5;
+ color: 64 64 64 255;
+ fixed: 0 1;
+ }
+ description { state: "shaded" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ }
+ part { name: "bevel2";
+ description { state: "default" 0.0;
+ image.normal: "bevel_dark_out.png";
+ image.border: 1 1 1 1;
+ image.middle: 0;
+ rel1.to: "bottom";
+ rel2.to: "bottom";
+ fill.smooth: 0;
+ }
+ description { state: "shaded" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "e.event.resize.bl"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 0.0 1.0;
+ rel2.relative: 0.0 1.0;
+ min: 32 5;
+ align: 0.0 1.0;
+ color: 0 0 0 0;
+ fixed: 1 1;
+ }
+ description { state: "shaded" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ }
+ part { name: "e.event.resize.b"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 1.0 1.0;
+ rel1.to_x: "e.event.resize.tl";
+ rel2.relative: 0.0 1.0;
+ rel2.to_x: "e.event.resize.tr";
+ min: 0 5;
+ align: 0.5 1.0;
+ color: 0 0 0 0;
+ fixed: 0 1;
+ }
+ description { state: "shaded" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ }
+ part { name: "e.event.resize.br"; type: RECT;
+ description { state: "default" 0.0;
+ rel1.relative: 1.0 1.0;
+ rel2.relative: 1.0 1.0;
+ min: 32 5;
+ align: 1.0 1.0;
+ color: 0 0 0 0;
+ fixed: 1 1;
+ }
+ description { state: "shaded" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ description { state: "max" 0.0;
+ inherit: "default" 0.0;
+ min: 0 0;
+ visible: 0;
+ }
+ }
+ part { name: "shine"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "shine.png";
+ rel1.offset: 0 -2;
+ rel1.to: "top";
+ rel2.relative: 1.0 0.0;
+ rel2.offset: -1 2;
+ rel2.to: "top";
+ FIXED_SIZE(69, 5)
+ }
+ }
+ part { name: "focus"; type: RECT; repeat_events: 1;
+ description { state: "default" 0.0;
+ rel1.to: "top";
+ rel2.to: "bottom";
+ color: 0 0 0 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ program {
+ signal: "mouse,down,1"; source: "focus";
+ action: SIGNAL_EMIT "elm,action,focus" "elm";
+ }
+ program {
+ signal: "elm,state,focus,on"; source: "elm";
+ action: STATE_SET "focused" 0.0;
+ transition: SINUSOIDAL 0.1;
+ target: "glow";
+ target: "focus";
+ after: "focus2";
+ }
+ program { name: "focus2";
+ action: STATE_SET "default" 0.0;
+ transition: SINUSOIDAL 0.4;
+ target: "glow";
+ }
+ program {
+ signal: "elm,state,focus,off"; source: "elm";
+ action: STATE_SET "default" 0.0;
+ transition: SINUSOIDAL 0.1;
+ target: "focus";
+ target: "glow";
+ }
+ program {
+ signal: "elm,state,focus,on"; source: "elm";
+ action: STATE_SET "focused" 0.0;
+ target: "top";
+ target: "elm.text.title";
+ target: "title2";
+ target: "clip1";
+ target: "clip2";
+ }
+ program {
+ signal: "elm,state,focus,off"; source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "top";
+ target: "elm.text.title";
+ target: "title2";
+ target: "clip1";
+ target: "clip2";
+ }
+
+ program {
+ signal: "elm,state,maximized,on"; source: "elm";
+ action: STATE_SET "max" 0.0;
+ target: "e.event.maximize";
+ target: "e.event.maximize2";
+ target: "bottom";
+ target: "bevel2";
+ target: "e.event.resize.bl";
+ target: "e.event.resize.b";
+ target: "e.event.resize.br";
+ }
+ program {
+ signal: "elm,state,maximized,off"; source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "e.event.maximize";
+ target: "e.event.maximize2";
+ target: "bottom";
+ target: "bevel2";
+ target: "e.event.resize.bl";
+ target: "e.event.resize.b";
+ target: "e.event.resize.br";
+ }
+ program {
+ signal: "mouse,down,*"; source: "e.event.close";
+ action: STATE_SET "selected" 0.0;
+ target: "close1";
+ target: "close2";
+ }
+ program {
+ signal: "mouse,up,*"; source: "e.event.close";
+ action: STATE_SET "default" 0.0;
+ target: "close1";
+ target: "close2";
+ }
+ program {
+ signal: "mouse,down,*"; source: "e.event.maximize*";
+ action: STATE_SET "selected" 0.0;
+ target: "max1";
+ target: "max2";
+ }
+ program {
+ signal: "mouse,up,*"; source: "e.event.maximize*";
+ action: STATE_SET "default" 0.0;
+ target: "max1";
+ target: "max2";
+ }
+ program {
+ signal: "mouse,down,*"; source: "e.event.minimize";
+ action: STATE_SET "selected" 0.0;
+ target: "min1";
+ target: "min2";
+ }
+ program {
+ signal: "mouse,up,*"; source: "e.event.minimize";
+ action: STATE_SET "default" 0.0;
+ target: "min1";
+ target: "min2";
+ }
+ }
+}
+
+group { name: "elm/ews/decoration/borderless";
+ images.image: "win_shadow.png" COMP;
+ images.image: "win_glow.png" COMP;
+ parts {
+ part { name: "shadow"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "win_shadow.png";
+ image.border: 14 14 14 14;
+ image.middle: 0;
+ rel1.offset: -7 -3;
+ rel2.offset: 6 11;
+ fill.smooth: 0;
+ }
+ description { state: "hidden" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "glow"; mouse_events: 0;
+ description { state: "default" 0.0;
+ image.normal: "win_glow.png";
+ image.border: 9 9 9 9;
+ image.middle: 0;
+ rel1.offset: -5 -5;
+ rel2.offset: 4 4;
+ fill.smooth: 0;
+ color: 255 255 255 0;
+ visible: 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ color: 255 255 255 255;
+ visible: 1;
+ }
+ }
+ part { name: "focus"; type: RECT; repeat_events: 1;
+ description { state: "default" 0.0;
+ color: 0 0 0 0;
+ }
+ description { state: "focused" 0.0;
+ inherit: "default" 0.0;
+ visible: 0;
+ }
+ }
+ program {
+ signal: "mouse,down,1"; source: "focus";
+ action: SIGNAL_EMIT "elm,action,focus" "elm";
+ }
+ program {
+ signal: "elm,state,focus,on"; source: "elm";
+ action: STATE_SET "focused" 0.0;
+ transition: SINUSOIDAL 0.1;
+ target: "glow";
+ target: "focus";
+ after: "focus2";
+ }
+ program { name: "focus2";
+ action: STATE_SET "default" 0.0;
+ transition: SINUSOIDAL 0.4;
+ target: "glow";
+ }
+ program {
+ signal: "elm,state,focus,off"; source: "elm";
+ action: STATE_SET "default" 0.0;
+ transition: SINUSOIDAL 0.1;
+ target: "focus";
+ target: "glow";
+ }
+ }
+}
--
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk