summaryrefslogtreecommitdiff
path: root/data/elementary/objects
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2016-03-23 12:56:14 -0700
committerCedric BAIL <cedric@osg.samsung.com>2016-03-23 13:24:41 -0700
commitc2a1c49ab2042f559b28e840e54feb8494888e0e (patch)
treec6eb110b7c479499854eede9d0c3ab0a80c9a11a /data/elementary/objects
parent9340855597e7e465435c69b6278650346688da14 (diff)
elementary: move all legacy files to their expected new location.
Diffstat (limited to 'data/elementary/objects')
-rw-r--r--data/elementary/objects/Makefile.am98
-rw-r--r--data/elementary/objects/border.pngbin0 -> 2606 bytes
-rw-r--r--data/elementary/objects/border2.pngbin0 -> 2865 bytes
-rw-r--r--data/elementary/objects/border3.pngbin0 -> 3162 bytes
-rw-r--r--data/elementary/objects/border4.pngbin0 -> 3131 bytes
-rw-r--r--data/elementary/objects/border5.pngbin0 -> 4420 bytes
-rw-r--r--data/elementary/objects/border6.pngbin0 -> 5707 bytes
-rw-r--r--data/elementary/objects/clo.pngbin0 -> 120231 bytes
-rw-r--r--data/elementary/objects/combobox_multiple.edc61
-rw-r--r--data/elementary/objects/cross.pngbin0 -> 18620 bytes
-rw-r--r--data/elementary/objects/cursors.edc226
-rw-r--r--data/elementary/objects/font_preview.edc40
-rw-r--r--data/elementary/objects/multibuttonentry.edc100
-rw-r--r--data/elementary/objects/multip.edc17
-rw-r--r--data/elementary/objects/over.pngbin0 -> 73621 bytes
-rw-r--r--data/elementary/objects/postit_ent.edc26
-rw-r--r--data/elementary/objects/sky.jpgbin0 -> 69378 bytes
-rw-r--r--data/elementary/objects/test.edc789
-rw-r--r--data/elementary/objects/test_external.edc1031
-rw-r--r--data/elementary/objects/test_focus_style.edc454
-rw-r--r--data/elementary/objects/test_prefs.edc150
-rw-r--r--data/elementary/objects/test_prefs.epc113
-rw-r--r--data/elementary/objects/under.pngbin0 -> 34935 bytes
23 files changed, 3105 insertions, 0 deletions
diff --git a/data/elementary/objects/Makefile.am b/data/elementary/objects/Makefile.am
new file mode 100644
index 0000000000..86593ca8a8
--- /dev/null
+++ b/data/elementary/objects/Makefile.am
@@ -0,0 +1,98 @@
1AUTOMAKE_OPTIONS = 1.4 foreign
2MAINTAINERCLEANFILES = Makefile.in
3
4include ../../Makefile_Elm_Helpers.am
5
6EDJE_CC_FLAGS += -id $(top_srcdir)/data/objects -fd $(top_srcdir)/data/objects
7
8filesdir = $(datadir)/elementary/objects
9
10files_DATA = test.edj test_external.edj multip.edj cursors.edj combobox_multiple.edj font_preview.edj postit_ent.edj multibuttonentry.edj test_prefs.edj test_prefs.epb test_focus_style.edj
11
12EXTRA_DIST = \
13test.edc \
14test_external.edc \
15test_prefs.edc \
16test_prefs.epc \
17multip.edc \
18cursors.edc \
19combobox_multiple.edc \
20font_preview.edc \
21postit_ent.edc \
22multibuttonentry.edc \
23test_focus_style.edc \
24over.png \
25under.png \
26sky.jpg \
27clo.png \
28cross.png \
29border.png \
30border2.png \
31border3.png \
32border4.png \
33border5.png \
34border6.png
35
36test.edj: Makefile $(EXTRA_DIST)
37 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
38 $(top_srcdir)/data/objects/test.edc \
39 $(top_builddir)/data/objects/test.edj
40
41test_external.edj: Makefile $(EXTRA_DIST)
42 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
43 $(top_srcdir)/data/objects/test_external.edc \
44 $(top_builddir)/data/objects/test_external.edj
45
46multip.edj: Makefile $(EXTRA_DIST)
47 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
48 $(top_srcdir)/data/objects/multip.edc \
49 $(top_builddir)/data/objects/multip.edj
50
51colorpreview.edj: Makefile $(EXTRA_DIST)
52 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
53 $(top_srcdir)/data/objects/colorpreview.edc \
54 $(top_builddir)/data/objects/colorpreview.edj
55
56cursors.edj: Makefile $(EXTRA_DIST)
57 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
58 $(top_srcdir)/data/objects/cursors.edc \
59 $(top_builddir)/data/objects/cursors.edj
60
61combobox_multiple.edj: Makefile combobox_multiple.edc
62 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
63 $(top_srcdir)/data/objects/combobox_multiple.edc \
64 $(top_builddir)/data/objects/combobox_multiple.edj
65
66font_preview.edj: Makefile $(EXTRA_DIST)
67 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
68 $(top_srcdir)/data/objects/font_preview.edc \
69 $(top_builddir)/data/objects/font_preview.edj
70
71postit_ent.edj: Makefile $(EXTRA_DIST)
72 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
73 $(top_srcdir)/data/objects/postit_ent.edc \
74 $(top_builddir)/data/objects/postit_ent.edj
75multibuttonentry.edj: Makefile $(EXTRA_DIST)
76 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
77 $(top_srcdir)/data/objects/multibuttonentry.edc \
78 $(top_builddir)/data/objects/multibuttonentry.edj
79
80test_prefs.edj: Makefile test_prefs.edc
81 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
82 $(top_srcdir)/data/objects/test_prefs.edc \
83 $(top_builddir)/data/objects/test_prefs.edj
84
85test_prefs.epb: Makefile test_prefs.epc
86 $(AM_V_EPB)$(ELM_PREFS_CC) $(ELM_PREFS_FLAGS) \
87 $(top_srcdir)/data/objects/test_prefs.epc \
88 $(top_builddir)/data/objects/test_prefs.epb
89
90test_focus_style.edj: Makefile test_focus_style.edc
91 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_CC_FLAGS) \
92 -id $(top_srcdir)/data/themes/img \
93 $(top_srcdir)/data/objects/test_focus_style.edc \
94 $(top_builddir)/data/objects/test_focus_style.edj
95
96clean-local:
97 rm -f *.edj
98 rm -f test_prefs.epb
diff --git a/data/elementary/objects/border.png b/data/elementary/objects/border.png
new file mode 100644
index 0000000000..07ee9f8815
--- /dev/null
+++ b/data/elementary/objects/border.png
Binary files differ
diff --git a/data/elementary/objects/border2.png b/data/elementary/objects/border2.png
new file mode 100644
index 0000000000..cdf499d918
--- /dev/null
+++ b/data/elementary/objects/border2.png
Binary files differ
diff --git a/data/elementary/objects/border3.png b/data/elementary/objects/border3.png
new file mode 100644
index 0000000000..b9219c2f6e
--- /dev/null
+++ b/data/elementary/objects/border3.png
Binary files differ
diff --git a/data/elementary/objects/border4.png b/data/elementary/objects/border4.png
new file mode 100644
index 0000000000..ca4115c89b
--- /dev/null
+++ b/data/elementary/objects/border4.png
Binary files differ
diff --git a/data/elementary/objects/border5.png b/data/elementary/objects/border5.png
new file mode 100644
index 0000000000..07e199146b
--- /dev/null
+++ b/data/elementary/objects/border5.png
Binary files differ
diff --git a/data/elementary/objects/border6.png b/data/elementary/objects/border6.png
new file mode 100644
index 0000000000..df6320b6bf
--- /dev/null
+++ b/data/elementary/objects/border6.png
Binary files differ
diff --git a/data/elementary/objects/clo.png b/data/elementary/objects/clo.png
new file mode 100644
index 0000000000..dedfc519a7
--- /dev/null
+++ b/data/elementary/objects/clo.png
Binary files differ
diff --git a/data/elementary/objects/combobox_multiple.edc b/data/elementary/objects/combobox_multiple.edc
new file mode 100644
index 0000000000..96543833ed
--- /dev/null
+++ b/data/elementary/objects/combobox_multiple.edc
@@ -0,0 +1,61 @@
1collections {
2group {
3 name: "combobox_multiple_test";
4 parts{
5 part {
6 name: "bg";
7 type: RECT;
8 mouse_events: 1;
9 scale:1;
10 description {
11 state: "default" 0.0;
12 color: 0 0 0 0;
13 rel1.relative: 0.0 0.0;
14 rel2.relative: 1.0 1.0;
15 }
16 }
17 part{
18 name: "top.left";
19 type: RECT;
20 scale: 1;
21 description {
22 state: "default" 0.0;
23 min : 0 0;
24 fixed: 1 1;
25 rel1 { relative: 0.0 0.0; to: bg; }
26 rel2 { relative: 0.0 0.0; to: bg; }
27 align: 0.0 0.0;
28 color: 0 0 0 0;
29 }
30 }
31 part{
32 name: "bottom.right";
33 type: RECT;
34 scale: 1;
35 description {
36 state: "default" 0.0;
37 min : 0 0;
38 fixed: 1 1;
39 rel1 { relative: 1.0 1.0; to: bg; }
40 rel2 { relative: 1.0 1.0; to: bg; }
41 align: 1.0 1.0;
42 color: 0 0 0 0;
43 }
44 }
45 part {
46 name: "combobox";
47 type: SWALLOW;
48 mouse_events: 1;
49 scale:1;
50 description {
51 state: "default" 0.0;
52 min : 0 0;
53 max : -1 300;
54 rel1 { relative: 0.0 1.0; to: top.left; }
55 rel2 { relative: 0.0 0.0; to: bottom.right; }
56 align: 0.0 0.0;
57 }
58 }
59 }
60}
61}
diff --git a/data/elementary/objects/cross.png b/data/elementary/objects/cross.png
new file mode 100644
index 0000000000..9670d7fb0f
--- /dev/null
+++ b/data/elementary/objects/cross.png
Binary files differ
diff --git a/data/elementary/objects/cursors.edc b/data/elementary/objects/cursors.edc
new file mode 100644
index 0000000000..9f66763539
--- /dev/null
+++ b/data/elementary/objects/cursors.edc
@@ -0,0 +1,226 @@
1/////////////////////////////////////////////////////////////////////////////
2// CURSOR
3/////////////////////////////////////////////////////////////////////////////
4collections {
5 group { name: "elm/cursor/hand2/default";
6 min: 30 30;
7 max: 30 30;
8 data {
9 item: "hot_x" "0";
10 item: "hot_y" "0";
11 }
12 parts {
13 part { name: "base";
14 type: RECT;
15 mouse_events: 0;
16 description { state: "default" 0.0;
17 color: 0 255 0 255;
18 }
19 }
20 }
21 }
22
23 group { name: "elm/cursor/hand3/default";
24 min: 30 30;
25 max: 30 30;
26 data {
27 item: "hot_x" "0";
28 item: "hot_y" "0";
29 }
30 parts {
31 part { name: "base";
32 type: RECT;
33 mouse_events: 0;
34 description { state: "default" 0.0;
35 color: 255 0 0 255;
36 }
37 description { state: "blue" 0.0;
38 color: 0 0 255 255;
39 }
40 }
41 }
42 programs {
43 program { name: "load";
44 signal: "load";
45 source: "";
46 after: "go_blue";
47 }
48 program { name: "go_blue";
49 action: STATE_SET "blue" 0.0;
50 transition: LINEAR 1;
51 target: "base";
52 after: "go_red";
53 }
54 program { name: "go_red";
55 action: STATE_SET "default" 0.0;
56 transition: LINEAR 1;
57 target: "base";
58 after: "go_blue";
59 }
60 }
61 }
62
63 group { name: "elm/cursor/hand3/transparent";
64 min: 30 30;
65 max: 30 30;
66 data {
67 item: "hot_x" "0";
68 item: "hot_y" "0";
69 }
70 parts {
71 part { name: "base";
72 type: RECT;
73 mouse_events: 0;
74 description { state: "default" 0.0;
75 color: 255 0 0 120;
76 }
77 }
78 }
79 }
80
81 group { name: "test/layout/events";
82 parts {
83 part { name: "events";
84 type: RECT;
85 mouse_events: 1;
86 description { state: "default" 0.0;
87 color: 0 255 0 255;
88 rel2.relative: 0.5 1;
89 }
90 }
91 part { name: "noevents";
92 type: RECT;
93 mouse_events: 0;
94 description { state: "default" 0.0;
95 color: 200 255 200 255;
96 rel1.relative: 0.5 0;
97 }
98 }
99 }
100 }
101
102 group { name: "test/layout/noevents";
103 parts {
104 part { name: "base";
105 type: RECT;
106 mouse_events: 0;
107 description { state: "default" 0.0;
108 color: 255 255 255 255;
109 }
110 }
111 part { name: "top-left";
112 type: RECT;
113 mouse_events: 1;
114 description { state: "default" 0.0;
115 rel1.relative: 0.1 0.1;
116 rel2.relative: 0.5 0.5;
117 color: 0 0 255 255;
118 }
119 }
120 part { name: "top-right";
121 type: RECT;
122 mouse_events: 1;
123 description { state: "default" 0.0;
124 rel1.relative: 0.5 0.1;
125 rel2.relative: 0.9 0.5;
126 color: 0 255 255 255;
127 }
128 }
129 part { name: "bottom-left";
130 type: RECT;
131 mouse_events: 0;
132 description { state: "default" 0.0;
133 rel1.relative: 0.1 0.5;
134 rel2.relative: 0.5 0.9;
135 color: 255 0 255 255;
136 }
137 }
138 part { name: "bottom-right";
139 type: RECT;
140 mouse_events: 0;
141 description { state: "default" 0.0;
142 rel1.relative: 0.5 0.5;
143 rel2.relative: 0.9 0.9;
144 color: 255 255 0 255;
145 }
146 }
147 }
148 }
149
150 group { name: "test/layout/parts";
151 alias: "test/layout/parts2";
152 parts {
153 part { name: "base";
154 type: RECT;
155 mouse_events: 1;
156 description { state: "default" 0.0;
157 color: 0 0 0 255;
158 }
159 }
160 part { name: "top-left";
161 type: RECT;
162 mouse_events: 1;
163 description { state: "default" 0.0;
164 rel1.relative: 0.1 0.1;
165 rel2.relative: 0.5 0.5;
166 color: 0 0 255 255;
167 }
168 }
169 part { name: "top-right";
170 type: RECT;
171 mouse_events: 1;
172 description { state: "default" 0.0;
173 rel1.relative: 0.5 0.1;
174 rel2.relative: 0.9 0.5;
175 color: 0 255 255 255;
176 }
177 }
178 part { name: "bottom-left";
179 type: RECT;
180 mouse_events: 0;
181 description { state: "default" 0.0;
182 rel1.relative: 0.1 0.5;
183 rel2.relative: 0.5 0.9;
184 color: 255 0 255 255;
185 }
186 }
187 part { name: "bottom-right";
188 type: RECT;
189 mouse_events: 0;
190 description { state: "default" 0.0;
191 rel1.relative: 0.5 0.5;
192 rel2.relative: 0.9 0.9;
193 color: 255 255 0 255;
194 }
195 }
196 }
197 }
198
199 group { name: "test/layout/swallow";
200 parts {
201 part { name: "base";
202 type: RECT;
203 mouse_events: 1;
204 description { state: "default" 0.0;
205 color: 255 255 255 255;
206 }
207 }
208 part { name: "swallow1";
209 type: SWALLOW;
210 mouse_events: 1;
211 description { state: "default" 0.0;
212 rel1.relative: 0.1 0.1;
213 rel2.relative: 0.9 0.5;
214 }
215 }
216 part { name: "swallow2";
217 type: SWALLOW;
218 mouse_events: 1;
219 description { state: "default" 0.0;
220 rel1.relative: 0.1 0.5;
221 rel2.relative: 0.9 0.9;
222 }
223 }
224 }
225 }
226}
diff --git a/data/elementary/objects/font_preview.edc b/data/elementary/objects/font_preview.edc
new file mode 100644
index 0000000000..302c2e85e5
--- /dev/null
+++ b/data/elementary/objects/font_preview.edc
@@ -0,0 +1,40 @@
1color_classes {
2 color_class {
3 name: "entry_text";
4 color: 0 0 0 255;
5 }
6}
7
8collections {
9
10 group { name: "font_preview";
11 parts {
12
13 /* some fonts have weird alignments, thus they overflow badly */
14 part { name: "clipper";
15 type: RECT;
16 description {
17 state: "default" 0.0;
18 }
19 }
20
21 part { name: "elm.text";
22 type: TEXT;
23 mouse_events: 0;
24 scale: 1;
25 clip_to: "clipper";
26 description {
27 state: "default" 0.0;
28 color_class: "entry_text";
29 text {
30 font: "Sans";
31 min: 0 1;
32 size: 10;
33 align: 0.5 0.5;
34 text_class: "font_preview";
35 }
36 }
37 }
38 }
39 }
40}
diff --git a/data/elementary/objects/multibuttonentry.edc b/data/elementary/objects/multibuttonentry.edc
new file mode 100644
index 0000000000..8644a16267
--- /dev/null
+++ b/data/elementary/objects/multibuttonentry.edc
@@ -0,0 +1,100 @@
1
2collections {
3group {
4 name: "multibuttonentry_test";
5 parts{
6 part {
7 name: "bg";
8 type: RECT;
9 mouse_events: 1;
10 scale:1;
11 description {
12 state: "default" 0.0;
13 color: 0 0 0 0;
14 rel1.relative: 0.0 0.0;
15 rel2.relative: 1.0 1.0;
16 }
17 }
18 part{
19 name: "top.left";
20 type: RECT;
21 scale: 1;
22 description {
23 state: "default" 0.0;
24 min : 0 0;
25 fixed: 1 1;
26 rel1 { relative: 0.0 0.0;to:bg; }
27 rel2 { relative: 0.0 0.0;to:bg; }
28 align: 0.0 0.0;
29 color: 0 0 0 0;
30 }
31 }
32 part{
33 name: "bottom.right";
34 type: RECT;
35 scale: 1;
36 description {
37 state: "default" 0.0;
38 min : 0 0;
39 fixed: 1 1;
40 rel1 { relative: 1.0 1.0;to:bg; }
41 rel2 { relative: 1.0 1.0;to:bg; }
42 align: 1.0 1.0;
43 color: 0 0 0 0;
44 }
45 }
46 part {
47 name: "bg.box";
48 type: RECT;
49 mouse_events: 0;
50 scale:1;
51 description {
52 state: "default" 0.0;
53 rel1.to: box;
54 rel2.to: box;
55 color: 230 220 188 255;
56 }
57 }
58 part {
59 name: "box";
60 type: SWALLOW;
61 mouse_events: 1;
62 scale:1;
63 description {
64 state: "default" 0.0;
65 min : 0 5;
66 fixed: 0 1;
67 rel1 { relative: 1.0 1.0;to: top.left;}
68 rel2 { relative: 0.0 1.0;to_x: bottom.right;to_y: top.left;}
69 align: 0.0 0.0;
70 }
71 }
72 part {
73 name: "bg.multibuttonentry";
74 type: RECT;
75 mouse_events: 0;
76 scale:1;
77 description {
78 state: "default" 0.0;
79 rel1.to: multibuttonentry;
80 rel2.to: multibuttonentry;
81 color: 246 245 237 0;
82 }
83 }
84 part {
85 name: "multibuttonentry";
86 type: SWALLOW;
87 mouse_events: 1;
88 scale:1;
89 description {
90 state: "default" 0.0;
91 min : 0 5;
92 fixed: 0 1;
93 rel1 { relative: 0.0 1.0; to: box; }
94 rel2 { relative: 0.0 0.0; to:bottom.right; }
95 align: 0.0 0.0;
96 }
97 }
98 }
99}
100}
diff --git a/data/elementary/objects/multip.edc b/data/elementary/objects/multip.edc
new file mode 100644
index 0000000000..66be6bba1a
--- /dev/null
+++ b/data/elementary/objects/multip.edc
@@ -0,0 +1,17 @@
1collections {
2 group { name: "point";
3 images {
4 image: "cross.png" COMP;
5 }
6 parts {
7 part { name: "sky";
8 mouse_events: 0;
9 description { state: "default" 0.0;
10 min: 301 301;
11 image.normal: "cross.png";
12 }
13 }
14 }
15 }
16}
17
diff --git a/data/elementary/objects/over.png b/data/elementary/objects/over.png
new file mode 100644
index 0000000000..5303e2dc49
--- /dev/null
+++ b/data/elementary/objects/over.png
Binary files differ
diff --git a/data/elementary/objects/postit_ent.edc b/data/elementary/objects/postit_ent.edc
new file mode 100644
index 0000000000..9968907543
--- /dev/null
+++ b/data/elementary/objects/postit_ent.edc
@@ -0,0 +1,26 @@
1collections {
2 group {
3 name: "main";
4 images {
5// image: "1.png" COMP;
6 }
7 parts {
8 part {
9 name: "bg";
10 type: RECT;
11 description {
12 state: "default" 0.0;
13 color: 247 239 132 255;
14 }
15 }
16 part {
17 name: "ent";
18 type: SWALLOW;
19 description {
20 state: "default" 0.0;
21 }
22 }
23 }
24 }
25}
26
diff --git a/data/elementary/objects/sky.jpg b/data/elementary/objects/sky.jpg
new file mode 100644
index 0000000000..6132e7c22f
--- /dev/null
+++ b/data/elementary/objects/sky.jpg
Binary files differ
diff --git a/data/elementary/objects/test.edc b/data/elementary/objects/test.edc
new file mode 100644
index 0000000000..84407e5ad1
--- /dev/null
+++ b/data/elementary/objects/test.edc
@@ -0,0 +1,789 @@
1collections {
2 group { name: "layout";
3 images {
4 image: "over.png" COMP;
5 image: "under.png" COMP;
6 image: "sky.jpg" LOSSY 80;
7 image: "clo.png" LOSSY 60;
8 }
9 parts {
10 part { name: "clip";
11 type: RECT;
12 description { state: "default" 0.0;
13 }
14 }
15 part { name: "sky";
16 mouse_events: 1;
17 clip_to: "clip";
18 description { state: "default" 0.0;
19 aspect: 2.6225 2.6225;
20 aspect_preference: NONE;
21 image.normal: "sky.jpg";
22 }
23 description { state: "drift" 0.0;
24 inherit: "default" 0.0;
25 fill {
26 origin {
27 relative: 1.0 0.0;
28 offset: 0 0;
29 }
30 }
31 }
32 }
33 part { name: "under";
34 mouse_events: 0;
35 clip_to: "clip";
36 description { state: "default" 0.0;
37 align: 0.5 0.0;
38 aspect: 1.486068111 1.486068111;
39 aspect_preference: HORIZONTAL;
40 image.normal: "under.png";
41 }
42 }
43 part { name: "text";
44 type: TEXT;
45 clip_to: "clip";
46 description { state: "default" 0.0;
47 color: 255 255 0 255;
48 rel1.relative: 0.3 0.02;
49 rel2.relative: 0.6 0.12;
50 align: 0.5 0.5;
51 text {
52 font: "Sans:style=Bold";
53 size: 14;
54 min: 1 1;
55 ellipsis: -1;
56 text: "some edje text here";
57 }
58 }
59 }
60 part { name: "element1";
61 type: SWALLOW;
62 clip_to: "clip";
63 description { state: "default" 0.0;
64 rel1.relative: 0.2 0.2;
65 rel2.relative: 0.4 0.3;
66 }
67 }
68 part { name: "element2";
69 type: SWALLOW;
70 clip_to: "clip";
71 description { state: "default" 0.0;
72 rel1.relative: 0.6 0.3;
73 rel2.relative: 0.9 0.5;
74 }
75 }
76 part { name: "element3";
77 type: SWALLOW;
78 clip_to: "clip";
79 description { state: "default" 0.0;
80 rel1.relative: 0.1 0.7;
81 rel2.relative: 0.9 0.9;
82 }
83 }
84 part { name: "over";
85 mouse_events: 0;
86 clip_to: "clip";
87 description { state: "default" 0.0;
88 align: 0.0 1.0;
89 aspect: 2.238095238 2.238095238;
90 max: 329 147;
91 aspect_preference: HORIZONTAL;
92 image.normal: "over.png";
93 }
94 }
95 part { name: "clo";
96 mouse_events: 0;
97 clip_to: "clip";
98 description { state: "default" 0.0;
99 fill {
100 smooth: 0;
101 origin {
102 relative: 0.0 0.0;
103 offset: 0 0;
104 }
105 size {
106 relative: 1.84722 1.0;
107 offset: 0 0;
108 }
109 }
110 image.normal: "clo.png";
111 }
112 description { state: "drift" 0.0;
113 inherit: "default" 0.0;
114 fill {
115 origin {
116 relative: 1.84722 0.0;
117 offset: 0 0;
118 }
119 size {
120 relative: 1.84722 1.0;
121 offset: 0 0;
122 }
123 }
124 }
125 }
126 }
127 programs {
128 program { name: "anim1";
129 signal: "load";
130 source: "";
131 action: STATE_SET "drift" 0.0;
132 transition: LINEAR 10.0;
133 target: "clo";
134 after: "anim2";
135 }
136 program { name: "anim2";
137 action: STATE_SET "default" 0.0;
138 target: "clo";
139 after: "anim1";
140 }
141 program { name: "anim3";
142 signal: "load";
143 source: "";
144 action: STATE_SET "drift" 0.0;
145 transition: LINEAR 40.0;
146 target: "sky";
147 after: "anim4";
148 }
149 program { name: "anim4";
150 action: STATE_SET "default" 0.0;
151 target: "sky";
152 after: "anim3";
153 }
154 }
155 }
156 group { name: "layout2";
157 images {
158 image: "over.png" COMP;
159 image: "under.png" COMP;
160 image: "sky.jpg" LOSSY 80;
161 image: "clo.png" LOSSY 60;
162 }
163 parts {
164 part { name: "clip";
165 type: RECT;
166 description { state: "default" 0.0;
167 }
168 }
169 part { name: "sky";
170 mouse_events: 0;
171 clip_to: "clip";
172 description { state: "default" 0.0;
173 aspect: 2.6225 2.6225;
174 aspect_preference: NONE;
175 image.normal: "sky.jpg";
176 }
177 description { state: "drift" 0.0;
178 inherit: "default" 0.0;
179 fill {
180 origin {
181 relative: 1.0 0.0;
182 offset: 0 0;
183 }
184 }
185 }
186 }
187 part { name: "under";
188 mouse_events: 0;
189 clip_to: "clip";
190 description { state: "default" 0.0;
191 align: 0.5 0.0;
192 aspect: 1.486068111 1.486068111;
193 aspect_preference: HORIZONTAL;
194 image.normal: "under.png";
195 }
196 }
197 part { name: "text";
198 type: TEXT;
199 clip_to: "clip";
200 description { state: "default" 0.0;
201 color: 255 255 0 255;
202 rel1.relative: 0.3 0.02;
203 rel2.relative: 0.6 0.12;
204 align: 0.5 0.5;
205 text {
206 font: "Sans:style=Bold";
207 size: 14;
208 min: 1 1;
209 ellipsis: -1;
210 text: "some edje text here";
211 }
212 }
213 }
214 part { name: "element1";
215 type: SWALLOW;
216 clip_to: "clip";
217 description { state: "default" 0.0;
218 rel1.relative: 0.2 0.2;
219 rel2.relative: 0.4 0.3;
220 }
221 }
222 part { name: "element2";
223 type: SWALLOW;
224 clip_to: "clip";
225 description { state: "default" 0.0;
226 rel1.relative: 0.6 0.3;
227 rel2.relative: 0.9 0.5;
228 }
229 }
230 part { name: "element3";
231 type: SWALLOW;
232 clip_to: "clip";
233 description { state: "default" 0.0;
234 rel1.relative: 0.1 0.7;
235 rel2.relative: 0.9 0.9;
236 }
237 }
238 part { name: "over";
239 mouse_events: 0;
240 clip_to: "clip";
241 description { state: "default" 0.0;
242 align: 0.0 1.0;
243 aspect: 2.238095238 2.238095238;
244 max: 329 147;
245 aspect_preference: HORIZONTAL;
246 image.normal: "over.png";
247 }
248 }
249 part { name: "clo";
250 mouse_events: 0;
251 clip_to: "clip";
252 description { state: "default" 0.0;
253 fill {
254 smooth: 0;
255 origin {
256 relative: 0.0 0.0;
257 offset: 0 0;
258 }
259 size {
260 relative: 1.84722 1.0;
261 offset: 0 0;
262 }
263 }
264 image.normal: "clo.png";
265 }
266 description { state: "drift" 0.0;
267 inherit: "default" 0.0;
268 fill {
269 origin {
270 relative: 1.84722 0.0;
271 offset: 0 0;
272 }
273 size {
274 relative: 1.84722 1.0;
275 offset: 0 0;
276 }
277 }
278 }
279 }
280 }
281 }
282 group { name: "launcher_page";
283 parts {
284 part { name: "slot.0.0"; type: SWALLOW;
285 description { state: "default" 0.0;
286 rel2.relative: 0.25 0.25;
287 }
288 }
289 part { name: "slot.1.0"; type: SWALLOW;
290 description { state: "default" 0.0;
291 rel1.relative: 0.25 0.0;
292 rel2.relative: 0.50 0.25;
293 }
294 }
295 part { name: "slot.2.0"; type: SWALLOW;
296 description { state: "default" 0.0;
297 rel1.relative: 0.50 0.0;
298 rel2.relative: 0.75 0.25;
299 }
300 }
301 part { name: "slot.3.0"; type: SWALLOW;
302 description { state: "default" 0.0;
303 rel1.relative: 0.75 0.0;
304 rel2.relative: 1.00 0.25;
305 }
306 }
307 part { name: "slot.0.1"; type: SWALLOW;
308 description { state: "default" 0.0;
309 rel1.relative: 0.0 0.25;
310 rel2.relative: 0.25 0.50;
311 }
312 }
313 part { name: "slot.1.1"; type: SWALLOW;
314 description { state: "default" 0.0;
315 rel1.relative: 0.25 0.25;
316 rel2.relative: 0.50 0.50;
317 }
318 }
319 part { name: "slot.2.1"; type: SWALLOW;
320 description { state: "default" 0.0;
321 rel1.relative: 0.50 0.25;
322 rel2.relative: 0.75 0.50;
323 }
324 }
325 part { name: "slot.3.1"; type: SWALLOW;
326 description { state: "default" 0.0;
327 rel1.relative: 0.75 0.25;
328 rel2.relative: 1.00 0.50;
329 }
330 }
331 part { name: "slot.0.2"; type: SWALLOW;
332 description { state: "default" 0.0;
333 rel1.relative: 0.0 0.50;
334 rel2.relative: 0.25 0.75;
335 }
336 }
337 part { name: "slot.1.2"; type: SWALLOW;
338 description { state: "default" 0.0;
339 rel1.relative: 0.25 0.50;
340 rel2.relative: 0.50 0.75;
341 }
342 }
343 part { name: "slot.2.2"; type: SWALLOW;
344 description { state: "default" 0.0;
345 rel1.relative: 0.50 0.50;
346 rel2.relative: 0.75 0.75;
347 }
348 }
349 part { name: "slot.3.2"; type: SWALLOW;
350 description { state: "default" 0.0;
351 rel1.relative: 0.75 0.50;
352 rel2.relative: 1.00 0.75;
353 }
354 }
355 part { name: "slot.0.3"; type: SWALLOW;
356 description { state: "default" 0.0;
357 rel1.relative: 0.0 0.75;
358 rel2.relative: 0.25 1.00;
359 }
360 }
361 part { name: "slot.1.3"; type: SWALLOW;
362 description { state: "default" 0.0;
363 rel1.relative: 0.25 0.75;
364 rel2.relative: 0.50 1.00;
365 }
366 }
367 part { name: "slot.2.3"; type: SWALLOW;
368 description { state: "default" 0.0;
369 rel1.relative: 0.50 0.75;
370 rel2.relative: 0.75 1.00;
371 }
372 }
373 part { name: "slot.3.3"; type: SWALLOW;
374 description { state: "default" 0.0;
375 rel1.relative: 0.75 0.75;
376 }
377 }
378 }
379 }
380 group { name: "launcher_icon";
381 parts {
382 part { name: "slot"; type: SWALLOW;
383 description { state: "default" 0.0;
384 rel2 {
385 relative: 1.00 0.00;
386 to_y: "label";
387 }
388 }
389 description { state: "drag1" 0.0;
390 inherit: "default" 0.0;
391 rel1.offset: -5 -3;
392 rel2.offset: -5 -3;
393 }
394 description { state: "drag2" 0.0;
395 inherit: "default" 0.0;
396 rel1.offset: 10 3;
397 rel2.offset: 10 3;
398 }
399 description { state: "drag3" 0.0;
400 inherit: "default" 0.0;
401 rel1.offset: -1 6;
402 rel2.offset: -1 6;
403 }
404 }
405 part { name: "label"; type: TEXT;
406 effect: SOFT_SHADOW;
407 scale: 1;
408 description { state: "default" 0.0;
409 fixed: 1 1;
410 align: 0.5 1.0;
411 rel1.relative: 0.0 1.00;
412 color: 224 224 224 255;
413 color3: 0 0 0 64;
414 text {
415 font: "Sans:style=Bold,Edje-Vera-Bold";
416 size: 10;
417 min: 0 1;
418 max: 1 1;
419 align: 0.5 0.0;
420 }
421 }
422 description { state: "hi" 0.0;
423 inherit: "default" 0.0;
424 color: 255 0 0 255;
425 color3: 0 0 0 255;
426 }
427 description { state: "drag1" 0.0;
428 inherit: "default" 0.0;
429 color: 255 0 0 255;
430 color3: 0 0 0 255;
431 rel1.offset: -5 -3;
432 rel2.offset: -5 -3;
433 }
434 description { state: "drag2" 0.0;
435 inherit: "default" 0.0;
436 color: 255 0 0 255;
437 color3: 0 0 0 255;
438 rel1.offset: 10 3;
439 rel2.offset: 10 3;
440 }
441 description { state: "drag3" 0.0;
442 inherit: "default" 0.0;
443 color: 255 0 0 255;
444 color3: 0 0 0 255;
445 rel1.offset: -1 6;
446 rel2.offset: -1 6;
447 }
448 }
449 }
450 programs {
451 program { name: "click";
452 signal: "click"; source: "app";
453 action: STATE_SET "hi" 0.0;
454 transition: LINEAR 0.5;
455 target: "label";
456 }
457 program { name: "drag1";
458 signal: "drag"; source: "app";
459 action: STATE_SET "drag1" 0.0;
460 transition: LINEAR 0.1;
461 target: "label";
462 target: "slot";
463 after: "drag2";
464 }
465 program { name: "drag2";
466 action: STATE_SET "drag2" 0.0;
467 transition: LINEAR 0.2;
468 target: "label";
469 target: "slot";
470 after: "drag3";
471 }
472 program { name: "drag3";
473 action: STATE_SET "drag3" 0.0;
474 transition: LINEAR 0.1;
475 target: "label";
476 target: "slot";
477 after: "drag1";
478 }
479 program { name: "drop";
480 signal: "drop"; source: "app";
481 action: STATE_SET "default" 0.0;
482 target: "label";
483 target: "slot";
484 }
485 program { name: "unclick";
486 signal: "unclick"; source: "app";
487 action: STATE_SET "default" 0.0;
488 transition: LINEAR 0.5;
489 target: "label";
490 target: "slot";
491 }
492 program { name: "cancel";
493 signal: "cancel"; source: "app";
494 action: STATE_SET "default" 0.0;
495 transition: LINEAR 0.5;
496 target: "label";
497 target: "slot";
498 }
499 }
500 }
501 group { name: "twolines";
502 parts {
503 part { name: "clip";
504 type: RECT;
505 description { state: "default" 0.0;
506 }
507 }
508 part { name: "under";
509 mouse_events: 0;
510 clip_to: "clip";
511 type: RECT;
512 description { state: "default" 0.0;
513 color: 0 128 200 30;
514 }
515 }
516 part { name: "element1";
517 type: SWALLOW;
518 clip_to: "clip";
519 description { state: "default" 0.0;
520 rel1 {
521 relative: 0.0 0.0;
522 offset: 4 4;
523 }
524 rel2 {
525 relative: 1.0 0.5;
526 offset: -5 -3;
527 }
528 }
529 }
530 part { name: "element2";
531 type: SWALLOW;
532 clip_to: "clip";
533 description { state: "default" 0.0;
534 rel1 {
535 relative: 0.0 0.5;
536 offset: 4 2;
537 }
538 rel2 {
539 relative: 1.0 1.0;
540 offset: -5 -5;
541 }
542 }
543 }
544 }
545 }
546
547 group { name: "bg_overlay";
548 images {
549 image: "clo.png" LOSSY 60;
550 }
551 parts {
552 part { name: "clip";
553 type: RECT;
554 description { state: "default" 0.0;
555 }
556 }
557 part { name: "clo";
558 mouse_events: 0;
559 clip_to: "clip";
560 description { state: "default" 0.0;
561 fill {
562 smooth: 0;
563 origin {
564 relative: 0.0 0.0;
565 offset: 0 0;
566 }
567 size {
568 relative: 1.84722 1.0;
569 offset: 0 0;
570 }
571 }
572 image.normal: "clo.png";
573 }
574 description { state: "drift" 0.0;
575 inherit: "default" 0.0;
576 fill {
577 origin {
578 relative: 1.84722 0.0;
579 offset: 0 0;
580 }
581 size {
582 relative: 1.84722 1.0;
583 offset: 0 0;
584 }
585 }
586 }
587 }
588 }
589 programs {
590 program { name: "anim1";
591 signal: "load";
592 source: "";
593 action: STATE_SET "drift" 0.0;
594 transition: LINEAR 10.0;
595 target: "clo";
596 after: "anim2";
597 }
598 program { name: "anim2";
599 action: STATE_SET "default" 0.0;
600 target: "clo";
601 after: "anim1";
602 }
603 }
604 }
605 group {
606 name: "test/layout";
607 images {
608 image: "sky.jpg" LOSSY 80;
609 }
610 parts {
611 part {
612 name: "bg";
613 description {
614 state: "default" 0.0;
615 color: 255 255 255 100;
616 image.normal: "sky.jpg";
617 }
618 }
619 part {
620 name: "swallow";
621 type: SWALLOW;
622 description {
623 state: "default" 0.0;
624 rel1.offset: 8 8;
625 rel2.offset: -7 -7;
626 }
627 }
628 }
629 }
630 group {
631 name: "win_config";
632 parts {
633 part {
634 name: "swallow";
635 type: SWALLOW;
636 description {
637 state: "default" 0.0;
638 min: 10 150;
639 }
640 }
641 }
642 }
643 group { name: "access_page";
644 parts {
645 part { name: "slot.0.0"; type: SWALLOW;
646 description { state: "default" 0.0;
647 rel2.relative: 0.33 0.33;
648 }
649 }
650 part { name: "slot.1.0"; type: SWALLOW;
651 description { state: "default" 0.0;
652 rel1.relative: 0.33 0.0;
653 rel2.relative: 0.66 0.33;
654 }
655 }
656 part { name: "slot.2.0"; type: SWALLOW;
657 description { state: "default" 0.0;
658 rel1.relative: 0.66 0.0;
659 rel2.relative: 1.0. 0.33;
660 }
661 }
662 part { name: "slot.0.1"; type: SWALLOW;
663 description { state: "default" 0.0;
664 rel1.relative: 0.0 0.33;
665 rel2.relative: 0.33 0.66;
666 }
667 }
668 part { name: "slot.1.1"; type: SWALLOW;
669 description { state: "default" 0.0;
670 rel1.relative: 0.33 0.33;
671 rel2.relative: 0.66 0.66;
672 }
673 }
674 part { name: "slot.2.1"; type: SWALLOW;
675 description { state: "default" 0.0;
676 rel1.relative: 0.63 0.33;
677 rel2.relative: 1.0 0.66;
678 }
679 }
680 part { name: "slot.0.2"; type: SWALLOW;
681 description { state: "default" 0.0;
682 rel1.relative: 0.0 0.66;
683 rel2.relative: 0.33 1.0;
684 }
685 }
686 part { name: "slot.1.2"; type: SWALLOW;
687 description { state: "default" 0.0;
688 rel1.relative: 0.33 0.66;
689 rel2.relative: 0.66 1.0;
690 }
691 }
692 part { name: "slot.2.2"; type: SWALLOW;
693 description { state: "default" 0.0;
694 rel1.relative: 0.66 0.66;
695 }
696 }
697 }
698 }
699 group { name: "access_icon";
700 parts {
701 part { name: "slot"; type: SWALLOW;
702 description { state: "default" 0.0;
703 }
704 }
705 part { name: "access"; type: RECT;
706 description { state: "default" 0.0;
707 rel1.to: "slot";
708 rel2.to: "slot";
709 color: 0 0 0 0;
710 }
711 }
712 }
713 }
714 group { name: "access_color_page";
715 parts {
716 part { name: "red"; type: RECT;
717 description { state: "default" 0.0;
718 rel1.relative: 0.1 0.1;
719 rel2.relative: 0.35 0.35;
720 color: 255 0 0 255;
721 }
722 }
723 part { name: "green"; type: RECT;
724 description { state: "default" 0.0;
725 rel1.relative: 0.65 0.1;
726 rel2.relative: 0.9 0.35;
727 color: 0 255 0 255;
728 }
729 }
730 part { name: "blue"; type: RECT;
731 description { state: "default" 0.0;
732 rel1.relative: 0.1 0.65;
733 rel2.relative: 0.35. 0.9;
734 color: 0 0 255 255;
735 }
736 }
737 part { name: "black"; type: RECT;
738 description { state: "default" 0.0;
739 rel1.relative: 0.65 0.65;
740 rel2.relative: 0.9 0.9;
741 color: 0 0 0 255;
742 }
743 }
744 part { name: "center"; type: SWALLOW;
745 description { state: "default" 0.0;
746 rel1.relative: 0.35 0.35;
747 rel2.relative: 0.65 0.65;
748 }
749 }
750 }
751 }
752group { name: "page_layout";
753 parts {
754 part { name: "bg";
755 type: RECT;
756 scale: 1;
757 description { state: "default" 0.0;
758 min: 400 500;
759 max: 400 500;
760 color: 0 0 0 0;
761 }
762 }
763 part { name: "page";
764 type: SWALLOW;
765 scale: 1;
766 description { state: "default" 0.0;
767 rel1.relative: 0.1 0.1;
768 rel1.to:"bg";
769 rel2.relative: 0.9 0.9;
770 rel2.to:"bg";
771 }
772 }
773 part { name: "text";
774 type: TEXT;
775 scale: 1;
776 description { state: "default" 0.0;
777 fixed: 1 1;
778 rel1.relative: 0.5 0.5;
779 rel2.relative: 0.5 0.5;
780 text {
781 min: 1 1;
782 size: 50;
783 ellipsis: -1;
784 }
785 }
786 }
787 }
788
789}
diff --git a/data/elementary/objects/test_external.edc b/data/elementary/objects/test_external.edc
new file mode 100644
index 0000000000..e30464e857
--- /dev/null
+++ b/data/elementary/objects/test_external.edc
@@ -0,0 +1,1031 @@
1
2#define COMMON_EXTERNAL_UNDER \
3 part { name: "clip"; \
4 type: RECT; \
5 description { state: "default" 0.0; \
6 } \
7 } \
8 part { name: "under"; \
9 mouse_events: 0; \
10 clip_to: "clip"; \
11 description { state: "default" 0.0; \
12 align: 0.5 0.0; \
13 aspect: 2.6255 2.6255; \
14 image.normal: "sky.jpg"; \
15 } \
16 }
17
18#define COMMON_EXTERNAL_OVER \
19 part { name: "over"; \
20 mouse_events: 0; \
21 clip_to: "clip"; \
22 description { state: "default" 0.0; \
23 fill { \
24 smooth: 0; \
25 origin { \
26 relative: 0.0 0.0; \
27 offset: 0 0; \
28 } \
29 size { \
30 relative: 1.84722 1.0; \
31 offset: 0 0; \
32 } \
33 } \
34 image.normal: "clo.png"; \
35 } \
36 description { state: "drift" 0.0; \
37 inherit: "default" 0.0; \
38 fill { \
39 origin { \
40 relative: 1.84722 0.0; \
41 offset: 0 0; \
42 } \
43 size { \
44 relative: 1.84722 1.0; \
45 offset: 0 0; \
46 } \
47 } \
48 } \
49 }
50
51#define COMMON_EXTERNAL_PROGRAM \
52 program { name: "anim1"; \
53 signal: "load"; \
54 source: ""; \
55 action: STATE_SET "drift" 0.0; \
56 transition: LINEAR 10.0; \
57 target: "over"; \
58 after: "anim2"; \
59 } \
60 program { name: "anim2"; \
61 action: STATE_SET "default" 0.0; \
62 target: "over"; \
63 after: "anim1"; \
64 }
65
66images {
67 image: "sky.jpg" COMP;
68 image: "clo.png" LOSSY 60;
69}
70
71collections {
72 group { name: "external/button";
73 parts {
74 COMMON_EXTERNAL_UNDER
75 part { name: "ext_label1";
76 type: EXTERNAL;
77 source: "elm/label";
78 clip_to: "clip";
79 description { state: "default" 0.0;
80 max: 200 50;
81 align: 0.5 0.0;
82 params {
83 string: "label" "<b>Label and Buttons are edje externals</>\
84<br>Click buttons to perform edje animations.<br><b>BUG</>: disabled style.";
85 }
86 }
87 }
88 part { name: "ext_button1";
89 type: EXTERNAL;
90 source: "elm/button";
91 clip_to: "clip";
92 description { state: "default" 0.0;
93 max: 200 50;
94 align: 0.5 0.0;
95 rel1.offset: 0 60;
96 params {
97 string: "label" "icon + label";
98 string: "icon" "home";
99 }
100 }
101 }
102 part { name: "ext_button2";
103 type: EXTERNAL;
104 source: "elm/button";
105 clip_to: "clip";
106 description { state: "default" 0.0;
107 max: 200 50;
108 align: 0.5 0.0;
109 rel1.offset: 0 120;
110 params {
111 string: "label" "only label";
112 }
113 }
114 }
115 part { name: "ext_button3";
116 type: EXTERNAL;
117 source: "elm/button";
118 clip_to: "clip";
119 description { state: "default" 0.0;
120 max: 50 50;
121 align: 0.5 0.0;
122 rel1.offset: 0 180;
123 params {
124 string: "icon" "home";
125 }
126 }
127 description { state: "left" 0.0;
128 inherit: "default" 0.0;
129 align: 0.2 0.0;
130 }
131 description { state: "right" 0.0;
132 inherit: "default" 0.0;
133 align: 0.8 0.0;
134 }
135 }
136 part { name: "ext_button4";
137 type: EXTERNAL;
138 source: "elm/button";
139 clip_to: "clip";
140 description { state: "default" 0.0;
141 max: 200 50;
142 align: 0.5 0.0;
143 rel1.offset: 0 240;
144 params {
145 string: "label" "anchor style";
146 string: "style" "anchor";
147 }
148 }
149 }
150 part { name: "ext_button5";
151 type: EXTERNAL;
152 source: "elm/button";
153 clip_to: "clip";
154 description { state: "default" 0.0;
155 max: 200 50;
156 align: 0.5 0.0;
157 rel1.offset: 0 300;
158 params {
159 string: "label" "disabled";
160 string: "icon" "home";
161 bool: "disabled" 1;
162 }
163 }
164 }
165 COMMON_EXTERNAL_OVER
166 }
167 programs {
168 COMMON_EXTERNAL_PROGRAM
169 program { name: "btn1_click";
170 signal: "clicked";
171 source: "ext_button1";
172 action: STATE_SET "left" 0.0;
173 transition: SINUSOIDAL 0.6 CURRENT;
174 target: "ext_button3";
175 }
176 program { name: "btn2_click";
177 signal: "clicked";
178 source: "ext_button2";
179 action: STATE_SET "right" 0.0;
180 transition: SINUSOIDAL 0.6 CURRENT;
181 target: "ext_button3";
182 }
183 program { name: "btn4_click";
184 signal: "clicked";
185 source: "ext_button4";
186 action: STATE_SET "default" 0.0;
187 transition: SINUSOIDAL 0.6 CURRENT;
188 target: "ext_button3";
189 }
190 }
191 }
192 group { name: "external/slider";
193 parts {
194 COMMON_EXTERNAL_UNDER
195 part { name: "ext_label1";
196 type: EXTERNAL;
197 source: "elm/label";
198 clip_to: "clip";
199 description { state: "default" 0.0;
200 max: 200 50;
201 align: 0.5 0.0;
202 params {
203 string: "label" "<b>All the Widgets and the Interaction are pure edje</>\
204<br>The first one is linked with the 3 verticals.<br><b>BUG</>: vertical+disabled.";
205 }
206 }
207 }
208 part { name: "ext_slider1";
209 type: EXTERNAL;
210 source: "elm/slider";
211 clip_to: "clip";
212 description { state: "default" 0.0;
213 max: 300 50;
214 align: 0.5 0.0;
215 rel1.offset: 0 60;
216 params {
217 string: "label" "Horizontal";
218 string: "icon" "home";
219 string: "unit format" "%.1f units";
220 string: "indicator format" "%.0f";
221 double: "min" -100.0;
222 double: "max" 100.0;
223 }
224 }
225 }
226 part { name: "ext_slider2";
227 type: EXTERNAL;
228 source: "elm/slider";
229 clip_to: "clip";
230 description { state: "default" 0.0;
231 max: 300 50;
232 align: 0.5 0.0;
233 rel1.offset: 0 90;
234 params {
235 string: "label" "Disabled";
236 string: "icon" "home";
237 bool: "disabled" 1;
238 double: "value" 0.5;
239 }
240 }
241 }
242 part { name: "ext_slider3";
243 type: EXTERNAL;
244 source: "elm/slider";
245 clip_to: "clip";
246 description { state: "default" 0.0;
247 max: 300 50;
248 align: 0.5 0.0;
249 rel1.offset: 0 120;
250 params {
251 string: "label" "Inverted";
252 bool: "inverted" 1;
253 }
254 }
255 }
256 part { name: "ext_slider4";
257 type: EXTERNAL;
258 source: "elm/slider";
259 clip_to: "clip";
260 description { state: "default" 0.0;
261 max: 50 300;
262 align: 0.0 0.0;
263 rel1.offset: 20 160;
264 params {
265 string: "label" "Horizontal";
266 string: "icon" "home";
267 bool: "horizontal" 0;
268 string: "unit format" "%.0f u";
269 string: "indicator format" "%.3f";
270 double: "min" -100.0;
271 double: "max" 100.0;
272 }
273 }
274 description { state: "anim" 0.0;
275 inherit: "default" 0.0;
276 rel1.offset: 140 160;
277 }
278 }
279 part { name: "ext_slider5";
280 type: EXTERNAL;
281 source: "elm/slider";
282 clip_to: "clip";
283 description { state: "default" 0.0;
284 max: 50 300;
285 align: 0.0 0.0;
286 rel1.offset: 80 160;
287 params {
288 string: "label" "Inverted";
289 string: "icon" "home";
290 bool: "horizontal" 0;
291 bool: "inverted" 1;
292 string: "unit format" "%.0f u";
293 string: "indicator format" "%.3f";
294 double: "min" -100.0;
295 double: "max" 100.0;
296 }
297 }
298 description { state: "anim" 0.0;
299 inherit: "default" 0.0;
300 rel1.offset: 200 160;
301 }
302 }
303 part { name: "ext_slider6";
304 type: EXTERNAL;
305 source: "elm/slider";
306 clip_to: "clip";
307 description { state: "default" 0.0;
308 max: 50 300;
309 align: 0.0 0.0;
310 rel1.offset: 140 160;
311 params {
312 string: "label" "Disabled";
313 string: "icon" "home";
314 double: "min" -70.0;
315 double: "max" 70.0;
316 bool: "disabled" 1;
317 bool: "horizontal" 0;
318 }
319 }
320 description { state: "anim" 0.0;
321 inherit: "default" 0.0;
322 rel1.offset: 260 160;
323 }
324 }
325 part { name: "ext_button1";
326 type: EXTERNAL;
327 source: "elm/button";
328 clip_to: "clip";
329 description { state: "default" 0.0;
330 max: 80 40;
331 align: 0.0 0.0;
332 rel1.offset: 200 230;
333 params {
334 string: "label" "reset all";
335 }
336 }
337 description { state: "anim" 0.0;
338 inherit: "default" 0.0;
339 rel1.offset: 30 230;
340 }
341 }
342 part { name: "ext_button2";
343 type: EXTERNAL;
344 source: "elm/button";
345 clip_to: "clip";
346 description { state: "default" 0.0;
347 max: 80 40;
348 align: 0.0 0.0;
349 rel1.offset: 200 270;
350 params {
351 string: "label" "animate";
352 }
353 }
354 description { state: "anim" 0.0;
355 inherit: "default" 0.0;
356 rel1.offset: 30 270;
357 }
358 }
359 part { name: "ext_check1";
360 type: EXTERNAL;
361 source: "elm/check";
362 clip_to: "clip";
363 description { state: "default" 0.0;
364 max: 80 40;
365 align: 0.0 0.0;
366 rel1.offset: 200 310;
367 params {
368 string: "label" "disable first";
369 }
370 }
371 description { state: "anim" 0.0;
372 inherit: "default" 0.0;
373 rel1.offset: 30 310;
374 }
375 }
376 COMMON_EXTERNAL_OVER
377 }
378 programs {
379 COMMON_EXTERNAL_PROGRAM
380 program { name: "link";
381 signal: "changed";
382 source: "ext_slider1";
383 action: PARAM_COPY "ext_slider1" "value" "ext_slider4" "value";
384 after: "link2";
385 }
386 program { name: "link2";
387 action: PARAM_COPY "ext_slider1" "value" "ext_slider5" "value";
388 after: "link3";
389 }
390 program { name: "link3";
391 action: PARAM_COPY "ext_slider1" "value" "ext_slider6" "value";
392 }
393 program { name: "reset";
394 signal: "clicked";
395 source: "ext_button1";
396 action: PARAM_SET "ext_slider1" "value" 0.0;
397 after: "reset2";
398 }
399 program { name: "reset2";
400 action: PARAM_SET "ext_slider2" "value" 0.0;
401 after: "reset3";
402 }
403 program { name: "reset3";
404 action: PARAM_SET "ext_slider3" "value" 0.0;
405 after: "reset4";
406 }
407 program { name: "reset4";
408 action: PARAM_SET "ext_slider4" "value" 0.0;
409 after: "reset5";
410 }
411 program { name: "reset5";
412 action: PARAM_SET "ext_slider5" "value" 0.0;
413 after: "reset6";
414 }
415 program { name: "reset6";
416 action: PARAM_SET "ext_slider6" "value" 0.0;
417 }
418 program { name: "disable_first";
419 signal: "changed";
420 source: "ext_check1";
421 action: PARAM_COPY "ext_check1" "state" "ext_slider1" "disabled";
422 }
423 program { name: "animate";
424 signal: "clicked";
425 source: "ext_button2";
426 filter: "ext_slider4" "default" 0.0;
427 action: STATE_SET "anim" 0.0;
428 transition: SPRING 1.5 0.0 5.0;
429 target: "ext_slider4";
430 target: "ext_slider5";
431 target: "ext_slider6";
432 target: "ext_button1";
433 target: "ext_button2";
434 target: "ext_check1";
435 }
436 program { name: "animate_reverse";
437 signal: "clicked";
438 source: "ext_button2";
439 filter: "ext_slider4" "anim" 0.0;
440 action: STATE_SET "default" 0.0;
441 transition: BOUNCE 1.5 0.0 5.0;
442 target: "ext_slider4";
443 target: "ext_slider5";
444 target: "ext_slider6";
445 target: "ext_button1";
446 target: "ext_button2";
447 target: "ext_check1";
448 }
449 }
450 }
451 group { name: "external/scroller";
452 parts {
453 COMMON_EXTERNAL_UNDER
454 part { name: "ext_label1";
455 type: EXTERNAL;
456 source: "elm/label";
457 clip_to: "clip";
458 description { state: "default" 0.0;
459 max: 200 50;
460 align: 0.5 0.0;
461 params {
462 string: "label" "<b>All the Widgets and the Interaction are pure edje</>\
463<br>This is not a real test, just an experiment<br><b>BUG</>: clip issue, slider drag, lots of warning, ...";
464 }
465 }
466 }
467 part { name: "ext_scroller1";
468 type: EXTERNAL;
469 source: "elm/scroller";
470 clip_to: "clip";
471 description { state: "default" 0.0;
472 align: 0.5 0.0;
473 rel1.offset: 10 60;
474 rel2 {
475 to_y: "ext_button1";
476 relative: 1.0 0.0;
477 offset: -10 -10;
478 }
479 params {
480 string: "content" "external/slider";
481 }
482 }
483 }
484 part { name: "ext_button1";
485 type: EXTERNAL;
486 source: "elm/button";
487 clip_to: "clip";
488 description { state: "default" 0.0;
489 max: 80 40;
490 align: 0.0 1.0;
491 rel1.offset: 20 0;
492 rel2.offset: 0 -15;
493 params {
494 string: "label" "content 1";
495 }
496 }
497 }
498 part { name: "ext_button2";
499 type: EXTERNAL;
500 source: "elm/button";
501 clip_to: "clip";
502 description { state: "default" 0.0;
503 max: 80 40;
504 align: 0.0 1.0;
505 rel1.offset: 100 0;
506 rel2.offset: 0 -15;
507 params {
508 string: "label" "content 2";
509 }
510 }
511 }
512 part { name: "ext_button3";
513 type: EXTERNAL;
514 source: "elm/button";
515 clip_to: "clip";
516 description { state: "default" 0.0;
517 max: 80 40;
518 align: 0.0 1.0;
519 rel1.offset: 180 0;
520 rel2.offset: 0 -15;
521 params {
522 string: "label" "content unset";
523 }
524 }
525 }
526 COMMON_EXTERNAL_OVER
527 }
528 programs {
529 COMMON_EXTERNAL_PROGRAM
530 program { name: "bt1_click";
531 signal: "clicked";
532 source: "ext_button1";
533 action: PARAM_SET "ext_scroller1" "content" "external/button";
534
535 }
536 program { name: "bt2_click";
537 signal: "clicked";
538 source: "ext_button2";
539 action: PARAM_SET "ext_scroller1" "content" "external/slider";
540 }
541 program { name: "bt3_click";
542 signal: "clicked";
543 source: "ext_button3";
544 action: PARAM_SET "ext_scroller1" "content" "";
545 }
546 }
547 }
548 group { name: "external/pbar";
549 parts {
550 COMMON_EXTERNAL_UNDER
551 part { name: "ext_label1";
552 type: EXTERNAL;
553 source: "elm/label";
554 clip_to: "clip";
555 description { state: "default" 0.0;
556 max: 200 50;
557 align: 0.5 0.0;
558 params {
559 string: "label" "<b>All the Widgets are edje external</>\
560<br>This test show how you can access external widgets from <br>\
561embryo script and from C code.";
562 }
563 }
564 }
565
566 part { name: "ext_pbar1";
567 type: EXTERNAL;
568 source: "elm/progressbar";
569 clip_to: "clip";
570 description { state: "default" 0.0;
571 max: 999 40;
572 align: 0.0 0.0;
573 rel1.offset: 0 60;
574 params {
575 string: "unit format" "%.0f %%";
576 double: "value" 0.5;
577 }
578 }
579 }
580 part { name: "ext_pbar2";
581 type: EXTERNAL;
582 source: "elm/progressbar";
583 clip_to: "clip";
584 description { state: "default" 0.0;
585 max: 999 40;
586 align: 0.0 0.0;
587 rel1.offset: 0 100;
588 params {
589 string: "label" "infinite bouce";
590 string: "unit format" "";
591 bool: "pulse" 1;
592 }
593 }
594 }
595 part { name: "ext_pbar3";
596 type: EXTERNAL;
597 source: "elm/progressbar";
598 clip_to: "clip";
599 description { state: "default" 0.0;
600 max: 999 40;
601 align: 0.0 0.0;
602 rel1.offset: 0 140;
603 params {
604 string: "label" "inverted";
605 string: "icon" "home";
606 bool: "inverted" 1;
607 string: "unit format" "%.3f units";
608 }
609 }
610 }
611 part { name: "ext_pbar4";
612 type: EXTERNAL;
613 source: "elm/progressbar";
614 clip_to: "clip";
615 description { state: "default" 0.0;
616 max: 50 999;
617 align: 0.1 0.0;
618 rel1.offset: 0 180;
619 rel2.offset: 0 -50;
620 params {
621 string: "label" "percent";
622 bool: "horizontal" 0;
623 }
624 }
625 }
626 part { name: "ext_pbar5";
627 type: EXTERNAL;
628 source: "elm/progressbar";
629 clip_to: "clip";
630 description { state: "default" 0.0;
631 max: 50 999;
632 align: 0.5 0.0;
633 rel1.offset: 0 180;
634 rel2.offset: 0 -100;
635 params {
636 string: "label" "infinite bouce";
637 bool: "horizontal" 0;
638 string: "unit format" "";
639 bool: "pulse" 1;
640 }
641 }
642 }
643 part { name: "ext_pbar6";
644 type: EXTERNAL;
645 source: "elm/progressbar";
646 clip_to: "clip";
647 description { state: "default" 0.0;
648 max: 50 999;
649 align: 0.9 0.0;
650 rel1.offset: 0 180;
651 rel2.offset: 0 -50;
652 params {
653 string: "label" "inverted";
654 string: "icon" "home";
655 bool: "horizontal" 0;
656 bool: "inverted" 1;
657 bool: "disabled" 1;
658 }
659 }
660 }
661 part { name: "ext_pbar7";
662 type: EXTERNAL;
663 source: "elm/progressbar";
664 clip_to: "clip";
665 description { state: "default" 0.0;
666 max: 50 999;
667 align: 0.5 0.0;
668 rel1.offset: 0 300;
669 rel2.offset: 0 -50;
670 params {
671 string: "style" "wheel";
672 bool: "pulse" 1;
673 }
674 }
675 }
676 part { name: "ext_button1";
677 type: EXTERNAL;
678 source: "elm/button";
679 clip_to: "clip";
680 description { state: "default" 0.0;
681 max: 100 40;
682 align: 0.0 1.0;
683 rel1.offset: 0 0;
684 rel2.offset: 0 -15;
685 params {
686 string: "label" "anim with edje";
687 }
688 }
689 }
690 part { name: "ext_button2";
691 type: EXTERNAL;
692 source: "elm/button";
693 clip_to: "clip";
694 description { state: "default" 0.0;
695 max: 100 40;
696 align: 0.5 1.0;
697 rel1.offset: 0 0;
698 rel2.offset: 0 -15;
699 params {
700 string: "label" "...with embryo";
701 }
702 }
703 }
704 part { name: "ext_button3";
705 type: EXTERNAL;
706 source: "elm/button";
707 clip_to: "clip";
708 description { state: "default" 0.0;
709 max: 100 40;
710 align: 1.0 1.0;
711 rel1.offset: 0 0;
712 rel2.offset: 0 -15;
713 params {
714 string: "label" "...or from C";
715 }
716 }
717 }
718 COMMON_EXTERNAL_OVER
719 }
720 programs {
721 COMMON_EXTERNAL_PROGRAM
722 program { name: "anim_with_edje";
723 signal: "clicked";
724 source: "ext_button1";
725 action: PARAM_SET "ext_pbar1" "value" 0.0;
726 after: "disable_button1";
727 }
728 program { name: "disable_button1";
729 action: PARAM_SET "ext_button1" "disabled" 1;
730 after: "disable_button2";
731 }
732 program { name: "disable_button2";
733 action: PARAM_SET "ext_button2" "disabled" 1;
734 after: "disable_button3";
735 }
736 program { name: "disable_button3";
737 action: PARAM_SET "ext_button3" "disabled" 1;
738 after: "anim_0";
739 }
740 program { name: "anim_0";
741 action: PARAM_SET "ext_pbar1" "value" 0.0;
742 after: "anim_1";
743 }
744 program { name: "anim_1";
745 in: 0.3 0.0;
746 action: PARAM_SET "ext_pbar1" "value" 0.1;
747 after: "anim_2";
748 }
749 program { name: "anim_2";
750 in: 0.3 0.0;
751 action: PARAM_SET "ext_pbar1" "value" 0.2;
752 after: "anim_3";
753 }
754 program { name: "anim_3";
755 in: 0.3 0.0;
756 action: PARAM_SET "ext_pbar1" "value" 0.3;
757 after: "anim_4";
758 }
759 program { name: "anim_4";
760 in: 0.3 0.0;
761 action: PARAM_SET "ext_pbar1" "value" 0.4;
762 after: "anim_5";
763 }
764 program { name: "anim_5";
765 in: 0.3 0.0;
766 action: PARAM_SET "ext_pbar1" "value" 0.5;
767 after: "anim_6";
768 }
769 program { name: "anim_6";
770 in: 0.3 0.0;
771 action: PARAM_SET "ext_pbar1" "value" 0.6;
772 after: "anim_7";
773 }
774 program { name: "anim_7";
775 in: 0.3 0.0;
776 action: PARAM_SET "ext_pbar1" "value" 0.7;
777 after: "anim_8";
778 }
779 program { name: "anim_8";
780 in: 0.3 0.0;
781 action: PARAM_SET "ext_pbar1" "value" 0.8;
782 after: "anim_9";
783 }
784 program { name: "anim_9";
785 in: 0.3 0.0;
786 action: PARAM_SET "ext_pbar1" "value" 0.9;
787 after: "anim_10";
788 }
789 program { name: "anim_10";
790 in: 0.3 0.0;
791 action: PARAM_SET "ext_pbar1" "value" 1.0;
792 after: "reenable_button1";
793 }
794 program { name: "reenable_button1";
795 action: PARAM_SET "ext_button1" "disabled" 0;
796 after: "reenable_button2";
797 }
798 program { name: "reenable_button2";
799 action: PARAM_SET "ext_button2" "disabled" 0;
800 after: "reenable_button3";
801 }
802 program { name: "reenable_button3";
803 action: PARAM_SET "ext_button3" "disabled" 0;
804 }
805 script {
806 public my_value;
807 public timer_cb(unused) {
808 external_param_set_float(PART:"ext_pbar1", "value", get_float(my_value));
809 external_param_set_float(PART:"ext_pbar3", "value", get_float(my_value));
810 external_param_set_float(PART:"ext_pbar4", "value", get_float(my_value));
811 external_param_set_float(PART:"ext_pbar6", "value", get_float(my_value));
812 if (get_float(my_value) < 1.0)
813 {
814 set_float(my_value, get_float(my_value) + 0.0123);
815 timer(0.1, "timer_cb", unused);
816 }
817 else
818 {
819 external_param_set_bool(PART:"ext_button1", "disabled", 0);
820 external_param_set_bool(PART:"ext_button2", "disabled", 0);
821 external_param_set_bool(PART:"ext_button3", "disabled", 0);
822 }
823 }
824 }
825 program { name: "bt2_click";
826 signal: "clicked";
827 source: "ext_button2";
828 script {
829 set_float(my_value, 0.0);
830 external_param_set_bool(PART:"ext_button1", "disabled", 1);
831 external_param_set_bool(PART:"ext_button2", "disabled", 1);
832 external_param_set_bool(PART:"ext_button3", "disabled", 1);
833 timer_cb(0);
834 }
835 }
836 }
837 }
838 group { name: "external/video";
839 parts {
840 COMMON_EXTERNAL_UNDER
841 part { name: "ext_label1";
842 type: EXTERNAL;
843 source: "elm/label";
844 clip_to: "clip";
845 description { state: "default" 0.0;
846 max: 200 50;
847 align: 0.5 0.0;
848 params {
849 string: "label" "<b>Simple videoplayer in pure edje</>\
850<br>Just choose a video file, click 'play' and enjoy your movie :)<br>\
851<b>BUGS:</> Video don't emit signals, some external props are missing.";
852 }
853 }
854 }
855 part { name: "ext_video1";
856 type: EXTERNAL;
857 source: "elm/video";
858 clip_to: "clip";
859 description { state: "default" 0.0;
860 align: 0.5 0.0;
861 rel1.offset: 12 60;
862 rel2.offset: -12 60;
863 }
864 }
865 part { name: "ext_button1";
866 type: EXTERNAL;
867 source: "elm/button";
868 clip_to: "clip";
869 description { state: "default" 0.0;
870 max: 60 40;
871 align: 0.1 0.0;
872 rel1 {
873 to: "ext_slider1";
874 relative: 0.0 -1.0;
875 }
876 params {
877 string: "label" "play";
878 bool: "disabled" 1;
879 }
880 }
881 }
882 part { name: "ext_button2";
883 type: EXTERNAL;
884 source: "elm/button";
885 clip_to: "clip";
886 description { state: "default" 0.0;
887 max: 60 40;
888 align: 0.5 0.0;
889 rel1 {
890 to: "ext_slider1";
891 relative: 0.0 -1.0;
892 }
893 params {
894 string: "label" "pause";
895 bool: "disabled" 1;
896 }
897 }
898 }
899 part { name: "ext_button3";
900 type: EXTERNAL;
901 source: "elm/button";
902 clip_to: "clip";
903 description { state: "default" 0.0;
904 max: 60 40;
905 align: 0.9 0.0;
906 rel1 {
907 to: "ext_slider1";
908 relative: 0.0 -1.0;
909 }
910 params {
911 string: "label" "stop";
912 bool: "disabled" 1;
913 }
914 }
915 }
916 part { name: "ext_slider1";
917 type: EXTERNAL;
918 source: "elm/slider";
919 clip_to: "clip";
920 description { state: "default" 0.0;
921 max: 9999 40;
922 align: 0.0 0.0;
923 rel1 {
924 to: "ext_slider2";
925 relative: 0.0 -1.0;
926 }
927 params {
928 string: "label" "Volume";
929 string: "indicator format" "%.3f";
930 bool: "disabled" 1;
931 }
932 }
933 }
934 part { name: "ext_slider2";
935 type: EXTERNAL;
936 source: "elm/slider";
937 clip_to: "clip";
938 description { state: "default" 0.0;
939 max: 9999 40;
940 align: 0.0 0.0;
941 rel1 {
942 to: "ext_fsentry";
943 relative: 0.0 -1.0;
944 }
945 params {
946 string: "label" "Position";
947 string: "indicator format" "%.1f sec";
948 bool: "disabled" 1;
949 }
950 }
951 }
952 part { name: "ext_fsentry";
953 type: EXTERNAL;
954 source: "elm/fileselector_entry";
955 clip_to: "clip";
956 description { state: "default" 0.0;
957 max: 9999 40;
958 align: 0.0 1.0;
959 rel1.offset: 6 -6;
960 rel2.offset: -6 -6;
961 params {
962 string: "label" "choose file";
963 }
964 }
965 }
966 COMMON_EXTERNAL_OVER
967 }
968 programs {
969 COMMON_EXTERNAL_PROGRAM
970 program { name: "play_clicked";
971 signal: "clicked";
972 source: "ext_button1";
973 action: PARAM_SET "ext_video1" "play" 1;
974 }
975 program { name: "pause_click";
976 signal: "clicked";
977 source: "ext_button2";
978 action: PARAM_SET "ext_video1" "pause" 1;
979 }
980 program { name: "stop_clicked";
981 signal: "clicked";
982 source: "ext_button3";
983 action: PARAM_SET "ext_video1" "stop" 1;
984 }
985 program { name: "volume_slider";
986 signal: "changed";
987 source: "ext_slider1";
988 action: PARAM_COPY "ext_slider1" "value" "ext_video1" "audio level";
989 }
990 program { name: "position_slider";
991 signal: "changed";
992 source: "ext_slider2";
993 script {
994 new Float:len = external_param_get_float(PART:"ext_video1", "play length");
995 new Float:val = external_param_get_float(PART:"ext_slider2", "value");
996 external_param_set_float(PART:"ext_slider2", "max", len);
997 external_param_set_float(PART:"ext_video1", "play position", val);
998 }
999 }
1000 program { name: "file_chosen";
1001 signal: "file,chosen";
1002 source: "ext_fsentry";
1003 action: PARAM_COPY "ext_fsentry" "path" "ext_video1" "uri";
1004 after: "enable_bt1";
1005 after: "enable_bt2";
1006 after: "enable_bt3";
1007 after: "enable_sl1";
1008 after: "enable_sl2";
1009 after: "update_volume_slider";
1010 }
1011 program { name: "enable_bt1";
1012 action: PARAM_SET "ext_button1" "disabled" 0;
1013 }
1014 program { name: "enable_bt2";
1015 action: PARAM_SET "ext_button2" "disabled" 0;
1016 }
1017 program { name: "enable_bt3";
1018 action: PARAM_SET "ext_button3" "disabled" 0;
1019 }
1020 program { name: "enable_sl1";
1021 action: PARAM_SET "ext_slider1" "disabled" 0;
1022 }
1023 program { name: "enable_sl2";
1024 action: PARAM_SET "ext_slider2" "disabled" 0;
1025 }
1026 program { name: "update_volume_slider";
1027 action: PARAM_COPY "ext_video1" "audio level" "ext_slider1" "value";
1028 }
1029 }
1030 }
1031}
diff --git a/data/elementary/objects/test_focus_style.edc b/data/elementary/objects/test_focus_style.edc
new file mode 100644
index 0000000000..ac184c4ca6
--- /dev/null
+++ b/data/elementary/objects/test_focus_style.edc
@@ -0,0 +1,454 @@
1// c1 - c4
2// |base|
3// | |
4// c3 - c2
5#define OUTER_BASE_PARTS(w, h) \
6 part { name: "base"; type: SPACER; \
7 description { \
8 state: "default" 0.0; } } \
9 part { name: "c1"; type: SPACER; \
10 description { state: "default" 0.0; \
11 rel1.to: "base"; \
12 rel2.to: "base"; \
13 rel2.relative: 0 0; \
14 align: 1 1; \
15 min: w h; \
16 max: w h; } } \
17 part { name: "c3"; type: SPACER; \
18 description { state: "default" 0.0; \
19 rel1.to: "base"; \
20 rel2.to: "base"; \
21 rel1.relative: 0 1; \
22 rel2.relative: 0 1; \
23 align: 1 0; \
24 min: w h; \
25 max: w h; } } \
26 part { name: "c4"; type: SPACER; \
27 description { state: "default" 0.0; \
28 rel1.to: "base"; \
29 rel2.to: "base"; \
30 rel1.relative: 1 0; \
31 rel2.relative: 1 0; \
32 min: w h; \
33 max: w h; } } \
34 part { name: "c2"; type: SPACER; \
35 mouse_events: 0; \
36 description { state: "default" 0.0; \
37 rel1.to: "base"; \
38 rel1.relative: 1 1; \
39 rel2.to: "base"; \
40 rel2.relative: 1 1; \
41 align: 0 0; \
42 min: w h; \
43 max: w h; } }
44
45collections {
46 group { name: "elm/focus_highlight/top/glow";
47 images {
48 image: "border6.png" COMP;
49 }
50 data.item: "animate" "on";
51
52 script {
53 public src_x, src_y, src_w, src_h;
54 public diffx, diffy, diffw, diffh;
55 public anim_highlight(val, Float:pos) {
56 new x, y, w, h, dx, dy, dw, dh;
57
58 dx = round(float_mul(float(get_int(diffx)), pos));
59 x = get_int(src_x) + dx;
60 dy = round(float_mul(float(get_int(diffy)), pos));
61 y = get_int(src_y) + dy;
62 dw = round(float_mul(float(get_int(diffw)), pos));
63 w = get_int(src_w) + dw;
64 dh = round(float_mul(float(get_int(diffh)), pos));
65 h = get_int(src_h) + dh;
66
67 update_offset(x, y, w, h);
68
69 if(pos >= 1.0) {
70 emit("elm,action,focus,anim,end", "");
71 set_state(PART:"highlight", "default", 0.0);
72 }
73 }
74 public update_offset(x, y, w, h) {
75 set_state_val(PART:"base", STATE_REL1_OFFSET, x, y);
76 set_state_val(PART:"base", STATE_REL2_OFFSET, x + w, y + h);
77 }
78 public message(Msg_Type:type, id, ...) {
79 if((type == MSG_INT_SET) && (id == 1)) {
80 new x1, y1, w1, h1, x2, y2, w2, h2;
81
82 x1 = getarg(2);
83 y1 = getarg(3);
84 w1 = getarg(4);
85 h1 = getarg(5);
86 x2 = getarg(6);
87 y2 = getarg(7);
88 w2 = getarg(8);
89 h2 = getarg(9);
90
91 set_int(src_x, x1);
92 set_int(src_y, y1);
93 set_int(src_w, w1);
94 set_int(src_h, h1);
95 set_int(diffx, x2 - x1);
96 set_int(diffy, y2 - y1);
97 set_int(diffw, w2 - w1);
98 set_int(diffh, h2 - h1);
99
100 custom_state(PART:"base", "default", 0.0);
101 set_state_val(PART:"base", STATE_REL1, 0.0, 0.0);
102 set_state_val(PART:"base", STATE_REL2, 0.0, 0.0);
103 update_offset(x1, y1, w1, h1);
104 set_state(PART:"base", "custom", 0.0);
105 anim(0.2, "anim_highlight", 0);
106 }
107 }
108 } //script ends
109 parts {
110 OUTER_BASE_PARTS(12, 12);
111 part { name: "highlight"; type: IMAGE;
112 mouse_events: 0;
113 description { state: "default" 0.0;
114 image.normal: "border6.png";
115 image.border: 20 20 20 20;
116 rel1.to: "c1";
117 rel2.to: "c2";
118 }
119 description { state: "visible" 0.0;
120 inherit: "default" 0.0;
121 }
122 description { state: "invisible" 0.0;
123 inherit: "default" 0.0;
124 visible: 0;
125 }
126 }
127 } //parts ends
128 programs {
129 program { name: "show";
130 signal: "elm,action,focus,show";
131 source: "elm";
132 action: ACTION_STOP;
133 target: "hide";
134 target: "hide_start";
135 target: "hide_end";
136 after: "show_start";
137 }
138 program { name: "show_start";
139 action: STATE_SET "visible" 0.0;
140 transition: SIN 0.2;
141 target: "highlight";
142 after: "show_end";
143 }
144 program { name: "show_end";
145 action: SIGNAL_EMIT "elm,action,focus,show,end" "";
146 }
147 program { name: "hide";
148 signal: "elm,action,focus,hide";
149 source: "elm";
150 action: ACTION_STOP;
151 target: "show";
152 target: "show_start";
153 target: "show_end";
154 after: "hide_start";
155 }
156 program { name: "hide_start";
157 action: STATE_SET "invisible" 0.0;
158 transition: SIN 0.2;
159 target: "highlight";
160 after: "hide_end";
161 }
162 program { name: "hide_end";
163 action: SIGNAL_EMIT "elm,action,focus,hide,end" "";
164 }
165 } //programs ends
166 } //group ends
167
168 group { name: "elm/focus_highlight/top/glow_effect";
169 inherit: "elm/focus_highlight/top/glow";
170 images {
171 image: "border.png" COMP;
172 image: "border2.png" COMP;
173 image: "border3.png" COMP;
174 image: "border4.png" COMP;
175 image: "border5.png" COMP;
176 image: "border6.png" COMP;
177 }
178 data.item: "animate" "on";
179
180 script {
181 public src_x, src_y, src_w, src_h;
182 public diffx, diffy, diffw, diffh;
183 public anim_highlight(val, Float:pos) {
184 new x, y, w, h, dx, dy, dw, dh, Float:p;
185 p = 1.0 - ((1.0 - pos) * (1.0 - pos) * (1.0 - pos));
186
187 dx = round(float_mul(float(get_int(diffx)), p));
188 x = get_int(src_x) + dx;
189 dy = round(float_mul(float(get_int(diffy)), p));
190 y = get_int(src_y) + dy;
191 dw = round(float_mul(float(get_int(diffw)), p));
192 w = get_int(src_w) + dw;
193 dh = round(float_mul(float(get_int(diffh)), p));
194 h = get_int(src_h) + dh;
195
196 update_offset(x, y, w, h);
197
198 if(pos >= 1.0) {
199 emit("elm,action,focus,anim,end", "");
200 set_state(PART:"highlight", "default", 0.0);
201 emit("dim", "");
202 }
203 }
204 public update_offset(x, y, w, h) {
205 set_state_val(PART:"base", STATE_REL1_OFFSET, x, y);
206 set_state_val(PART:"base", STATE_REL2_OFFSET, x + w, y + h);
207 }
208 public message(Msg_Type:type, id, ...) {
209 if((type == MSG_INT_SET) && (id == 1)) {
210 new x1, y1, w1, h1, x2, y2, w2, h2;
211
212 x1 = getarg(2);
213 y1 = getarg(3);
214 w1 = getarg(4);
215 h1 = getarg(5);
216 x2 = getarg(6);
217 y2 = getarg(7);
218 w2 = getarg(8);
219 h2 = getarg(9);
220
221 set_int(src_x, x1);
222 set_int(src_y, y1);
223 set_int(src_w, w1);
224 set_int(src_h, h1);
225 set_int(diffx, x2 - x1);
226 set_int(diffy, y2 - y1);
227 set_int(diffw, w2 - w1);
228 set_int(diffh, h2 - h1);
229
230 custom_state(PART:"base", "default", 0.0);
231 set_state_val(PART:"base", STATE_REL1, 0.0, 0.0);
232 set_state_val(PART:"base", STATE_REL2, 0.0, 0.0);
233 update_offset(x1, y1, w1, h1);
234 set_state(PART:"base", "custom", 0.0);
235 anim(0.2, "anim_highlight", 0);
236 }
237 }
238 } //script ends
239 parts {
240 part { name: "highlight"; type: IMAGE;
241 mouse_events: 0;
242 description { state: "default" 0.0;
243 image.normal: "border6.png";
244 image.border: 16 16 16 16;
245 rel1.to: "c1";
246 rel2.to: "c2";
247 visible: 1;
248 }
249 description { state: "visible" 0.0;
250 inherit: "default" 0.0;
251 }
252 description { state: "visible" 0.1;
253 inherit: "visible" 0.0;
254 image.normal: "border2.png";
255 image.border: 18 18 18 18;
256 }
257 description { state: "visible" 0.2;
258 inherit: "visible" 0.0;
259 image.normal: "border3.png";
260 image.border: 19 19 19 19;
261 }
262 description { state: "visible" 0.3;
263 inherit: "visible" 0.0;
264 image.normal: "border4.png";
265 image.border: 20 20 20 20;
266 }
267 description { state: "visible" 0.4;
268 inherit: "visible" 0.0;
269 image.normal: "border5.png";
270 image.border: 21 21 21 21;
271 }
272 description { state: "visible" 0.5;
273 inherit: "visible" 0.0;
274 image.normal: "border6.png";
275 image.border: 25 25 25 25;
276 }
277 description { state: "invisible" 0.0;
278 inherit: "default" 0.0;
279 visible: 0;
280 }
281 }
282 }//parts ends
283 programs {
284 program { name: "show";
285 signal: "elm,action,focus,show";
286 source: "elm";
287 action: ACTION_STOP;
288 target: "hide";
289 target: "hide_start";
290 target: "hide_end";
291 after: "show_start";
292 }
293 program { name: "show_start";
294 action: SIGNAL_EMIT "dim" "";
295 after: "show_end";
296 }
297 program { name: "dim_start";
298 signal: "dim";
299 in: 2 0.4;
300 source: "";
301 action: STATE_SET "visible" 0.4;
302 transition: SINUSOIDAL 0.2;
303 target: "highlight";
304 after: "dim1";
305 }
306 program { name: "dim1";
307 action: STATE_SET "visible" 0.3;
308 transition: SINUSOIDAL 0.2;
309 target: "highlight";
310 after: "dim2";
311 }
312 program { name: "dim2";
313 action: STATE_SET "visible" 0.2;
314 transition: SINUSOIDAL 0.2;
315 target: "highlight";
316 after: "dim3";
317 }
318 program { name: "dim3";
319 action: STATE_SET "visible" 0.1;
320 transition: SINUSOIDAL 0.2;
321 target: "highlight";
322 after: "dim_end";
323 }
324 program { name: "dim_end";
325 action: SIGNAL_EMIT "glow" "";
326 }
327 program { name: "glow_start";
328 signal: "glow";
329 source: "";
330 in: 1 0.4;
331 action: STATE_SET "visible" 0.0;
332 transition: SINUSOIDAL 0.2;
333 target: "highlight";
334 after: "glow1";
335 }
336 program { name: "glow1";
337 action: STATE_SET "visible" 0.1;
338 transition: SINUSOIDAL 0.2;
339 target: "highlight";
340 after: "glow2";
341 }
342 program { name: "glow2";
343 action: STATE_SET "visible" 0.2;
344 transition: SINUSOIDAL 0.2;
345 target: "highlight";
346 after: "glow3";
347 }
348 program { name: "glow3";
349 action: STATE_SET "visible" 0.3;
350 transition: SINUSOIDAL 0.2;
351 target: "highlight";
352 after: "glow4";
353 }
354 program { name: "glow4";
355 action: STATE_SET "visible" 0.4;
356 transition: SINUSOIDAL 0.2;
357 target: "highlight";
358 after: "glow5";
359 }
360 program { name: "glow5";
361 action: STATE_SET "visible" 0.5;
362 transition: SINUSOIDAL 0.2;
363 target: "highlight";
364 after: "glow1";
365 }
366 program { name: "show_end";
367 action: SIGNAL_EMIT "elm,action,focus,show,end" "";
368 }
369 program { name: "hide";
370 signal: "elm,action,focus,hide";
371 source: "elm";
372 action: ACTION_STOP;
373 target: "show";
374 target: "show_start";
375 target: "show_end";
376 after: "hide_start";
377 }
378 program { name: "hide_start";
379 action: STATE_SET "invisible" 0.0;
380 transition: LIN 0.2;
381 target: "highlight";
382 after: "hide_end";
383 }
384 program { name: "hide_end";
385 action: SIGNAL_EMIT "elm,action,focus,hide,end" "";
386 }
387 } //programs ends
388 } //group ends
389
390 group { name: "elm/layout/focus/example";
391 data.item: "focus_part" "focus_area";
392 parts {
393 part { name: "bg"; type: RECT;
394 scale: 1;
395 description { state: "default" 0.0;
396 color: 255 255 0 255;
397 min: 150 40;
398 max: 150 40;
399 }
400 }
401 part { name: "elm.text"; type: TEXT;
402 scale: 1;
403 description { state: "default" 0.0;
404 rel1.to: "bg";
405 rel2.to: "bg";
406 text.text: "layout";
407 text.size: 9;
408 color: 0 0 0 255;
409 }
410 }
411 part { name: "focus_area"; type: RECT;
412 scale: 1;
413 description { state: "default" 0.0;
414 rel1.to: "bg";
415 rel2.to: "bg";
416 rel2.relative: 0 0;
417 align: 0 0;
418 min: 60 30;
419 max: 60 30;
420 fixed: 1 1;
421 color: 125 125 125 125;
422 }
423 }
424 part { name: "elm.text1"; type: TEXT;
425 scale: 1;
426 description { state: "default" 0.0;
427 rel1.to: "focus_area";
428 rel2.to: "focus_area";
429 text.text: "focus_part";
430 text.size: 9;
431 color: 255 0 255 255;
432 }
433 }
434 }
435 } //group ends
436
437#include "../../data/themes/macros.edc"
438#include "../../data/themes/fonts.edc"
439#include "../../data/themes/colorclasses.edc"
440
441// to customize check default style
442#include "../../data/themes/edc/elm/check.edc"
443 group { name: "elm/check/base/focus_text";
444 data.item: "focus_part" "elm.text";
445 inherit: "elm/check/base/default";
446 }
447
448// to customize button default style
449#include "../../data/themes/edc/elm/button.edc"
450 group { name: "elm/button/base/focus_icon";
451 data.item: "focus_part" "elm.swallow.content";
452 inherit: "elm/button/base/default";
453 }
454}
diff --git a/data/elementary/objects/test_prefs.edc b/data/elementary/objects/test_prefs.edc
new file mode 100644
index 0000000000..836856c678
--- /dev/null
+++ b/data/elementary/objects/test_prefs.edc
@@ -0,0 +1,150 @@
1#define MSG_ID_VEL (1)
2
3collections {
4 group {
5 name: "prefs_edje";
6 max: 450 450;
7 min: 50 50;
8
9 parts {
10 part {
11 name: "bg";
12 type: RECT;
13 scale: 1;
14 description {
15 state: "default" 0.0;
16 min: 450 450;
17 max: 450 450;
18 color: 255 255 255 0;
19 align: 0.0 0.0;
20 }
21 }
22
23 part {
24 name: "square1";
25 type: RECT;
26 scale: 1;
27 description {
28 state: "default" 0.0;
29 min: 50 50;
30 max: 50 50;
31 color: 0 0 255 255;
32 align: 0.0 0.5;
33 }
34 description {
35 state: "invert" 0.0;
36 inherit: "default" 0.0;
37 color: 0 255 0 255;
38 align: 1 0.5;
39 }
40 }
41
42 part {
43 name: "square2";
44 type: RECT;
45 description {
46 state: "default" 0.0;
47 min: 50 50;
48 max: 50 50;
49 color: 0 255 0 255;
50 align: 0.5 0.0;
51 }
52 description {
53 state: "invert" 0.0;
54 inherit: "default" 0.0;
55 color: 0 0 255 255;
56 align: 0.5 1.0;
57 }
58 }
59 }
60
61 program {
62 name: "animation_start";
63 signal: "start";
64 source: "animation";
65 after: "animation,clear";
66 }
67
68 program {
69 name: "call_animation,state1";
70 script {
71 cancel_anim(anim_id);
72 set_int(anim_id, anim(get_float(global_speed), "animation_1", 0));
73 set_int(anim_n, 1);
74 }
75 }
76
77 program {
78 name: "call_animation,state2";
79 script {
80 cancel_anim(anim_id);
81 set_int(anim_id, anim(get_float(global_speed), "animation_2", 0));
82 set_int(anim_n, 2);
83 }
84 }
85
86 program {
87 name: "animation,stop";
88 signal: "stop";
89 source: "animation";
90 script {
91 cancel_anim(get_int(anim_id));
92 }
93 }
94
95 program {
96 name: "animation,clear";
97 script {
98 cancel_anim(get_int(anim_id));
99 if (get_int(anim_n) == 2)
100 set_float(anim_pos, (get_float(anim_pos) - 1) * ( -1));
101 }
102 after: "call_animation,state1";
103 }
104
105 script {
106 public global_speed;
107 public anim_id;
108 public anim_pos;
109 public anim_n;
110
111 public message(Msg_Type:type, id, ...) {
112 if ((type == MSG_FLOAT) && (id == MSG_ID_VEL))
113 set_float(global_speed, Float:getarg(2));
114 }
115
116 public animation_1(val, Float:pos) {
117 if (pos >= get_float(anim_pos) && get_int(anim_n) == 1)
118 {
119 set_tween_state(PART:"square1", pos, "default", 0.0,
120 "invert", 0.0);
121 set_tween_state(PART:"square2", pos, "default", 0.0,
122 "invert", 0.0);
123 set_float(anim_pos, pos);
124 }
125 if (pos >= 1)
126 {
127 run_program(PROGRAM:"call_animation,state2");
128 set_float(anim_pos, 0.0);
129 }
130 }
131
132 public animation_2(val, Float:pos) {
133 if (pos >= get_float(anim_pos) && get_int(anim_n) == 2)
134 {
135 set_tween_state(PART:"square1", pos, "invert", 0.0,
136 "default", 0.0);
137 set_tween_state(PART:"square2", pos, "invert", 0.0,
138 "default", 0.0);
139 set_float(anim_pos, pos);
140 }
141 if (pos >= 1)
142 {
143 run_program(PROGRAM:"call_animation,state1");
144 set_float(anim_pos, 0.0);
145 }
146 }
147 }
148}
149
150#undef MSG_ID_VEL
diff --git a/data/elementary/objects/test_prefs.epc b/data/elementary/objects/test_prefs.epc
new file mode 100644
index 0000000000..3eb2efa4cf
--- /dev/null
+++ b/data/elementary/objects/test_prefs.epc
@@ -0,0 +1,113 @@
1collection
2{
3 page
4 {
5 name: "main";
6 version: 1;
7 title: "Preferences Widget";
8 subtitle: "Prefs";
9 widget: "elm/vertical_frame";
10
11 items {
12 item {
13 name: "universe";
14 type: INT;
15 label: "Ultimate Answer of Life, the Universe and Everything";
16 editable: 1;
17
18 int {
19 default: 42;
20 min: 0;
21 max: 150;
22 }
23 }
24
25 item {
26 name: "label";
27 type: LABEL;
28 label: "Just a label...";
29 }
30
31 item {
32 name: "text";
33 type: TEXT;
34 editable: 1;
35
36 text {
37 placeholder: "This is a text field (:";
38 default: "default str.";
39 deny: "^[0-9]*$";
40 }
41 }
42
43 item {
44 name: "date";
45 type: DATE;
46 label: "First EFL Developer Day";
47
48 date {
49 default: 2012 11 05;
50 min: 1980 11 1;
51 max: 2200 12 2;
52 }
53 }
54
55 item {
56 name: "animation";
57 type: BOOL;
58 persistent: 1;
59 label: "Animation";
60
61 bool {
62 default: true;
63 }
64 }
65
66 item {
67 name: "animation_time";
68 type: FLOAT;
69 persistent: 1;
70 label: "Animation Time";
71
72 float {
73 default: 0.6;
74 min: 0.0;
75 max: 1.0;
76 }
77 }
78
79 item {
80 name: "sep";
81 type: SEPARATOR;
82 }
83
84 item {
85 name: "swal";
86 type: SWALLOW;
87 }
88
89 item {
90 name: "sep2";
91 type: SEPARATOR;
92 }
93
94 item {
95 name: "save";
96 type: SAVE;
97 label: "Save";
98 }
99
100 item {
101 name: "reset";
102 type: RESET;
103 label: "Reset";
104 }
105
106 item {
107 name: "action";
108 type: ACTION;
109 label: "Action!";
110 }
111 }
112 }
113}
diff --git a/data/elementary/objects/under.png b/data/elementary/objects/under.png
new file mode 100644
index 0000000000..7ac5abd18d
--- /dev/null
+++ b/data/elementary/objects/under.png
Binary files differ