From e262b5f2e1068e9aee5300a7bb9dea9b47ec0b92 Mon Sep 17 00:00:00 2001 From: Dave Andreoli Date: Sat, 21 Feb 2015 19:55:29 +0100 Subject: [PATCH] Theme for the cropper --- data/themes/crop.edc | 327 +++++++++++++++++++++--------------- data/themes/sel_border.png | Bin 0 -> 249 bytes data/themes/sel_corner1.png | Bin 0 -> 217 bytes data/themes/sel_corner3.png | Bin 0 -> 219 bytes data/themes/sel_corner5.png | Bin 0 -> 214 bytes data/themes/sel_corner7.png | Bin 0 -> 219 bytes 6 files changed, 194 insertions(+), 133 deletions(-) create mode 100644 data/themes/sel_border.png create mode 100644 data/themes/sel_corner1.png create mode 100644 data/themes/sel_corner3.png create mode 100644 data/themes/sel_corner5.png create mode 100644 data/themes/sel_corner7.png diff --git a/data/themes/crop.edc b/data/themes/crop.edc index 306cdae..60d47ee 100644 --- a/data/themes/crop.edc +++ b/data/themes/crop.edc @@ -1,3 +1,15 @@ + +#define FIXED_SIZE(_W, _H) \ + min: _W _H; max: _W _H; + +images { + image: "sel_border.png" COMP; + image: "sel_corner1.png" COMP; + image: "sel_corner3.png" COMP; + image: "sel_corner5.png" COMP; + image: "sel_corner7.png" COMP; +} + collections { group { name: "ephoto,image,cropper,base"; script { @@ -150,7 +162,7 @@ collections { mouse_events: 0; clip_to: "clipper"; description { state: "default" 0.0; - color: 0 0 0 200; + color: 0 0 0 150; rel1.to: "clipper"; rel1.relative: 0.0 0.0; rel2.to: "ephoto.swallow.cropper"; @@ -163,7 +175,7 @@ collections { mouse_events: 0; clip_to: "clipper"; description { state: "default" 0.0; - color: 0 0 0 200; + color: 0 0 0 150; rel1.to: "shader_top"; rel1.relative: 0.0 1.0; rel2.to: "ephoto.swallow.cropper"; @@ -176,7 +188,7 @@ collections { mouse_events: 0; clip_to: "clipper"; description { state: "default" 0.0; - color: 0 0 0 200; + color: 0 0 0 150; rel1.to: "shader_left"; rel1.relative: 0.0 1.0; rel2.to: "clipper"; @@ -189,7 +201,7 @@ collections { mouse_events: 0; clip_to: "clipper"; description { state: "default" 0.0; - color: 0 0 0 200; + color: 0 0 0 150; rel1.to: "shader_top"; rel1.relative: 1.0 0.0; rel2.to: "shader_bottom"; @@ -199,146 +211,195 @@ collections { } } group { name: "ephoto,image,cropper"; - parts { - part { name: "cropper"; - type: RECT; - scale: 1; - mouse_events: 1; + parts { + part { name: "cropper"; type: IMAGE; + repeat_events: 1; description { state: "default" 0.0; - color: 255 255 255 0; + color: 255 255 255 200; + image { + normal: "sel_border.png"; + border: 3 3 3 3; + middle: NONE; + } } - } - part { name: "dragger"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 255 255 255 0; - rel1.to: "cropper"; - rel1.relative: 0.0 0.0; - rel2.to: "cropper"; - rel2.relative: 1.0 1.0; + part { name: "dragger"; type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1 { + to: "handle1"; + relative: 1.0 1.0; + } + rel2 { + to: "handle5"; + relative: 0.0 0.0; + } + } } - } - part { name: "handle2"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 0 0; - rel1.to: "cropper"; - rel1.relative: 0.0 0.0; - rel2.to: "cropper"; - rel2.relative: 1.0 0.0; + part { name: "handle1"; type: IMAGE; + repeat_events: 1; + description { state: "default" 0.0; + FIXED_SIZE(22, 22) + rel1.offset: 1 1; + align: 0.0 0.0; + color: 255 255 255 0; + image.normal: "sel_corner1.png"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 200; + } } - } - part { name: "handle4"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 10 99999; - align: 1 1; - rel1.to: "cropper"; - rel1.relative: 1.0 0.0; - rel2.to: "cropper"; - rel2.relative: 1.0 1.0; + part { name: "handle2"; type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1 { + to: "handle1"; + relative: 1.0 0.0; + offset: 3 2; + } + rel2 { + to: "handle3"; + relative: 0.0 1.0; + offset: -4 -2; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 80; + } } - } - part { name: "handle6"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 1 1; - rel1.to: "cropper"; - rel1.relative: 0.0 1.0; - rel2.to: "cropper"; - rel2.relative: 1.0 1.0; + part { name: "handle3"; type: IMAGE; + repeat_events: 1; + description { state: "default" 0.0; + FIXED_SIZE(22, 22) + rel1.offset: 0 1; + rel2.offset: -2 -1; + align: 1.0 0.0; + color: 255 255 255 0; + image.normal: "sel_corner3.png"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 200; + } } - } - part { name: "handle8"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 10 99999; - align: 0 0; - rel1.to: "cropper"; - rel1.relative: 0.0 0.0; - rel2.to: "cropper"; - rel2.relative: 0.0 1.0; + part { name: "handle4"; type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1 { + to: "handle3"; + relative: 0.0 1.0; + offset: 1 3; + } + rel2 { + to: "handle5"; + relative: 1.0 0.0; + offset: -3 -4; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 80; + } } - } - part { name: "handle1"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 0 0; - rel1.to: "cropper"; - rel1.relative: 0.0 0.0; - rel2.to: "cropper"; - rel2.relative: 0.0 0.0; + part { name: "handle5"; type: IMAGE; + repeat_events: 1; + description { state: "default" 0.0; + FIXED_SIZE(22, 22) + rel2.offset: -2 -2; + align: 1.0 1.0; + color: 255 255 255 0; + image.normal: "sel_corner5.png"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 200; + } } - } - part { name: "handle3"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 1 0; - rel1.to: "cropper"; - rel1.relative: 1.0 0.0; - rel2.to: "cropper"; - rel2.relative: 1.0 0.0; + part { name: "handle6"; type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + rel1 { + to: "handle7"; + relative: 1.0 0.0; + offset: 3 1; + } + rel2 { + to: "handle5"; + relative: 0.0 1.0; + offset: -4 -3; + } + color: 255 255 255 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 80; + } } - } - part { name: "handle5"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 1 1; - rel1.to: "cropper"; - rel1.relative: 1.0 1.0; - rel2.to: "cropper"; - rel2.relative: 1.0 1.0; + part { name: "handle7"; type: IMAGE; + repeat_events: 1; + description { state: "default" 0.0; + FIXED_SIZE(22, 22) + rel1.offset: 1 0; + rel2.offset: -1 -2; + align: 0.0 1.0; + color: 255 255 255 0; + image.normal: "sel_corner7.png"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 200; + } } - } - part { name: "handle7"; - type: RECT; - scale: 1; - mouse_events: 1; - description { state: "default" 0.0; - color: 0 0 0 255; - min: 10 10; - max: 99999 10; - align: 0 1; - rel1.to: "cropper"; - rel1.relative: 0.0 1.0; - rel2.to: "cropper"; - rel2.relative: 0.0 1.0; + part { name: "handle8"; type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + rel1 { + to: "handle1"; + relative: 0.0 1.0; + offset: 2 3; + } + rel2 { + to: "handle7"; + relative: 1.0 0.0; + offset: -2 -4; + } + color: 255 255 255 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 80; + } } + program { + signal: "mouse,in"; source: "cropper"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.3 ; + targets: "handle1" "handle3" "handle5" "handle7"; + } + program { + signal: "mouse,out"; source: "cropper"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.3 ; + targets: "handle1" "handle3" "handle5" "handle7"; + } +#define SHOW_HIDE_LATERALS(_NAME_) \ + program { signal: "mouse,in"; source: _NAME_; \ + action: STATE_SET "visible" 0.0; \ + transition: LINEAR 0.3 ; \ + target: _NAME_; } \ + program { signal: "mouse,out"; source: _NAME_; \ + action: STATE_SET "default" 0.0; \ + transition: LINEAR 0.3 ; \ + target: _NAME_; } + SHOW_HIDE_LATERALS("handle2") + SHOW_HIDE_LATERALS("handle4") + SHOW_HIDE_LATERALS("handle6") + SHOW_HIDE_LATERALS("handle8") +#undef SHOW_HIDE_LATERALS } } } diff --git a/data/themes/sel_border.png b/data/themes/sel_border.png new file mode 100644 index 0000000000000000000000000000000000000000..e14069072e1371d7713b8f2d8876705a81d9e015 GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0vp^CLqkg1SGwrdiDS*&H|6fVxatWAns&L6L`G{D9B#o z>FdgVpGj0mlJor0X{JCS$r9Iy66gHf+|;}h2Ir#G#FEq$h4Rdj3lr*<{an^LB{Ts5;$v0K literal 0 HcmV?d00001 diff --git a/data/themes/sel_corner1.png b/data/themes/sel_corner1.png new file mode 100644 index 0000000000000000000000000000000000000000..a78179ccfb52f69f5a8210c1a8a4a9055a41cb4f GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H1|*Mc$*~4foCO|{#X$M%K-|fgCh&R@P>{XE z)7O>#K9i_`v{KONn=^qzk|nMYCC>S|xv6<249-QVi6yBi3gww484B*6z5(HleBwYw z!JaOTAr`0KUfsysV8G*YQT|Aac}x2#f$cNe8<-p&#V2}*{A0E`*}FdV*}`sfeI`)>87sbL*ExVfk|nMYCC>S|xv6<249-QVi6yBi3gww484B*6z5(HleBwYw zp`I>|Ar`0KUfn2oz<`IzVb13ko`nldSh_PgmY<64GO;`@J4Nf?iX$slwKC6~{XE z)7O>#K9i_`ESI6mwWmNK$r9Iy66gHf+|;}h2Ir#G#FEq$h4Rdj3|C7*`UC)dZk8XiJrE%mcPfMzpzy85}Sb4q9e E0QYJ@SO5S3 literal 0 HcmV?d00001 diff --git a/data/themes/sel_corner7.png b/data/themes/sel_corner7.png new file mode 100644 index 0000000000000000000000000000000000000000..04bcbe203f3ed4adb33b3509313f3f43c4e78064 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H1|*Mc$*~4foCO|{#X$K^AimC6vgXr&pdfpR zr>`sfeI`)>S@9sHT{b`=$r9Iy66gHf+|;}h2Ir#G#FEq$h4Rdj3y9VyV0x58I^cuI#YBwEu4c}I=_ literal 0 HcmV?d00001