summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <m.blumenkran@samsung.com>2013-07-31 09:40:29 +0100
committerdiscomfitor <michael.blumenkrantz@gmail.com>2013-10-20 08:16:41 +0100
commitec88245da9bbfd8e903ad45f8bb6dd1ee17c93f4 (patch)
tree544aae30684c4e23f56f138842cfd7d340bbc245
parent449553cbdfdf80fc2428435d37cb20e4a69a1406 (diff)
add nausea bell effect
-rw-r--r--data/themes/Makefile.am10
-rw-r--r--data/themes/default-nausea.edc3529
2 files changed, 3538 insertions, 1 deletions
diff --git a/data/themes/Makefile.am b/data/themes/Makefile.am
index 1e534f1..a746a8c 100644
--- a/data/themes/Makefile.am
+++ b/data/themes/Makefile.am
@@ -11,6 +11,7 @@ EDJE_FLAGS = $(EDJE_FLAGS_VERBOSE_$(V)) -id $(top_srcdir)/data/themes/images -fd
11filesdir = $(pkgdatadir)/themes 11filesdir = $(pkgdatadir)/themes
12files_DATA = \ 12files_DATA = \
13default.edj \ 13default.edj \
14default-nausea.edj \
14default-spin.edj \ 15default-spin.edj \
15mild.edj \ 16mild.edj \
16black.edj \ 17black.edj \
@@ -23,7 +24,7 @@ am__v_EDJ_ = $(am__v_EDJ_$(AM_DEFAULT_VERBOSITY))
23am__v_EDJ_0 = @echo " EDJ " $@; 24am__v_EDJ_0 = @echo " EDJ " $@;
24 25
25 26
26EXTRA_DIST = default.edc default-spin.edc mild.edc black.edc mustang.edc default_colors.in.edc 27EXTRA_DIST = default.edc default-spin.edc default-nausea.edc mild.edc black.edc mustang.edc default_colors.in.edc
27 28
28default.edj: Makefile default.edc default_colors.in.edc 29default.edj: Makefile default.edc default_colors.in.edc
29 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \ 30 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \
@@ -35,8 +36,15 @@ default-spin.edj: Makefile default-spin.edc default_colors.in.edc
35 $(top_srcdir)/data/themes/default-spin.edc \ 36 $(top_srcdir)/data/themes/default-spin.edc \
36 $(top_builddir)/data/themes/default-spin.edj 37 $(top_builddir)/data/themes/default-spin.edj
37 38
39default-nausea.edj: Makefile default-nausea.edc default_colors.in.edc
40 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \
41 $(top_srcdir)/data/themes/default-nausea.edc \
42 $(top_builddir)/data/themes/default-nausea.edj
43
38mild.edj: Makefile mild.edc default_colors.in.edc 44mild.edj: Makefile mild.edc default_colors.in.edc
39 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \ 45 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \
46 $(top_srcdir)/data/themes/mild.edc \
47 $(top_builddir)/data/themes/mild.edj
40 48
41black.edj: Makefile black.edc mild.edc default_colors.in.edc 49black.edj: Makefile black.edc mild.edc default_colors.in.edc
42 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \ 50 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \
diff --git a/data/themes/default-nausea.edc b/data/themes/default-nausea.edc
new file mode 100644
index 0000000..6394df3
--- /dev/null
+++ b/data/themes/default-nausea.edc
@@ -0,0 +1,3529 @@
1collections {
2
3//////////////////////////////////////////////////////////////////////////////
4 //// the background and general container for the terminal
5 group { name: "terminology/core";
6 parts {
7 ////////////////////////////////////////////////////////////////////
8 // background handling
9 part { name: "fade"; type: RECT;
10 description { state: "default" 0.0;
11 }
12 description { state: "translucent" 0.0;
13 inherit: "default" 0.0;
14 color: 255 255 255 128;
15 }
16 }
17 program {
18 signal: "translucent,on"; source: "terminology";
19 action: STATE_SET "translucent" 0.0;
20 target: "fade";
21 }
22 program {
23 signal: "translucent,off"; source: "terminology";
24 action: STATE_SET "default" 0.0;
25 target: "fade";
26 }
27 part { name: "terminology.background"; type: SWALLOW;
28 clip_to: "fade";
29 description { state: "default" 0.0;
30 }
31 description { state: "image" 0.0;
32 inherit: "default" 0.0;
33 }
34 description { state: "scale" 0.0;
35 inherit: "default" 0.0;
36 }
37 description { state: "edje" 0.0;
38 inherit: "default" 0.0;
39 }
40 description { state: "movie" 0.0;
41 inherit: "default" 0.0;
42 }
43 }
44 program {
45 signal: "media,off"; source: "terminology";
46 action: STATE_SET "default" 0.0;
47 target: "terminology.background";
48 }
49 program {
50 signal: "media,image"; source: "terminology";
51 action: STATE_SET "image" 0.0;
52 target: "terminology.background";
53 }
54 program {
55 signal: "media,scale"; source: "terminology";
56 action: STATE_SET "scale" 0.0;
57 target: "terminology.background";
58 }
59 program {
60 signal: "media,edje"; source: "terminology";
61 action: STATE_SET "edje" 0.0;
62 target: "terminology.background";
63 }
64 program {
65 signal: "media,movie"; source: "terminology";
66 action: STATE_SET "movie" 0.0;
67 target: "terminology.background";
68 }
69
70 ////////////////////////////////////////////////////////////////////
71 // actual text grid for chars, cursors, selectiond etc. goes here
72 part { name: "terminology.content"; type: SWALLOW;
73 description { state: "default" 0.0;
74 rel1.offset: 1 1;
75 rel2.offset: -2 -2;
76 }
77 }
78 }
79 }
80
81 //// the background and general container for the terminal
82 group { name: "terminology/background";
83 images {
84 image: "bg_bevel.png" COMP;
85 image: "bg_shine.png" COMP;
86 image: "bg_glint.png" COMP;
87 image: "bg_glow_in.png" COMP;
88 image: "bg_shadow.png" COMP;
89 image: "bg_led_glow.png" COMP;
90 image: "bg_led_base.png" COMP;
91 image: "bg_led.png" COMP;
92 image: "bg_led_strobe.png" COMP;
93 image: "pm_shadow.png" COMP;
94 image: "pm_overlay.png" COMP;
95 image: "pm_fill.png" COMP;
96 image: "cr_glow.png" COMP;
97 }
98 sounds {
99 sample { name: "bell" LOSSY 64;
100 source: "bell.wav";
101 }
102 }
103 parts {
104 ////////////////////////////////////////////////////////////////////
105 // background handling
106 part { name: "shadow";
107 mouse_events: 0;
108 description { state: "default" 0.0;
109 image.normal: "bg_shadow.png";
110 fill.smooth: 0;
111 visible: 0;
112 }
113 description { state: "translucent" 0.0;
114 inherit: "default" 0.0;
115 visible: 1;
116 }
117 }
118 part { name: "base"; type: RECT;
119 mouse_events: 1;
120 description { state: "default" 0.0;
121 color: 32 32 32 255;
122 }
123 description { state: "translucent" 0.0;
124 inherit: "default" 0.0;
125 visible: 0;
126 }
127 }
128 program {
129 signal: "translucent,on"; source: "terminology";
130 action: STATE_SET "translucent" 0.0;
131 target: "base";
132 target: "shadow";
133 }
134 program {
135 signal: "translucent,off"; source: "terminology";
136 action: STATE_SET "default" 0.0;
137 target: "base";
138 target: "shadow";
139 }
140
141 ////////////////////////////////////////////////////////////////////
142 // actual text grid for chars, cursors, selectiond etc. goes here
143 // and has a background layered behind it inside the swallowed
144 // child edje
145 part { name: "terminology.content"; type: SWALLOW;
146 description { state: "default" 0.0;
147 }
148 }
149
150 ////////////////////////////////////////////////////////////////////
151 // indicator of other tabs and control
152 part { name: "tabcount_clip"; type: RECT;
153 description { state: "default" 0.0;
154 color: 255 255 255 0;
155 visible: 0;
156 }
157 description { state: "on" 0.0;
158 inherit: "default" 0.0;
159 visible: 1;
160 color: 255 255 255 255;
161 }
162 }
163 part { name: "terminology.tabmissed.label"; type: TEXT; mouse_events: 0;
164 effect: GLOW;
165 scale: 1;
166 clip_to: "tabcount_clip";
167 description { state: "default" 0.0;
168 fixed: 1 1;
169 rel1.to: "terminology.tabcount.label";
170 rel2.to: "terminology.tabcount.label";
171 rel1.offset: -4 0;
172 rel2.relative: 0.0 1.0;
173 rel2.offset: -5 -1;
174 color: 255 153 51 64;
175 color2: 255 51 0 18;
176 color3: 255 0 0 8;
177 align: 1.0 0.5;
178 text { font: "Sans"; size: 8;
179 align: 1.0 0.5;
180 min: 1 1;
181 }
182 }
183 description { state: "over" 0.0;
184 inherit: "default" 0.0;
185 color: 255 255 64 255;
186 color2: 255 153 51 128;
187 color3: 255 0 0 20;
188 }
189 }
190 part { name: "terminology.tabcount.label"; type: TEXT; mouse_events: 0;
191 effect: GLOW;
192 scale: 1;
193 clip_to: "tabcount_clip";
194 description { state: "default" 0.0;
195 fixed: 1 1;
196 rel1.to: "terminology.tabcount.control";
197 rel2.to: "terminology.tabcount.control";
198 rel1.relative: -0.2 0.0;
199 rel2.relative: -0.2 1.0;
200 color: 51 153 255 64;
201 color2: 51 153 255 18;
202 color3: 51 153 255 8;
203 align: 1.0 0.5;
204 text { font: "Sans"; size: 8;
205 align: 1.0 0.5;
206 min: 1 1;
207 }
208 }
209 description { state: "over" 0.0;
210 inherit: "default" 0.0;
211 color: 255 255 255 255;
212 color2: 51 153 255 128;
213 color3: 51 153 255 20;
214 }
215 }
216 part { name: "tabcount_glow_r0";
217 clip_to: "tabcount_clip";
218 description { state: "default" 0.0;
219 rel1.to: "tabcount_r0";
220 rel2.to: "tabcount_r0";
221 rel1.offset: -4 -4;
222 rel2.offset: 3 3;
223 image {
224 normal: "cr_glow.png";
225 border: 9 9 9 9;
226 }
227 color: 51 153 255 32;
228 }
229 description { state: "over" 0.0;
230 inherit: "default" 0.0;
231 color: 51 153 255 255;
232 }
233 }
234 part { name: "tabcount_glow_r1";
235 clip_to: "tabcount_clip";
236 description { state: "default" 0.0;
237 rel1.to: "tabcount_r1";
238 rel2.to: "tabcount_r1";
239 rel1.offset: -4 -4;
240 rel2.offset: 3 3;
241 image {
242 normal: "cr_glow.png";
243 border: 9 9 9 9;
244 }
245 color: 51 153 255 32;
246 }
247 description { state: "over" 0.0;
248 inherit: "default" 0.0;
249 color: 51 153 255 255;
250 }
251 }
252 part { name: "tabcount_glow_r2";
253 clip_to: "tabcount_clip";
254 description { state: "default" 0.0;
255 rel1.to: "tabcount_r2";
256 rel2.to: "tabcount_r2";
257 rel1.offset: -4 -4;
258 rel2.offset: 3 3;
259 image {
260 normal: "cr_glow.png";
261 border: 9 9 9 9;
262 }
263 color: 51 153 255 32;
264 }
265 description { state: "over" 0.0;
266 inherit: "default" 0.0;
267 color: 51 153 255 255;
268 }
269 }
270 part { name: "tabcount_glow_r3";
271 clip_to: "tabcount_clip";
272 description { state: "default" 0.0;
273 rel1.to: "tabcount_r3";
274 rel2.to: "tabcount_r3";
275 rel1.offset: -4 -4;
276 rel2.offset: 3 3;
277 image {
278 normal: "cr_glow.png";
279 border: 9 9 9 9;
280 }
281 color: 51 153 255 32;
282 }
283 description { state: "over" 0.0;
284 inherit: "default" 0.0;
285 color: 51 153 255 255;
286 }
287 }
288 part { name: "tabcount_r0"; type: RECT;
289 clip_to: "tabcount_clip";
290 description { state: "default" 0.0;
291 rel1.to: "terminology.tabcount.control";
292 rel2.to: "terminology.tabcount.control";
293 rel1.relative: 0.05 0.05;
294 rel2.relative: 0.45 0.45;
295 color: 255 255 255 32;
296 }
297 description { state: "over" 0.0;
298 inherit: "default" 0.0;
299 color: 255 255 255 255;
300 }
301 }
302 part { name: "tabcount_r1"; type: RECT;
303 clip_to: "tabcount_clip";
304 description { state: "default" 0.0;
305 rel1.to: "terminology.tabcount.control";
306 rel2.to: "terminology.tabcount.control";
307 rel1.relative: 0.55 0.05;
308 rel2.relative: 0.95 0.45;
309 color: 255 255 255 32;
310 }
311 description { state: "over" 0.0;
312 inherit: "default" 0.0;
313 color: 255 255 255 255;
314 }
315 }
316 part { name: "tabcount_r2"; type: RECT;
317 clip_to: "tabcount_clip";
318 description { state: "default" 0.0;
319 rel1.to: "terminology.tabcount.control";
320 rel2.to: "terminology.tabcount.control";
321 rel1.relative: 0.05 0.55;
322 rel2.relative: 0.45 0.95;
323 color: 255 255 255 32;
324 }
325 description { state: "over" 0.0;
326 inherit: "default" 0.0;
327 color: 255 255 255 255;
328 }
329 }
330 part { name: "tabcount_r3"; type: RECT;
331 clip_to: "tabcount_clip";
332 description { state: "default" 0.0;
333 rel1.to: "terminology.tabcount.control";
334 rel2.to: "terminology.tabcount.control";
335 rel1.relative: 0.55 0.55;
336 rel2.relative: 0.95 0.95;
337 color: 255 255 255 32;
338 }
339 description { state: "over" 0.0;
340 inherit: "default" 0.0;
341 color: 255 255 255 255;
342 }
343 }
344 part { name: "terminology.tabcount.control"; type: SWALLOW;
345 clip_to: "tabcount_clip";
346 description { state: "default" 0.0;
347 fixed: 1 1;
348 rel1.relative: 1.0 0.0;
349 rel1.offset: -3 2;
350 rel2.relative: 1.0 0.0;
351 rel2.offset: -3 2;
352 align: 1.0 0.0;
353 min: 16 16;
354 }
355 }
356 part { name: "tabcount_ev"; type: RECT; repeat_events: 1;
357 clip_to: "tabcount_clip";
358 description { state: "default" 0.0;
359 fixed: 1 1;
360 rel1.to: "terminology.tabcount.control";
361 rel2.to: "terminology.tabcount.control";
362 color: 0 0 0 0;
363 }
364 }
365 program {
366 signal: "mouse,in"; source: "tabcount_ev";
367 action: STATE_SET "over" 0.0;
368 transition: DECELERATE 0.5;
369 target: "tabcount_r0";
370 target: "tabcount_r1";
371 target: "tabcount_r2";
372 target: "tabcount_r3";
373 target: "tabcount_glow_r0";
374 target: "tabcount_glow_r1";
375 target: "tabcount_glow_r2";
376 target: "tabcount_glow_r3";
377 target: "terminology.tabcount.label";
378 target: "terminology.tabmissed.label";
379 }
380 program {
381 signal: "mouse,out"; source: "tabcount_ev";
382 action: STATE_SET "default" 0.0;
383 transition: DECELERATE 2.0;
384 target: "tabcount_r0";
385 target: "tabcount_r1";
386 target: "tabcount_r2";
387 target: "tabcount_r3";
388 target: "tabcount_glow_r0";
389 target: "tabcount_glow_r1";
390 target: "tabcount_glow_r2";
391 target: "tabcount_glow_r3";
392 target: "terminology.tabcount.label";
393 target: "terminology.tabmissed.label";
394 }
395 program {
396 signal: "mouse,clicked,1"; source: "tabcount_ev";
397 action: SIGNAL_EMIT "tabcount,go" "terminology";
398 }
399 program {
400 signal: "tabcount,off"; source: "terminology";
401 action: STATE_SET "default" 0.0;
402 transition: DECELERATE 0.5;
403 target: "tabcount_clip";
404 }
405 program {
406 signal: "tabcount,on"; source: "terminology";
407 action: STATE_SET "on" 0.0;
408 transition: DECELERATE 0.5;
409 target: "tabcount_clip";
410 }
411 program {
412 signal: "tabmissed,off"; source: "terminology";
413 action: STATE_SET "default" 0.0;
414 transition: DECELERATE 0.5;
415 target: "terminology.tabmissed.label";
416 }
417 program {
418 signal: "tabmissed,on"; source: "terminology";
419 action: STATE_SET "over" 0.0;
420 transition: DECELERATE 0.2;
421 target: "terminology.tabmissed.label";
422 after: "tabmissed2";
423 }
424 program { name: "tabmissed2";
425 signal: "tabmissed,on"; source: "terminology";
426 action: STATE_SET "default" 0.0;
427 transition: DECELERATE 3.0;
428 target: "terminology.tabmissed.label";
429 }
430
431 ////////////////////////////////////////////////////////////////////
432 // overlayed prettiness
433 part { name: "glow";
434 mouse_events: 0;
435 description { state: "default" 0.0;
436 image.normal: "bg_glow_in.png";
437 image.border: 7 7 7 7;
438 image.middle: 0;
439 fill.smooth: 0;
440 color: 51 153 255 0;
441 }
442 description { state: "focused" 0.0;
443 inherit: "default" 0.0;
444 color: 51 153 255 255;
445 }
446 description { state: "focused2" 0.0;
447 inherit: "default" 0.0;
448 color: 51 153 255 64;
449 }
450 }
451 part { name: "bevel";
452 mouse_events: 0;
453 description { state: "default" 0.0;
454 image.normal: "bg_bevel.png";
455 image.border: 3 3 5 3;
456 image.middle: 0;
457 fill.smooth: 0;
458 }
459 }
460 part { name: "glintclip"; type: RECT;
461 description { state: "default" 0.0;
462 }
463 }
464 part { name: "glint";
465 mouse_events: 0;
466 clip_to: "glintclip";
467 description { state: "default" 0.0;
468 fixed: 1 1;
469 min: 79 5;
470 max: 79 5;
471 rel1 {
472 relative: 0.0 0.0;
473 offset: 0 0;
474 }
475 rel2 {
476 relative: 1.0 0.0;
477 offset: -1 0;
478 }
479 image.normal: "bg_glint.png";
480 color: 255 255 255 128;
481 }
482 description { state: "focused" 0.0;
483 inherit: "default" 0.0;
484 color: 255 255 255 255;
485 }
486 }
487 part { name: "shine";
488 mouse_events: 0;
489 description { state: "default" 0.0;
490 rel1.offset: 0 0;
491 rel2.offset: -1 -1;
492 image.normal: "bg_shine.png";
493 fill.smooth: 0;
494 align: 0.5 0.0;
495 aspect: (255/120) (255/120);
496 aspect_preference: HORIZONTAL;
497 color: 255 255 255 64;
498 }
499 description { state: "focused" 0.0;
500 inherit: "default" 0.0;
501 color: 255 255 255 255;
502 }
503 }
504 program {
505 signal: "focus,in"; source: "terminology";
506 action: STATE_SET "focused" 0.0;
507 target: "glint";
508 target: "glow";
509 target: "shine";
510 after: "focus_in2";
511 }
512 program { name: "focus_in2";
513 action: STATE_SET "focused2" 0.0;
514 transition: DECELERATE 0.5;
515 target: "glow";
516 }
517 program {
518 signal: "focus,out"; source: "terminology";
519 action: STATE_SET "default" 0.0;
520 target: "glint";
521 target: "glow";
522 target: "shine";
523 }
524
525 ////////////////////////////////////////////////////////////////////
526 // visual bell - spinning red overlay of death
527 part { name: "bell_proxy"; type: PROXY;
528 mouse_events: 0;
529 description { state: "default" 0.0;
530 source: "terminology.content";
531 visible: 0;
532 proxy.source_visible: 1;
533 rel1.to: "terminology.content";
534 rel2.to: "terminology.content";
535 map {
536 on: 1;
537 perspective_on: 1;
538 rotation.y: 0;
539 }
540 }
541 description { state: "visible" 0.0;
542 inherit: "default" 0.0;
543 proxy.source_visible: 0;
544 visible: 1;
545 }
546 description { state: "rotated1" 0.0;
547 inherit: "visible" 0.0;
548 rel1.offset: 20 20;
549 rel1.to: "";
550 rel2.offset: 20 20;
551 rel2.to: "";
552 map.rotation.y: 20;
553 }
554 description { state: "rotated2" 0.0;
555 inherit: "visible" 0.0;
556 rel1.offset: -20 -20;
557 rel1.to: "";
558 rel2.offset: -20 -20;
559 rel2.to: "";
560 map.rotation.y: -20;
561 }
562 }
563 program {
564 signal: "bell"; source: "terminology";
565 action: PLAY_SAMPLE "bell" 1.0;
566 }
567 program {
568 signal: "bell"; source: "terminology";
569 action: STATE_SET "visible" 0.0;
570 target: "bell_proxy";
571 after: "bell_proxy2";
572 }
573 program { name: "bell_proxy2";
574 action: STATE_SET "rotated1" 0.0;
575 transition: SINUSOIDAL 0.1 CURRENT;
576 target: "bell_proxy";
577 after: "bell_proxy3";
578 }
579 program { name: "bell_proxy3";
580 action: STATE_SET "rotated2" 0.0;
581 transition: SINUSOIDAL 0.1 CURRENT;
582 target: "bell_proxy";
583 after: "bell_proxy4";
584 }
585 program { name: "bell_proxy4";
586 action: STATE_SET "rotated1" 0.0;
587 transition: SINUSOIDAL 0.1 CURRENT;
588 target: "bell_proxy";
589 after: "bell_proxy_end";
590 }
591 program { name: "bell_proxy_end";
592 action: STATE_SET "default" 0.0;
593 target: "bell_proxy";
594 }
595
596 ////////////////////////////////////////////////////////////////////
597 // popup media over the terminal (until dismissed)
598 part { name: "popmedia_clip"; type: RECT;
599 mouse_events: 1;
600 description { state: "default" 0.0;
601 fixed: 1 1;
602 visible: 0;
603 color: 255 255 255 0;
604 }
605 description { state: "visible" 0.0;
606 inherit: "default" 0.0;
607 visible: 1;
608 color: 255 255 255 255;
609 }
610 }
611 part { name: "popmedia_shadow";
612 mouse_events: 0;
613 description { state: "default" 0.0;
614 fixed: 1 1;
615 rel1.to: "terminology.popmedia";
616 rel2.to: "terminology.popmedia";
617 image.normal: "pm_shadow.png";
618 image.border: 64 64 64 64;
619 image.border_scale_by: 0.1;
620 fill.smooth: 0;
621 visible: 0;
622 }
623 description { state: "visible" 0.0;
624 inherit: "default" 0.0;
625 rel1.offset: -32 -32;
626 rel2.offset: 31 31;
627 image.border_scale_by: 1.0;
628 visible: 1;
629 }
630 }
631 part { name: "popmedia_fill";
632 mouse_events: 0;
633 description { state: "default" 0.0;
634 fixed: 1 1;
635 rel1.to: "terminology.popmedia";
636 rel2.to: "terminology.popmedia";
637 image.normal: "pm_fill.png";
638 fill {
639 size.relative: 0.0 0.0;
640 size.offset: 64 64;
641 }
642 }
643 }
644 part { name: "terminology.popmedia"; type: SWALLOW;
645 clip_to: "popmedia_clip";
646 description { state: "default" 0.0;
647 fixed: 1 1;
648 rel1.relative: 0.5 0.5;
649 rel2.relative: 0.5 0.5;
650 visible: 0;
651 }
652 description { state: "image" 0.0;
653 inherit: "default" 0.0;
654 rel1.relative: 0.1 0.1;
655 rel2.relative: 0.9 0.9;
656 visible: 1;
657 }
658 description { state: "scale" 0.0;
659 inherit: "default" 0.0;
660 rel1.relative: 0.1 0.1;
661 rel2.relative: 0.9 0.9;
662 visible: 1;
663 }
664 description { state: "edje" 0.0;
665 inherit: "default" 0.0;
666 rel1.relative: 0.1 0.1;
667 rel2.relative: 0.9 0.9;
668 visible: 1;
669 }
670 description { state: "movie" 0.0;
671 inherit: "default" 0.0;
672 rel1.relative: 0.1 0.1;
673 rel2.relative: 0.9 0.9;
674 visible: 1;
675 }
676 }
677 part { name: "popmedia_overlay";
678 mouse_events: 0;
679 description { state: "default" 0.0;
680 fixed: 1 1;
681 rel1.to: "terminology.popmedia";
682 rel2.to: "terminology.popmedia";
683 image.normal: "pm_overlay.png";
684 fill.smooth: 0;
685 visible: 0;
686 }
687 description { state: "visible" 0.0;
688 inherit: "default" 0.0;
689 visible: 1;
690 }
691 }
692 part { name: "popmedia_bevel";
693 mouse_events: 0;
694 description { state: "default" 0.0;
695 fixed: 1 1;
696 rel1.to: "terminology.popmedia";
697 rel2.to: "terminology.popmedia";
698 image.normal: "bg_bevel.png";
699 image.border: 3 3 5 3;
700 image.middle: 0;
701 fill.smooth: 0;
702 visible: 0;
703 }
704 description { state: "visible" 0.0;
705 inherit: "default" 0.0;
706 visible: 1;
707 }
708 }
709 part { name: "popmedia_glintclip"; type: RECT;
710 mouse_events: 0;
711 description { state: "default" 0.0;
712 fixed: 1 1;
713 visible: 0;
714 }
715 description { state: "visible" 0.0;
716 inherit: "default" 0.0;
717 visible: 1;
718 }
719 }
720 part { name: "popmedia_glint";
721 mouse_events: 0;
722 clip_to: "popmedia_glintclip";
723 description { state: "default" 0.0;
724 fixed: 1 1;
725 min: 79 5;
726 max: 79 5;
727 rel1 {
728 to: "terminology.popmedia";
729 relative: 0.0 0.0;
730 offset: 0 0;
731 }
732 rel2 {
733 to: "terminology.popmedia";
734 relative: 1.0 0.0;
735 offset: -1 0;
736 }
737 image.normal: "bg_glint.png";
738 visible: 0;
739 }
740 description { state: "visible" 0.0;
741 inherit: "default" 0.0;
742 visible: 1;
743 }
744 }
745 part { name: "popmedia_shine";
746 mouse_events: 0;
747 description { state: "default" 0.0;
748 fixed: 1 1;
749 rel1.to: "terminology.popmedia";
750 rel2.to: "terminology.popmedia";
751 image.normal: "bg_shine.png";
752 fill.smooth: 0;
753 align: 0.5 0.0;
754 aspect: (255/120) (255/120);
755 aspect_preference: HORIZONTAL;
756 visible: 0;
757 }
758 description { state: "visible" 0.0;
759 inherit: "default" 0.0;
760 visible: 1;
761 }
762 }
763 part { name: "popmedia_dismiss"; type: RECT;
764 mouse_events: 1;
765 description { state: "default" 0.0;
766 fixed: 1 1;
767 color: 0 0 0 0;
768 visible: 0;
769 }
770 description { state: "visible" 0.0;
771 inherit: "default" 0.0;
772 visible: 1;
773 }
774 }
775 program {
776 signal: "mouse,clicked,*"; source: "popmedia_dismiss";
777 action: STATE_SET "default" 0.0;
778 transition: DECELERATE 0.5;
779 target: "terminology.popmedia";
780 target: "popmedia_clip";
781 target: "popmedia_dismiss";
782 target: "popmedia_shadow";
783 target: "popmedia_fill";
784 target: "popmedia_overlay";
785 target: "popmedia_bevel";
786 target: "popmedia_glint";
787 target: "popmedia_glintclip";
788 target: "popmedia_shine";
789 after: "popmedia_dismiss2";
790 }
791 program { name: "popmedia_dismiss2";
792 action: SIGNAL_EMIT "popmedia,done" "terminology";
793 }
794 program {
795 signal: "popmedia,off"; source: "terminology";
796 action: STATE_SET "default" 0.0;
797 transition: DECELERATE 0.2;
798 target: "terminology.popmedia";
799 target: "popmedia_clip";
800 target: "popmedia_dismiss";
801 target: "popmedia_shadow";
802 target: "popmedia_fill";
803 target: "popmedia_overlay";
804 target: "popmedia_bevel";
805 target: "popmedia_glint";
806 target: "popmedia_glintclip";
807 target: "popmedia_shine";
808 after: "popmedia_dismiss2";
809 }
810 program {
811 signal: "popmedia,image"; source: "terminology";
812 action: STATE_SET "image" 0.0;
813 transition: DECELERATE 0.2;
814 target: "terminology.popmedia";
815 }
816 program {
817 signal: "popmedia,scale"; source: "terminology";
818 action: STATE_SET "scale" 0.0;
819 transition: DECELERATE 0.2;
820 target: "terminology.popmedia";
821 }
822 program {
823 signal: "popmedia,edje"; source: "terminology";
824 action: STATE_SET "edje" 0.0;
825 transition: DECELERATE 0.2;
826 target: "terminology.popmedia";
827 }
828 program {
829 signal: "popmedia,movie"; source: "terminology";
830 action: STATE_SET "movie" 0.0;
831 transition: DECELERATE 0.2;
832 target: "terminology.popmedia";
833 }
834 program {
835 signal: "popmedia,image"; source: "terminology";
836 action: STATE_SET "visible" 0.0;
837 transition: DECELERATE 0.2;
838 target: "popmedia_clip";
839 target: "popmedia_dismiss";
840 target: "popmedia_shadow";
841 target: "popmedia_fill";
842 target: "popmedia_overlay";
843 target: "popmedia_bevel";
844 target: "popmedia_glint";
845 target: "popmedia_glintclip";
846 target: "popmedia_shine";
847 }
848 program {
849 signal: "popmedia,scale"; source: "terminology";
850 action: STATE_SET "visible" 0.0;
851 transition: DECELERATE 0.2;
852 target: "popmedia_clip";
853 target: "popmedia_dismiss";
854 target: "popmedia_shadow";
855 target: "popmedia_fill";
856 target: "popmedia_overlay";
857 target: "popmedia_bevel";
858 target: "popmedia_glint";
859 target: "popmedia_glintclip";
860 target: "popmedia_shine";
861 }
862 program {
863 signal: "popmedia,edje"; source: "terminology";
864 action: STATE_SET "visible" 0.0;
865 transition: DECELERATE 0.2;
866 target: "popmedia_clip";
867 target: "popmedia_dismiss";
868 target: "popmedia_shadow";
869 target: "popmedia_fill";
870 target: "popmedia_overlay";
871 target: "popmedia_bevel";
872 target: "popmedia_glint";
873 target: "popmedia_glintclip";
874 target: "popmedia_shine";
875 }
876 program {
877 signal: "popmedia,movie"; source: "terminology";
878 action: STATE_SET "visible" 0.0;
879 transition: DECELERATE 0.2;
880 target: "popmedia_clip";
881 target: "popmedia_dismiss";
882 target: "popmedia_shadow";
883 target: "popmedia_fill";
884 target: "popmedia_overlay";
885 target: "popmedia_bevel";
886 target: "popmedia_glint";
887 target: "popmedia_glintclip";
888 target: "popmedia_shine";
889 }
890 }
891 }
892
893 group { name: "terminology/base";
894 parts {
895 part { name: "terminology.content"; type: SWALLOW;
896 description { state: "default" 0.0;
897 }
898 }
899 ////////////////////////////////////////////////////////////////////
900 // a place terminology will place an entry box for internal commands
901 part { name: "cmdclip"; type: RECT;
902 description { state: "default" 0.0;
903 rel1.to: "terminology.cmdbox";
904 rel1.offset: -100 -100;
905 rel2.to: "terminology.cmdbox";
906 rel2.offset: 99 99;
907 color: 255 255 255 0;
908 visible: 0;
909 }
910 description { state: "visible" 0.0;
911 inherit: "default" 0.0;
912 color: 255 255 255 255;
913 visible: 1;
914 }
915 }
916 part { name: "cmdback"; type: RECT;
917 clip_to: "cmdclip";
918 description { state: "default" 0.0;
919 color: 255 255 255 255;
920 rel1.to: "terminology.cmdbox";
921 rel1.offset: -2 -2;
922 rel2.to: "terminology.cmdbox";
923 rel2.offset: 1 1;
924 }
925 }
926 part { name: "terminology.cmdbox"; type: SWALLOW;
927 clip_to: "cmdclip";
928 description { state: "default" 0.0;
929 fixed: 1 1;
930 min: 8 8;
931 rel1.relative: 0.0 1.0;
932 rel1.offset: 8 9;
933 rel2.offset: -9 9;
934 align: 0.5 0.0;
935 }
936 description { state: "visible" 0.0;
937 inherit: "default" 0.0;
938 rel1.offset: 8 -9;
939 rel2.offset: -9 -9;
940 align: 0.5 1.0;
941 }
942 }
943 program {
944 signal: "cmdbox,show"; source: "terminology";
945 action: STATE_SET "visible" 0.0;
946 transition: DECELERATE 0.4;
947 target: "cmdclip";
948 }
949 program {
950 signal: "cmdbox,show"; source: "terminology";
951 action: STATE_SET "visible" 0.0;
952 transition: SPRING 0.4 0.5 4;
953 target: "terminology.cmdbox";
954 }
955 program {
956 signal: "cmdbox,hide"; source: "terminology";
957 action: STATE_SET "default" 0.0;
958 transition: ACCELERATE 0.5;
959 target: "terminology.cmdbox";
960 target: "cmdclip";
961 }
962
963 ////////////////////////////////////////////////////////////////////
964 // overlayed options and controls
965 part { name: "terminology.about"; type: SWALLOW;
966 scale: 1;
967 description { state: "default" 0.0;
968 fixed: 1 1;
969 min: 198 198;
970 max: 198 198;
971 align: 0.5 0.0;
972 visible: 0;
973 rel1.relative: 0.0 1.0;
974 rel2.relative: 1.0 1.0;
975 }
976 description { state: "visible" 0.0;
977 inherit: "default" 0.0;
978 visible: 1;
979 align: 0.5 0.5;
980 rel1.relative: 0.0 0.0;
981 rel2.relative: 1.0 1.0;
982 }
983 }
984 program {
985 signal: "about,show"; source: "terminology";
986 action: STATE_SET "visible" 0.0;
987 transition: SPRING 1.2 2.0 6;
988 target: "terminology.about";
989 }
990 program {
991 signal: "about,hide"; source: "terminology";
992 action: STATE_SET "default" 0.0;
993 transition: DECELERATE 0.6;
994 target: "terminology.about";
995 }
996
997 ////////////////////////////////////////////////////////////////////
998 // swallow to hold invisile rect to click on to dismiss things
999 part { name: "terminology.dismiss"; type: SWALLOW;
1000 description { state: "default" 0.0;
1001 }
1002 }
1003
1004 ////////////////////////////////////////////////////////////////////
1005 // overlayed options and controls
1006 part { name: "terminology.optdetails"; type: SWALLOW;
1007 scale: 1;
1008 description { state: "default" 0.0;
1009 fixed: 1 1;
1010 min: 40 40;
1011 align: 0.0 0.5;
1012 visible: 0;
1013 rel1 {
1014 relative: 1.0 0.02;
1015 offset: 8 8;
1016 }
1017 rel2 {
1018 relative: 1.0 0.98;
1019 offset: 8 -9;
1020 }
1021 }
1022 description { state: "visible" 0.0;
1023 inherit: "default" 0.0;
1024 visible: 1;
1025 align: 1.0 0.5;
1026 rel1 {
1027 relative: 0.1 0.02;
1028 offset: 8 8;
1029 }
1030 rel2 {
1031 to_x: "terminology.options";
1032 relative: 0.0 0.98;
1033 offset: -9 -9;
1034 }
1035 }
1036 }
1037 program {
1038 signal: "optdetails,show"; source: "terminology";
1039 action: STATE_SET "visible" 0.0;
1040 transition: DECELERATE 0.4;
1041 target: "terminology.optdetails";
1042 }
1043 program {
1044 signal: "optdetails,hide"; source: "terminology";
1045 action: STATE_SET "default" 0.0;
1046 transition: DECELERATE 0.2;
1047 target: "terminology.optdetails";
1048 after: "opdt_hide2";
1049 }
1050 program { name: "opdt_hide2";
1051 action: SIGNAL_EMIT "optdetails,hide,done" "terminology";
1052 }
1053
1054 part { name: "terminology.options"; type: SWALLOW;
1055 scale: 1;
1056 description { state: "default" 0.0;
1057 fixed: 1 1;
1058 align: 0.0 0.5;
1059 visible: 0;
1060 rel1 {
1061 relative: 1.0 0.02;
1062 offset: 8 8;
1063 }
1064 rel2 {
1065 relative: 1.0 0.98;
1066 offset: 8 -9;
1067 }
1068 }
1069 description { state: "visible" 0.0;
1070 inherit: "default" 0.0;
1071 visible: 1;
1072 align: 1.0 0.5;
1073 rel1 {
1074 offset: -9 8;
1075 }
1076 rel2 {
1077 offset: -9 -9;
1078 }
1079 }
1080 }
1081 program {
1082 signal: "options,show"; source: "terminology";
1083 action: STATE_SET "visible" 0.0;
1084 transition: DECELERATE 0.4;
1085 target: "terminology.options";
1086 }
1087 program {
1088 signal: "options,hide"; source: "terminology";
1089 action: STATE_SET "default" 0.0;
1090 transition: DECELERATE 0.6;
1091 target: "terminology.options";
1092 }
1093
1094 part { name: "terminology.controls"; type: SWALLOW;
1095 scale: 1;
1096 description { state: "default" 0.0;
1097 fixed: 1 1;
1098 min: 10 10;
1099 align: 0.0 0.5;
1100 visible: 0;
1101 rel1 {
1102 relative: 1.0 0.5;
1103 offset: 8 8;
1104 }
1105 rel2 {
1106 relative: 1.0 0.5;
1107 offset: 8 -9;
1108 }
1109 }
1110 description { state: "visible" 0.0;
1111 inherit: "default" 0.0;
1112 visible: 1;
1113 align: 1.0 0.5;
1114 rel1 {
1115 relative: 1.0 0.5;
1116 offset: -9 8;
1117 }
1118 rel2 {
1119 offset: -9 -9;
1120 }
1121 }
1122 }
1123 program {
1124 signal: "controls,show"; source: "terminology";
1125 action: STATE_SET "visible" 0.0;
1126 transition: DECELERATE 0.3;
1127 target: "terminology.controls";
1128 }
1129 program {
1130 signal: "controls,hide"; source: "terminology";
1131 action: STATE_SET "default" 0.0;
1132 transition: DECELERATE 0.5;
1133 target: "terminology.controls";
1134 }
1135 }
1136 }
1137
1138//////////////////////////////////////////////////////////////////////////////
1139 //// the selection
1140 // selections come in 5 modes:
1141 //
1142 // oneline (also multiple lines but all fill the row):
1143 // | ######### |
1144 //
1145 // disjoint:
1146 // | #######|
1147 // |## |
1148 //
1149 // default:
1150 // | ###########|
1151 // |######### |
1152 //
1153 // topfull:
1154 // |##############|
1155 // |###### |
1156 //
1157 // bottomfull:
1158 // | ######|
1159 // |##############|
1160#define PATCOL 51 153 255 128
1161#define PATCOL2 51 153 255 144
1162#define OUTCOL 51 153 255 128
1163#define OUTCOL2 51 153 255 255
1164
1165 group { name: "terminology/selection";
1166 images {
1167 image: "sl_stripe.png" COMP;
1168 image: "sl_left.png" COMP;
1169 image: "sl_right.png" COMP;
1170 image: "sl_top.png" COMP;
1171 image: "sl_bottom.png" COMP;
1172 image: "sl_htop.png" COMP;
1173 image: "sl_hbottom.png" COMP;
1174 }
1175 parts {
1176 // background pattern. duplicated because clips cut out regions of
1177 // it to see and clips don't overlap
1178 part { name: "background_top";
1179 mouse_events: 0;
1180 clip_to: "top_clip";
1181 description { state: "default" 0.0;
1182 color: PATCOL;
1183 image.normal: "sl_stripe.png";
1184 fill.size.relative: 0.0 0.0;
1185 fill.size.offset: 40 40;
1186 }
1187 description { state: "pulse" 0.0;
1188 inherit: "default" 0.0;
1189 color: PATCOL2;
1190 }
1191 }
1192 part { name: "background_middle";
1193 mouse_events: 0;
1194 clip_to: "middle_clip";
1195 description { state: "default" 0.0;
1196 color: PATCOL;
1197 image.normal: "sl_stripe.png";
1198 fill.size.relative: 0.0 0.0;
1199 fill.size.offset: 40 40;
1200 }
1201 description { state: "pulse" 0.0;
1202 inherit: "default" 0.0;
1203 color: PATCOL2;
1204 }
1205 }
1206 part { name: "background_bottom";
1207 mouse_events: 0;
1208 clip_to: "bottom_clip";
1209 description { state: "default" 0.0;
1210 color: PATCOL;
1211 image.normal: "sl_stripe.png";
1212 fill.size.relative: 0.0 0.0;
1213 fill.size.offset: 40 40;
1214 }
1215 description { state: "pulse" 0.0;
1216 inherit: "default" 0.0;
1217 color: PATCOL2;
1218 }
1219 }
1220
1221 // clips that clip the above pattern images to occupy specific
1222 // regions of the object (or be invisible since clip is invisible)
1223 part { name: "top_clip"; type: RECT;
1224 mouse_events: 0;
1225 description { state: "default" 0.0;
1226 rel1.to: "terminology.top_left";
1227 rel1.relative: 1.0 0.0;
1228 rel2.to_y: "terminology.top_left";
1229 rel2.relative: 1.0 1.0;
1230 }
1231 description { state: "oneline" 0.0;
1232 visible: 0;
1233 }
1234 }
1235 part { name: "middle_clip"; type: RECT;
1236 mouse_events: 0;
1237 description { state: "default" 0.0;
1238 rel1.to: "terminology.top_left";
1239 rel1.relative: 0.0 1.0;
1240 rel2.to: "terminology.bottom_right";
1241 rel2.relative: 1.0 0.0;
1242 }
1243 description { state: "oneline" 0.0;
1244 rel1.to: "terminology.top_left";
1245 rel1.relative: 1.0 0.0;
1246 rel2.to: "terminology.bottom_right";
1247 rel2.relative: 0.0 1.0;
1248 }
1249 }
1250 part { name: "bottom_clip"; type: RECT;
1251 mouse_events: 0;
1252 description { state: "default" 0.0;
1253 rel1.to_y: "terminology.bottom_right";
1254 rel1.relative: 0.0 0.0;
1255 rel2.to_x: "terminology.bottom_right";
1256 rel2.relative: 0.0 1.0;
1257 }
1258 description { state: "oneline" 0.0;
1259 visible: 0;
1260 }
1261 }
1262
1263 // the outline around the selection...
1264#define TARGETS \
1265target: "top_clip"; target: "middle_clip"; target: "bottom_clip"; \
1266target: "0.clip"; target: "1.clip"; target: "2.clip"; target: "3.clip"; target: "4.clip"
1267
1268 part { name: "0.clip"; type: RECT;
1269 mouse_events: 0;
1270 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1271 description { state: "oneline" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1272 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1273 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1274 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1275 }
1276 part { name: "1.clip"; type: RECT;
1277 mouse_events: 0;
1278 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1279 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1280 description { state: "disjoint" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1281 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1282 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1283 }
1284 part { name: "2.clip"; type: RECT;
1285 mouse_events: 0;
1286 description { state: "default" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1287 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1288 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1289 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1290 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1291 }
1292 part { name: "3.clip"; type: RECT;
1293 mouse_events: 0;
1294 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1295 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1296 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1297 description { state: "topfull" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1298 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1299 }
1300 part { name: "4.clip"; type: RECT;
1301 mouse_events: 0;
1302 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1303 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1304 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1305 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1306 description { state: "bottomfull" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1307 }
1308
1309 // oneline (also multiple lines but all fill the row):
1310 // | ######### |
1311 part { name: "0.left";
1312 mouse_events: 0;
1313 clip_to: "0.clip";
1314 description { state: "default" 0.0;
1315 rel1 {
1316 to_x: "terminology.top_left";
1317 relative: 1.0 0.0;
1318 offset: -1 -1;
1319 }
1320 rel2 {
1321 to_x: "terminology.top_left";
1322 relative: 1.0 1.0;
1323 offset: 2 0;
1324 }
1325 color: OUTCOL;
1326 image.normal: "sl_left.png";
1327 image.border: 0 0 4 4;
1328 fill.smooth: 0;
1329 }
1330 description { state: "pulse" 0.0;
1331 inherit: "default" 0.0;
1332 color: OUTCOL2;
1333 }
1334 }
1335 part { name: "0.right";
1336 mouse_events: 0;
1337 clip_to: "0.clip";
1338 description { state: "default" 0.0;
1339 rel1 {
1340 to_x: "terminology.bottom_right";
1341 relative: 0.0 0.0;
1342 offset: -3 -1;
1343 }
1344 rel2 {
1345 to_x: "terminology.bottom_right";
1346 relative: 0.0 1.0;
1347 offset: 0 0;
1348 }
1349 color: OUTCOL;
1350 image.normal: "sl_right.png";
1351 image.border: 0 0 4 4;
1352 fill.smooth: 0;
1353 }
1354 description { state: "pulse" 0.0;
1355 inherit: "default" 0.0;
1356 color: OUTCOL2;
1357 }
1358 }
1359 part { name: "0.top";
1360 mouse_events: 0;
1361 clip_to: "0.clip";
1362 description { state: "default" 0.0;
1363 rel1 {
1364 to: "0.left";
1365 relative: 1.0 0.0;
1366 offset: 0 0;
1367 }
1368 rel2 {
1369 to: "0.right";
1370 relative: 0.0 0.0;
1371 offset: -1 3;
1372 }
1373 color: OUTCOL;
1374 image.normal: "sl_htop.png";
1375 fill.smooth: 0;
1376 }
1377 description { state: "pulse" 0.0;
1378 inherit: "default" 0.0;
1379 color: OUTCOL2;
1380 }
1381 }
1382 part { name: "0.bottom";
1383 mouse_events: 0;
1384 clip_to: "0.clip";
1385 description { state: "default" 0.0;
1386 rel1 {
1387 to: "0.left";
1388 relative: 1.0 1.0;
1389 offset: 0 -4;
1390 }
1391 rel2 {
1392 to: "0.right";
1393 relative: 0.0 1.0;
1394 offset: -1 -1;
1395 }
1396 color: OUTCOL;
1397 image.normal: "sl_hbottom.png";
1398 fill.smooth: 0;
1399 }
1400 description { state: "pulse" 0.0;
1401 inherit: "default" 0.0;
1402 color: OUTCOL2;
1403 }
1404 }
1405 program { name: "oneline";
1406 signal: "mode,oneline";
1407 source: "terminology";
1408 action: STATE_SET "oneline" 0.0;
1409 TARGETS;
1410 }
1411
1412 // disjoint:
1413 // | #######|
1414 // |## |
1415 part { name: "1.left";
1416 mouse_events: 0;
1417 clip_to: "1.clip";
1418 description { state: "default" 0.0;
1419 rel1 {
1420 to: "terminology.top_left";
1421 relative: 1.0 0.0;
1422 offset: -1 -1;
1423 }
1424 rel2 {
1425 to: "terminology.top_left";
1426 relative: 1.0 1.0;
1427 offset: 2 0;
1428 }
1429 color: OUTCOL;
1430 image.normal: "sl_left.png";
1431 image.border: 0 0 4 4;
1432 fill.smooth: 0;
1433 }
1434 description { state: "pulse" 0.0;
1435 inherit: "default" 0.0;
1436 color: OUTCOL2;
1437 }
1438 }
1439 part { name: "1.right";
1440 mouse_events: 0;
1441 clip_to: "1.clip";
1442 description { state: "default" 0.0;
1443 rel1 {
1444 to_y: "terminology.top_left";
1445 relative: 1.0 0.0;
1446 offset: -4 -1;
1447 }
1448 rel2 {
1449 to_y: "terminology.top_left";
1450 relative: 1.0 1.0;
1451 offset: -1 0;
1452 }
1453 color: OUTCOL;
1454 image.normal: "sl_right.png";
1455 image.border: 0 0 4 4;
1456 fill.smooth: 0;
1457 }
1458 description { state: "pulse" 0.0;
1459 inherit: "default" 0.0;
1460 color: OUTCOL2;
1461 }
1462 }
1463 part { name: "1.top";
1464 mouse_events: 0;
1465 clip_to: "1.clip";
1466 description { state: "default" 0.0;
1467 rel1 {
1468 to: "1.left";
1469 relative: 1.0 0.0;
1470 offset: 0 0;
1471 }
1472 rel2 {
1473 to: "1.right";
1474 relative: 0.0 0.0;
1475 offset: -1 3;
1476 }
1477 color: OUTCOL;
1478 image.normal: "sl_htop.png";
1479 fill.smooth: 0;
1480 }
1481 description { state: "pulse" 0.0;
1482 inherit: "default" 0.0;
1483 color: OUTCOL2;
1484 }
1485 }
1486 part { name: "1.bottom";
1487 mouse_events: 0;
1488 clip_to: "1.clip";
1489 description { state: "default" 0.0;
1490 rel1 {
1491 to: "1.left";
1492 relative: 1.0 1.0;
1493 offset: 0 -4;
1494 }
1495 rel2 {
1496 to: "1.right";
1497 relative: 0.0 1.0;
1498 offset: -1 -1;
1499 }
1500 color: OUTCOL;
1501 image.normal: "sl_hbottom.png";
1502 fill.smooth: 0;
1503 }
1504 description { state: "pulse" 0.0;
1505 inherit: "default" 0.0;
1506 color: OUTCOL2;
1507 }
1508 }
1509 part { name: "1.left2";
1510 mouse_events: 0;
1511 clip_to: "1.clip";
1512 description { state: "default" 0.0;
1513 rel1 {
1514 to_y: "terminology.bottom_right";
1515 offset: -1 -1;
1516 }
1517 rel2 {
1518 to_y: "terminology.bottom_right";
1519 relative: 0.0 1.0;
1520 offset: 2 0;
1521 }
1522 color: OUTCOL;
1523 image.normal: "sl_left.png";
1524 image.border: 0 0 4 4;
1525 fill.smooth: 0;
1526 }
1527 description { state: "pulse" 0.0;
1528 inherit: "default" 0.0;
1529 color: OUTCOL2;
1530 }
1531 }
1532 part { name: "1.right2";
1533 mouse_events: 0;
1534 clip_to: "1.clip";
1535 description { state: "default" 0.0;
1536 rel1 {
1537 to: "terminology.bottom_right";
1538 relative: 0.0 0.0;
1539 offset: -3 -1;
1540 }
1541 rel2 {
1542 to: "terminology.bottom_right";
1543 relative: 0.0 1.0;
1544 offset: 0 0;
1545 }
1546 color: OUTCOL;
1547 image.normal: "sl_right.png";
1548 image.border: 0 0 4 4;
1549 fill.smooth: 0;
1550 }
1551 description { state: "pulse" 0.0;
1552 inherit: "default" 0.0;
1553 color: OUTCOL2;
1554 }
1555 }
1556 part { name: "1.top2";
1557 mouse_events: 0;
1558 clip_to: "1.clip";
1559 description { state: "default" 0.0;
1560 rel1 {
1561 to: "1.left2";
1562 relative: 1.0 0.0;
1563 offset: 0 0;
1564 }
1565 rel2 {
1566 to: "1.right2";
1567 relative: 0.0 0.0;
1568 offset: -1 3;
1569 }
1570 color: OUTCOL;
1571 image.normal: "sl_htop.png";
1572 fill.smooth: 0;
1573 }
1574 description { state: "pulse" 0.0;
1575 inherit: "default" 0.0;
1576 color: OUTCOL2;
1577 }
1578 }
1579 part { name: "1.bottom2";
1580 mouse_events: 0;
1581 clip_to: "1.clip";
1582 description { state: "default" 0.0;
1583 rel1 {
1584 to: "1.left2";
1585 relative: 1.0 1.0;
1586 offset: 0 -4;
1587 }
1588 rel2 {
1589 to: "1.right2";
1590 relative: 0.0 1.0;
1591 offset: -1 -1;
1592 }
1593 color: OUTCOL;
1594 image.normal: "sl_hbottom.png";
1595 fill.smooth: 0;
1596 }
1597 description { state: "pulse" 0.0;
1598 inherit: "default" 0.0;
1599 color: OUTCOL2;
1600 }
1601 }
1602 program { name: "disjoint";
1603 signal: "mode,disjoint";
1604 source: "terminology";
1605 action: STATE_SET "disjoint" 0.0;
1606 TARGETS;
1607 }
1608
1609 // default:
1610 // | ###########|
1611 // |######### |
1612 part { name: "2.topkink";
1613 mouse_events: 0;
1614 clip_to: "2.clip";
1615 description { state: "default" 0.0;
1616 rel1 {
1617 to: "top_clip";
1618 relative: 0.0 0.0;
1619 offset: -4 -1;
1620 }
1621 rel2 {
1622 to: "top_clip";
1623 relative: 0.0 1.0;
1624 offset: 2 2;
1625 }
1626 color: OUTCOL;
1627 image.normal: "sl_top.png";
1628 image.border: 0 0 4 7;
1629 }
1630 description { state: "pulse" 0.0;
1631 inherit: "default" 0.0;
1632 color: OUTCOL2;
1633 }
1634 }
1635 part { name: "2.bottomkink";
1636 mouse_events: 0;
1637 clip_to: "2.clip";
1638 description { state: "default" 0.0;
1639 rel1 {
1640 to: "bottom_clip";
1641 relative: 1.0 0.0;
1642 offset: -3 -3;
1643 }
1644 rel2 {
1645 to: "bottom_clip";
1646 relative: 1.0 1.0;
1647 offset: 3 0;
1648 }
1649 color: OUTCOL;
1650 image.normal: "sl_bottom.png";
1651 image.border: 0 0 7 4;
1652 }
1653 description { state: "pulse" 0.0;
1654 inherit: "default" 0.0;
1655 color: OUTCOL2;
1656 }
1657 }
1658 part { name: "2.left";
1659 mouse_events: 0;
1660 clip_to: "2.clip";
1661 description { state: "default" 0.0;
1662 rel1 {
1663 to: "middle_clip";
1664 offset: -1 -1;
1665 }
1666 rel2 {
1667 to: "bottom_clip";
1668 relative: 0.0 1.0;
1669 offset: 2 0;
1670 }
1671 color: OUTCOL;
1672 image.normal: "sl_left.png";
1673 image.border: 0 0 4 4;
1674 fill.smooth: 0;
1675 }
1676 description { state: "pulse" 0.0;
1677 inherit: "default" 0.0;
1678 color: OUTCOL2;
1679 }
1680 }
1681 part { name: "2.right";
1682 mouse_events: 0;
1683 clip_to: "2.clip";
1684 description { state: "default" 0.0;
1685 rel1 {
1686 to: "top_clip";
1687 relative: 1.0 0.0;
1688 offset: -3 -1;
1689 }
1690 rel2 {
1691 to: "middle_clip";
1692 offset: 0 0;
1693 }
1694 color: OUTCOL;
1695 image.normal: "sl_right.png";
1696 image.border: 0 0 4 4;
1697 fill.smooth: 0;
1698 }
1699 description { state: "pulse" 0.0;
1700 inherit: "default" 0.0;
1701 color: OUTCOL2;
1702 }
1703 }
1704 part { name: "2.top";
1705 mouse_events: 0;
1706 clip_to: "2.clip";
1707 description { state: "default" 0.0;
1708 rel1 {
1709 to: "2.topkink";
1710 relative: 1.0 0.0;
1711 offset: 0 0;
1712 }
1713 rel2 {
1714 to: "2.right";
1715 relative: 0.0 0.0;
1716 offset: -1 3;
1717 }
1718 color: OUTCOL;
1719 image.normal: "sl_htop.png";
1720 fill.smooth: 0;
1721 }
1722 description { state: "pulse" 0.0;
1723 inherit: "default" 0.0;
1724 color: OUTCOL2;
1725 }
1726 }
1727 part { name: "2.top2";
1728 mouse_events: 0;
1729 clip_to: "2.clip";
1730 description { state: "default" 0.0;
1731 rel1 {
1732 to: "2.left";
1733 relative: 1.0 0.0;
1734 offset: 0 0;
1735 }
1736 rel2 {
1737 to: "2.topkink";
1738 relative: 0.0 1.0;
1739 offset: -1 -1;
1740 }
1741 color: OUTCOL;
1742 image.normal: "sl_htop.png";
1743 fill.smooth: 0;
1744 }
1745 description { state: "pulse" 0.0;
1746 inherit: "default" 0.0;
1747 color: OUTCOL2;
1748 }
1749 }
1750 part { name: "2.bottom";
1751 mouse_events: 0;
1752 clip_to: "2.clip";
1753 description { state: "default" 0.0;
1754 rel1 {
1755 to: "2.left";
1756 relative: 1.0 1.0;
1757 offset: 0 -4;
1758 }
1759 rel2 {
1760 to: "2.bottomkink";
1761 relative: 0.0 1.0;
1762 offset: -1 -1;
1763 }
1764 color: OUTCOL;
1765 image.normal: "sl_hbottom.png";
1766 fill.smooth: 0;
1767 }
1768 description { state: "pulse" 0.0;
1769 inherit: "default" 0.0;
1770 color: OUTCOL2;
1771 }
1772 }
1773 part { name: "2.bottom2";
1774 mouse_events: 0;
1775 clip_to: "2.clip";
1776 description { state: "default" 0.0;
1777 rel1 {
1778 to: "2.bottomkink";
1779 relative: 1.0 0.0;
1780 offset: 0 0;
1781 }
1782 rel2 {
1783 to: "2.right";
1784 relative: 0.0 1.0;
1785 offset: -1 -1;
1786 }
1787 color: OUTCOL;
1788 image.normal: "sl_hbottom.png";
1789 fill.smooth: 0;
1790 }
1791 description { state: "pulse" 0.0;
1792 inherit: "default" 0.0;
1793 color: OUTCOL2;
1794 }
1795 }
1796 program { name: "multiline";
1797 signal: "mode,multiline";
1798 source: "terminology";
1799 action: STATE_SET "default" 0.0;
1800 TARGETS;
1801 }
1802
1803 // topfull:
1804 // |##############|
1805 // |###### |
1806 part { name: "3.bottomkink";
1807 mouse_events: 0;
1808 clip_to: "3.clip";
1809 description { state: "default" 0.0;
1810 rel1 {
1811 to: "bottom_clip";
1812 relative: 1.0 0.0;
1813 offset: -3 -3;
1814 }
1815 rel2 {
1816 to: "bottom_clip";
1817 relative: 1.0 1.0;
1818 offset: 3 0;
1819 }
1820 color: OUTCOL;
1821 image.normal: "sl_bottom.png";
1822 image.border: 0 0 7 4;
1823 }
1824 description { state: "pulse" 0.0;
1825 inherit: "default" 0.0;
1826 color: OUTCOL2;
1827 }
1828 }
1829 part { name: "3.left";
1830 mouse_events: 0;
1831 clip_to: "3.clip";
1832 description { state: "default" 0.0;
1833 rel1 {
1834 to: "top_clip";
1835 offset: -1 -1;
1836 }
1837 rel2 {
1838 to: "bottom_clip";
1839 relative: 0.0 1.0;
1840 offset: 2 0;
1841 }
1842 color: OUTCOL;
1843 image.normal: "sl_left.png";
1844 image.border: 0 0 4 4;
1845 fill.smooth: 0;
1846 }
1847 description { state: "pulse" 0.0;
1848 inherit: "default" 0.0;
1849 color: OUTCOL2;
1850 }
1851 }
1852 part { name: "3.right";
1853 mouse_events: 0;
1854 clip_to: "3.clip";
1855 description { state: "default" 0.0;
1856 rel1 {
1857 to: "top_clip";
1858 relative: 1.0 0.0;
1859 offset: -3 -1;
1860 }
1861 rel2 {
1862 to: "middle_clip";
1863 offset: 0 0;
1864 }
1865 color: OUTCOL;
1866 image.normal: "sl_right.png";
1867 image.border: 0 0 4 4;
1868 fill.smooth: 0;
1869 }
1870 description { state: "pulse" 0.0;
1871 inherit: "default" 0.0;
1872 color: OUTCOL2;
1873 }
1874 }
1875 part { name: "3.top";
1876 mouse_events: 0;
1877 clip_to: "3.clip";
1878 description { state: "default" 0.0;
1879 rel1 {
1880 to: "3.left";
1881 relative: 1.0 0.0;
1882 offset: 0 0;
1883 }
1884 rel2 {
1885 to: "3.right";
1886 relative: 0.0 0.0;
1887 offset: -1 3;
1888 }
1889 color: OUTCOL;
1890 image.normal: "sl_htop.png";
1891 fill.smooth: 0;
1892 }
1893 description { state: "pulse" 0.0;
1894 inherit: "default" 0.0;
1895 color: OUTCOL2;
1896 }
1897 }
1898 part { name: "3.bottom";
1899 mouse_events: 0;
1900 clip_to: "3.clip";
1901 description { state: "default" 0.0;
1902 rel1 {
1903 to: "3.left";
1904 relative: 1.0 1.0;
1905 offset: 0 -4;
1906 }
1907 rel2 {
1908 to: "3.bottomkink";
1909 relative: 0.0 1.0;
1910 offset: -1 -1;
1911 }
1912 color: OUTCOL;
1913 image.normal: "sl_hbottom.png";
1914 fill.smooth: 0;
1915 }
1916 description { state: "pulse" 0.0;
1917 inherit: "default" 0.0;
1918 color: OUTCOL2;
1919 }
1920 }
1921 part { name: "3.bottom2";
1922 mouse_events: 0;
1923 clip_to: "3.clip";
1924 description { state: "default" 0.0;
1925 rel1 {
1926 to: "3.bottomkink";
1927 relative: 1.0 0.0;
1928 offset: 0 0;
1929 }
1930 rel2 {
1931 to: "3.right";
1932 relative: 0.0 1.0;
1933 offset: -1 -1;
1934 }
1935 color: OUTCOL;
1936 image.normal: "sl_hbottom.png";
1937 fill.smooth: 0;
1938 }
1939 description { state: "pulse" 0.0;
1940 inherit: "default" 0.0;
1941 color: OUTCOL2;
1942 }
1943 }
1944 program { name: "topfull";
1945 signal: "mode,topfull";
1946 source: "terminology";
1947 action: STATE_SET "topfull" 0.0;
1948 TARGETS;
1949 }
1950
1951 // bottomfull:
1952 // | ######|
1953 // |##############|
1954 part { name: "4.topkink";
1955 mouse_events: 0;
1956 clip_to: "4.clip";
1957 description { state: "default" 0.0;
1958 rel1 {
1959 to: "top_clip";
1960 relative: 0.0 0.0;
1961 offset: -4 -1;
1962 }
1963 rel2 {
1964 to: "top_clip";
1965 relative: 0.0 1.0;
1966 offset: 2 2;
1967 }
1968 color: OUTCOL;
1969 image.normal: "sl_top.png";
1970 image.border: 0 0 4 7;
1971 }
1972 description { state: "pulse" 0.0;
1973 inherit: "default" 0.0;
1974 color: OUTCOL2;
1975 }
1976 }
1977 part { name: "4.left";
1978 mouse_events: 0;
1979 clip_to: "4.clip";
1980 description { state: "default" 0.0;
1981 rel1 {
1982 to: "middle_clip";
1983 offset: -1 -1;
1984 }
1985 rel2 {
1986 to: "bottom_clip";
1987 relative: 0.0 1.0;
1988 offset: 2 0;
1989 }
1990 color: OUTCOL;
1991 image.normal: "sl_left.png";
1992 image.border: 0 0 4 4;
1993 fill.smooth: 0;
1994 }
1995 description { state: "pulse" 0.0;
1996 inherit: "default" 0.0;
1997 color: OUTCOL2;
1998 }
1999 }
2000 part { name: "4.right";
2001 mouse_events: 0;
2002 clip_to: "4.clip";
2003 description { state: "default" 0.0;
2004 rel1 {
2005 to: "top_clip";
2006 relative: 1.0 0.0;
2007 offset: -3 -1;
2008 }
2009 rel2 {
2010 offset: 0 0;
2011 }
2012 color: OUTCOL;
2013 image.normal: "sl_right.png";
2014 image.border: 0 0 4 4;
2015 fill.smooth: 0;
2016 }
2017 description { state: "pulse" 0.0;
2018 inherit: "default" 0.0;
2019 color: OUTCOL2;
2020 }
2021 }
2022 part { name: "4.top";
2023 mouse_events: 0;
2024 clip_to: "4.clip";
2025 description { state: "default" 0.0;
2026 rel1 {
2027 to: "4.topkink";
2028 relative: 1.0 0.0;
2029 offset: 0 0;
2030 }
2031 rel2 {
2032 to: "4.right";
2033 relative: 0.0 0.0;
2034 offset: -1 3;
2035 }
2036 color: OUTCOL;
2037 image.normal: "sl_htop.png";
2038 fill.smooth: 0;
2039 }
2040 description { state: "pulse" 0.0;
2041 inherit: "default" 0.0;
2042 color: OUTCOL2;
2043 }
2044 }
2045 part { name: "4.top2";
2046 mouse_events: 0;
2047 clip_to: "4.clip";
2048 description { state: "default" 0.0;
2049 rel1 {
2050 to: "4.left";
2051 relative: 1.0 0.0;
2052 offset: 0 0;
2053 }
2054 rel2 {
2055 to: "4.topkink";
2056 relative: 0.0 1.0;
2057 offset: -1 -1;
2058 }
2059 color: OUTCOL;
2060 image.normal: "sl_htop.png";
2061 fill.smooth: 0;
2062 }
2063 description { state: "pulse" 0.0;
2064 inherit: "default" 0.0;
2065 color: OUTCOL2;
2066 }
2067 }
2068 part { name: "4.bottom";
2069 mouse_events: 0;
2070 clip_to: "4.clip";
2071 description { state: "default" 0.0;
2072 rel1 {
2073 to: "4.left";
2074 relative: 1.0 1.0;
2075 offset: 0 -4;
2076 }
2077 rel2 {
2078 to: "4.right";
2079 relative: 1.0 1.0;
2080 offset: -1 -1;
2081 }
2082 color: OUTCOL;
2083 image.normal: "sl_hbottom.png";
2084 fill.smooth: 0;
2085 }
2086 description { state: "pulse" 0.0;
2087 inherit: "default" 0.0;
2088 color: OUTCOL2;
2089 }
2090 }
2091 program {
2092 signal: "mode,bottomfull"; source: "terminology";
2093 action: STATE_SET "bottomfull" 0.0;
2094 TARGETS;
2095 }
2096
2097#define SELPULSE \
2098target: "background_top"; \
2099target: "background_middle"; \
2100target: "background_bottom"; \
2101target: "0.left"; \
2102target: "0.right"; \
2103target: "0.top"; \
2104target: "0.bottom"; \
2105target: "1.left"; \
2106target: "1.right"; \
2107target: "1.top"; \
2108target: "1.bottom"; \
2109target: "1.left2"; \
2110target: "1.right2"; \
2111target: "1.top2"; \
2112target: "1.bottom2"; \
2113target: "2.topkink"; \
2114target: "2.bottomkink"; \
2115target: "2.left"; \
2116target: "2.right"; \
2117target: "2.top2"; \
2118target: "2.top"; \
2119target: "2.bottom"; \
2120target: "2.bottom2"; \
2121target: "3.bottomkink"; \
2122target: "3.left"; \
2123target: "3.right"; \
2124target: "3.top"; \
2125target: "3.bottom"; \
2126target: "3.bottom2"; \
2127target: "4.topkink"; \
2128target: "4.left"; \
2129target: "4.right"; \
2130target: "4.top2"; \
2131target: "4.top"; \
2132target: "4.bottom"
2133
2134 program { name: "selpulse";
2135 signal: "show"; source: "";
2136 action: STATE_SET "pulse" 0.0;
2137 transition: SINUSOIDAL 0.5;
2138 SELPULSE;
2139 after: "selpulse2";
2140 }
2141 program { name: "selpulse2";
2142 action: STATE_SET "default" 0.0;
2143 transition: SINUSOIDAL 1.0;
2144 SELPULSE;
2145 after: "selpulse";
2146 }
2147
2148 // top and bottom swallows used to coimmunicate via min/max size the
2149 // size of the top and bottom lines
2150 part { name: "terminology.top_left"; type: SWALLOW;
2151 mouse_events: 0;
2152 description { state: "default" 0.0;
2153 align: 0.0 0.0;
2154 rel2.relative: 0.0 0.0;
2155 visible: 0;
2156 }
2157 }
2158 part { name: "terminology.bottom_right"; type: SWALLOW;
2159 mouse_events: 0;
2160 description { state: "default" 0.0;
2161 align: 1.0 1.0;
2162 rel1.relative: 1.0 1.0;
2163 visible: 0;
2164 }
2165 }
2166
2167 // blinky cursors indicating you can drag the ends of the selection
2168 part { name: "cursor.top_left"; type: RECT;
2169 mouse_events: 0;
2170 description { state: "default" 0.0;
2171 rel1.to: "terminology.top_left";
2172 rel1.relative: 1.0 0.0;
2173 rel2.to: "terminology.top_left";
2174 rel2.relative: 1.0 1.0;
2175 rel2.offset: 0 -1;
2176 color: 255 0 0 128;
2177 }
2178 }
2179 part { name: "cursor_blink.top_left"; type: RECT;
2180 mouse_events: 0;
2181 description { state: "default" 0.0;
2182 rel1.to: "cursor.top_left";
2183 rel2.to: "cursor.top_left";
2184 visible: 0;
2185 }
2186 description { state: "fading" 0.0;
2187 inherit: "default" 0.0;
2188 color: 255 0 0 255;
2189 visible: 1;
2190 }
2191 description { state: "fading" 1.0;
2192 inherit: "fading" 0.0;
2193 color: 255 0 0 64;
2194 rel1.offset: -5 0;
2195 }
2196 }
2197 part { name: "zone.top_left"; type: RECT;
2198 description { state: "default" 0.0;
2199 rel1.to: "cursor.top_left";
2200 rel1.offset: -15 0;
2201 rel2.to: "cursor.top_left";
2202 rel2.offset: 15 0;
2203 color: 0 0 0 0;
2204 }
2205 program { name: "top_left.blink";
2206 signal: "mouse,in";
2207 source: "zone.top_left";
2208 action: STATE_SET "fading" 0.0;
2209 target: "cursor_blink.top_left";
2210 after: "top_left.fade";
2211 }
2212 program { name: "top_left.fade";
2213 action: STATE_SET "fading" 1.0;
2214 transition: LINEAR 0.3;
2215 target: "cursor_blink.top_left";
2216 after: "top_left.blink";
2217 }
2218 program { name: "top_left.stop";
2219 signal: "mouse,out";
2220 source: "zone.top_left";
2221 action: STATE_SET "default" 0.0;
2222 target: "cursor_blink.top_left";
2223 }
2224 }
2225 part { name: "cursor.bottom_right"; type: RECT;
2226 mouse_events: 0;
2227 description { state: "default" 0.0;
2228 rel1.to: "terminology.bottom_right";
2229 rel1.relative: 0.0 0.0;
2230 rel1.offset: -1 0;
2231 rel2.to: "terminology.bottom_right";
2232 rel2.relative: 0.0 1.0;
2233 rel2.offset: -1 -1;
2234 color: 255 0 0 128;
2235 }
2236 }
2237 part { name: "cursor_blink.bottom_right"; type: RECT;
2238 mouse_events: 0;
2239 description { state: "default" 0.0;
2240 rel1.to: "cursor.bottom_right";
2241 rel2.to: "cursor.bottom_right";
2242 visible: 0;
2243 }
2244 description { state: "fading" 0.0;
2245 inherit: "default" 0.0;
2246 color: 255 0 0 255;
2247 visible: 1;
2248 }
2249 description { state: "fading" 1.0;
2250 inherit: "fading" 0.0;
2251 color: 255 0 0 64;
2252 rel2.offset: +5 0;
2253 }
2254 }
2255 part { name: "zone.bottom_right"; type: RECT;
2256 description { state: "default" 0.0;
2257 rel1.to: "cursor.bottom_right";
2258 rel1.offset: -15 0;
2259 rel2.to: "cursor.bottom_right";
2260 rel2.offset: 15 0;
2261 color: 0 0 0 0;
2262 }
2263 program { name: "bottom_right.blink";
2264 signal: "mouse,in"; source: "zone.bottom_right";
2265 action: STATE_SET "fading" 0.0;
2266 target: "cursor_blink.bottom_right";
2267 after: "bottom_right.fade";
2268 }
2269 program { name: "bottom_right.fade";
2270 action: STATE_SET "fading" 1.0;
2271 transition: LINEAR 0.3;
2272 target: "cursor_blink.bottom_right";
2273 after: "bottom_right.blink";
2274 }
2275 program { name: "bottom_right.stop";
2276 signal: "mouse,out"; source: "zone.bottom_right";
2277 action: STATE_SET "default" 0.0;
2278 target: "cursor_blink.bottom_right";
2279 }
2280 }
2281 }
2282 }
2283
2284
2285//////////////////////////////////////////////////////////////////////////////
2286 //// the cursor to show where text is typed
2287 group { name: "terminology/cursor";
2288 images {
2289 image: "cr_key.png" COMP;
2290 image: "cr_out.png" COMP;
2291 image: "cr_pulse.png" COMP;
2292 image: "cr_glow.png" COMP;
2293 }
2294 sounds {
2295 sample { name: "key-tap1" LOSSY 64;
2296 source: "kbd-tap.wav";
2297 }
2298 sample { name: "key-tap2" LOSSY 64;
2299 source: "kbd-tap2.wav";
2300 }
2301 sample { name: "key-tap3" LOSSY 64;
2302 source: "kbd-tap3.wav";
2303 }
2304 sample { name: "key-tap4" LOSSY 64;
2305 source: "kbd-tap4.wav";
2306 }
2307 sample { name: "key-tap5" LOSSY 64;
2308 source: "kbd-tap5.wav";
2309 }
2310 }
2311 parts {
2312 part { name: "key";
2313 mouse_events: 0;
2314 description { state: "default" 0.0;
2315 rel1 {
2316 to: "outline";
2317 offset: -5 -5;
2318 }
2319 rel2 {
2320 to: "outline";
2321 offset: 4 4;
2322 }
2323 image {
2324 normal: "cr_key.png";
2325 border: 4 4 4 4;
2326 }
2327 color: 51 153 255 0;
2328 }
2329 description { state: "on" 0.0;
2330 inherit: "default" 0.0;
2331 color: 51 153 255 255;
2332 }
2333 description { state: "out" 0.0;
2334 inherit: "default" 0.0;
2335 color: 51 153 255 0;
2336 rel1.offset: -7 -15;
2337 rel2.offset: 6 14;
2338 }
2339 }
2340 part { name: "pulse";
2341 mouse_events: 0;
2342 description { state: "default" 0.0;
2343 rel1 {
2344 to: "outline";
2345 offset: -4 -4;
2346 }
2347 rel2 {
2348 to: "outline";
2349 offset: 3 3;
2350 }
2351 image {
2352 normal: "cr_pulse.png";
2353 border: 4 4 4 4;
2354 }
2355 color: 51 153 255 0;
2356 }
2357 description { state: "on" 0.0;
2358 inherit: "default" 0.0;
2359 color: 51 153 255 255;
2360 }
2361 description { state: "out" 0.0;
2362 inherit: "default" 0.0;
2363 color: 51 153 255 0;
2364 rel1.offset: -8 -8;
2365 rel2.offset: 7 7;
2366 }
2367 }
2368 part { name: "glow";
2369 mouse_events: 0;
2370 description { state: "default" 0.0;
2371 rel1.offset: -4 -4;
2372 rel2.offset: 3 3;
2373 image {
2374 normal: "cr_glow.png";
2375 border: 9 9 9 9;
2376 }
2377 color: 51 153 255 40;
2378 }
2379 description { state: "focused" 0.0;
2380 inherit: "default" 0.0;
2381 color: 51 153 255 255;
2382 }
2383 }
2384 part { name: "outline";
2385 mouse_events: 0;
2386 description { state: "default" 0.0;
2387 image {
2388 normal: "cr_out.png";
2389 border: 3 3 3 3;
2390 }
2391 color: 51 153 255 80;
2392 }
2393 description { state: "focused" 0.0;
2394 inherit: "default" 0.0;
2395 color: 255 255 255 255;
2396 }
2397 }
2398 programs {
2399 program {
2400 signal: "focus,in,noblink"; source: "terminology";
2401 action: STATE_SET "focused" 0.0;
2402 target: "glow";
2403 target: "outline";
2404 }
2405 program { name: "focus_in";
2406 signal: "focus,in"; source: "terminology";
2407 action: STATE_SET "focused" 0.0;
2408 target: "glow";
2409 target: "outline";
2410 after: "focus2";
2411 after: "pulse";
2412 }
2413 program { name: "focus2";
2414 in: 0.5 0.0;
2415 action: STATE_SET "default" 0.0;
2416 transition: DECELERATE 0.2;
2417 target: "glow";
2418 target: "outline";
2419 after: "focus3";
2420 }
2421 program { name: "focus3";
2422 in: 0.5 0.0;
2423 action: STATE_SET "focused" 0.0;
2424 target: "glow";
2425 target: "outline";
2426 after: "focus2";
2427 after: "pulse";
2428 }
2429 program { name: "pulse";
2430 action: STATE_SET "on" 0.0;
2431 target: "pulse";
2432 after: "pulse2";
2433 }
2434 program { name: "pulse2";
2435 action: STATE_SET "out" 0.0;
2436 transition: DECELERATE 0.4;
2437 target: "pulse";
2438 }
2439 program {
2440 signal: "focus,out"; source: "terminology";
2441 action: ACTION_STOP;
2442 target: "focus_in";
2443 target: "focus2";
2444 target: "focus3";
2445 target: "pulse";
2446 target: "pulse2";
2447 after: "focus_out2";
2448 }
2449 program { name: "focus_out2";
2450 action: STATE_SET "default" 0.0;
2451 target: "glow";
2452 target: "outline";
2453 }
2454 program {
2455 signal: "key,down"; source: "terminology";
2456 script {
2457 new buf[32];
2458 snprintf(buf, 31, "key-down%i", (rand() % 5) + 1);
2459 run_program(get_program_id(buf));
2460 }
2461 }
2462 program { name: "key-down1";
2463 action: PLAY_SAMPLE "key-tap1" 1.0;
2464 }
2465 program { name: "key-down2";
2466 action: PLAY_SAMPLE "key-tap2" 1.0;
2467 }
2468 program { name: "key-down3";
2469 action: PLAY_SAMPLE "key-tap3" 1.0;
2470 }
2471 program { name: "key-down4";
2472 action: PLAY_SAMPLE "key-tap4" 1.0;
2473 }
2474 program { name: "key-down5";
2475 action: PLAY_SAMPLE "key-tap5" 1.0;
2476 }
2477 program {
2478 signal: "key,down"; source: "terminology";
2479 action: STATE_SET "default" 0.0;
2480 target: "key";
2481 after: "key2";
2482 }
2483 program { name: "key2";
2484 action: STATE_SET "on" 0.0;
2485 target: "key";
2486 after: "key3";
2487 }
2488 program { name: "key3";
2489 action: STATE_SET "out" 0.0;
2490 transition: DECELERATE 0.3;
2491 target: "key";
2492 }
2493 }
2494 }
2495 }
2496//////////////////////////////////////////////////////////////////////////////
2497 //// an object to contain the selection tool used for selecting tabs (with
2498 //// a glow grid of terms
2499 group { name: "terminology/sel/base";
2500 images {
2501 image: "pm_overlay.png" COMP;
2502 image: "pm_fill.png" COMP;
2503 image: "bg_shadow.png" COMP;
2504 image: "inset_shadow.png" COMP;
2505 }
2506 parts {
2507 ////////////////////////////////////////////////////////////////////
2508 // background and shadows
2509 part { name: "shadow";
2510 mouse_events: 0;
2511 description { state: "default" 0.0;
2512 image.normal: "bg_shadow.png";
2513 fill.smooth: 0;
2514 }
2515 }
2516 part { name: "fill";
2517 mouse_events: 0;
2518 description { state: "default" 0.0;
2519 image.normal: "pm_fill.png";
2520 fill {
2521 size.relative: 0.0 0.0;
2522 size.offset: 64 64;
2523 }
2524 }
2525 description { state: "translucent" 0.0;
2526 inherit: "default" 0.0;
2527 visible: 0;
2528 }
2529 }
2530 program {
2531 signal: "translucent,on"; source: "terminology";
2532 action: STATE_SET "translucent" 0.0;
2533 target: "fill";
2534 }
2535 program {
2536 signal: "translucent,off"; source: "terminology";
2537 action: STATE_SET "default" 0.0;
2538 target: "fill";
2539 }
2540
2541 ////////////////////////////////////////////////////////////////////
2542 // content (where the grid of terms goes)
2543 part { name: "clip"; type: RECT;
2544 description { state: "default" 0.0;
2545 }
2546 }
2547 part { name: "terminology.content"; type: SWALLOW;
2548 clip_to: "clip";
2549 description { state: "default" 0.0;
2550 }
2551 }
2552
2553 ////////////////////////////////////////////////////////////////////
2554 // fancy stuff on top
2555 part { name: "overlay";
2556 mouse_events: 0;
2557 description { state: "default" 0.0;
2558 image.normal: "pm_overlay.png";
2559 color: 255 255 255 0;
2560 fill.smooth: 0;
2561 }
2562 description { state: "visible" 0.0;
2563 inherit: "default" 0.0;
2564 color: 255 255 255 255;
2565 }
2566 }
2567 part { name: "overlay_shadow"; mouse_events: 0;
2568 description { state: "default" 0.0;
2569 image.normal: "inset_shadow.png";
2570 image.border: 5 5 7 3;
2571 image.middle: 0;
2572 fill.smooth: 0;
2573 color: 255 255 255 0;
2574 }
2575 description { state: "visible" 0.0;
2576 inherit: "default" 0.0;
2577 color: 255 255 255 255;
2578 }
2579 }
2580 program {
2581 signal: "begin"; source: "terminology";
2582 action: STATE_SET "visible" 0.0;
2583 transition: DECELERATE 0.3;
2584 target: "overlay";
2585 target: "overlay_shadow";
2586 }
2587 program {
2588 signal: "end"; source: "terminology";
2589 action: STATE_SET "default" 0.0;
2590 transition: DECELERATE 0.3 CURRENT;
2591 target: "overlay";
2592 target: "overlay_shadow";
2593 }
2594 }
2595 }
2596
2597 group { name: "terminology/sel/item";
2598 images {
2599 image: "bg_bevel.png" COMP;
2600 image: "bg_shine.png" COMP;
2601 image: "bg_glint.png" COMP;
2602 image: "pm_shadow.png" COMP;
2603 image: "cr_glow.png" COMP;
2604 image: "bg_led_glow.png" COMP;
2605 image: "bg_led_base.png" COMP;
2606 image: "bg_led.png" COMP;
2607 image: "bg_led_strobe.png" COMP;
2608 }
2609 parts {
2610 ////////////////////////////////////////////////////////////////////
2611 // base background and selection image
2612 part { name: "clip"; type: RECT;
2613 description { state: "default" 0.0;
2614 rel1.to: "terminology.content";
2615 rel2.to: "terminology.content";
2616 color: 128 128 128 255;
2617 }
2618 description { state: "selected" 0.0;
2619 inherit: "default" 0.0;
2620 color: 255 255 255 255;
2621 }
2622 }
2623 part { name: "shadow";
2624 mouse_events: 0;
2625 description { state: "default" 0.0;
2626 fixed: 1 1;
2627 rel1.to: "terminology.content";
2628 rel2.to: "terminology.content";
2629 rel1.offset: -5 -5;
2630 rel2.offset: 4 4;
2631 image.normal: "pm_shadow.png";
2632 image.border: 64 64 64 64;
2633 image.border_scale_by: 0.1;
2634 color: 255 255 255 128;
2635 fill.smooth: 0;
2636 }
2637 description { state: "selected" 0.0;
2638 inherit: "default" 0.0;
2639 rel1.offset: -40 -40;
2640 rel2.offset: 39 39;
2641 image.border_scale_by: 1.0;
2642 color: 255 255 255 255;
2643 }
2644 }
2645 part { name: "glow";
2646 mouse_events: 0;
2647 description { state: "default" 0.0;
2648 rel1.to: "terminology.content";
2649 rel2.to: "terminology.content";
2650 rel1.offset: -4 -4;
2651 rel2.offset: 3 3;
2652 image {
2653 normal: "cr_glow.png";
2654 border: 9 9 9 9;
2655 }
2656 color: 51 153 255 0;
2657 }
2658 description { state: "selected" 0.0;
2659 inherit: "default" 0.0;
2660 color: 51 153 255 255;
2661 }
2662 }
2663
2664 ////////////////////////////////////////////////////////////////////
2665 // swallowed terminal content + bg inside it
2666 part { name: "base"; type: RECT;
2667 clip_to: "clip";
2668 description { state: "default" 0.0;
2669 color: 32 32 32 255;
2670 rel1.to: "terminology.content";
2671 rel2.to: "terminology.content";
2672 }
2673 }
2674 part { name: "terminology.content"; type: SWALLOW;
2675 clip_to: "clip";
2676 description { state: "default" 0.0;
2677 rel1.relative: 0.1 0.1;
2678 rel2.relative: 0.9 0.9;
2679 }
2680 description { state: "selected" 0.0;
2681 inherit: "default" 0.0;
2682 rel1.relative: 0.0 0.0;
2683 rel2.relative: 1.0 1.0;
2684 }
2685 }
2686 program {
2687 signal: "selected"; source: "terminology";
2688 action: STATE_SET "selected" 0.0;
2689 transition: DECELERATE 0.2 CURRENT;
2690 target: "terminology.content";
2691 target: "terminology.label";
2692 target: "shadow";
2693 target: "clip";
2694 target: "glow";
2695 }
2696 program {
2697 signal: "selected,start"; source: "terminology";
2698 action: STATE_SET "selected" 0.0;
2699 target: "terminology.content";
2700 target: "terminology.label";
2701 target: "shadow";
2702 target: "clip";
2703 target: "glow";
2704 }
2705 program {
2706 signal: "unselected"; source: "terminology";
2707 action: STATE_SET "default" 0.0;
2708 transition: DECELERATE 0.4 CURRENT;
2709 target: "terminology.content";
2710 target: "terminology.label";
2711 target: "shadow";
2712 target: "clip";
2713 target: "glow";
2714 }
2715
2716 ////////////////////////////////////////////////////////////////////
2717 // fancy stuff over the top of the terminal for shading and labelling
2718 part { name: "overlay";
2719 mouse_events: 0;
2720 description { state: "default" 0.0;
2721 fixed: 1 1;
2722 rel1.to: "terminology.content";
2723 rel2.to: "terminology.content";
2724 image.normal: "pm_overlay.png";
2725 fill.smooth: 0;
2726 }
2727 }
2728 part { name: "bevel";
2729 mouse_events: 0;
2730 description { state: "default" 0.0;
2731 fixed: 1 1;
2732 rel1.to: "terminology.content";
2733 rel2.to: "terminology.content";
2734 image.normal: "bg_bevel.png";
2735 image.border: 3 3 5 3;
2736 image.middle: 0;
2737 fill.smooth: 0;
2738 }
2739 }
2740 part { name: "terminology.label"; type: TEXT; mouse_events: 0;
2741 effect: GLOW;
2742 scale: 1;
2743 description { state: "default" 0.0;
2744 rel1.to: "terminology.content";
2745 rel2.to: "terminology.content";
2746 color: 51 153 255 255;
2747 color2: 51 153 255 24;
2748 color3: 51 153 255 18;
2749 align: 0.5 1.0;
2750 text { font: "Sans"; size: 10;
2751 align: 0.5 1.0;
2752 min: 0 1;
2753 }
2754 }
2755 description { state: "selected" 0.0;
2756 inherit: "default" 0.0;
2757 color: 255 255 255 255;
2758 color2: 51 153 255 128;
2759 color3: 51 153 255 20;
2760 }
2761 }
2762 part { name: "clip2"; type: RECT;
2763 description { state: "default" 0.0;
2764 rel1.to: "terminology.content";
2765 rel2.to: "terminology.content";
2766 }
2767 }
2768
2769 ////////////////////////////////////////////////////////////////////
2770 // fancy stuff on top
2771 part { name: "glint";
2772 mouse_events: 0;
2773 clip_to: "clip2";
2774 description { state: "default" 0.0;
2775 fixed: 1 1;
2776 min: 79 5;
2777 max: 79 5;
2778 rel1 {
2779 to: "terminology.content";
2780 relative: 0.0 0.0;
2781 offset: 0 0;
2782 }
2783 rel2 {
2784 to: "terminology.content";
2785 relative: 1.0 0.0;
2786 offset: -1 0;
2787 }
2788 image.normal: "bg_glint.png";
2789 }
2790 }
2791 part { name: "shine";
2792 mouse_events: 0;
2793 clip_to: "clip2";
2794 description { state: "default" 0.0;
2795 fixed: 1 1;
2796 rel1.to: "terminology.content";
2797 rel2.to: "terminology.content";
2798 image.normal: "bg_shine.png";
2799 fill.smooth: 0;
2800 align: 0.5 0.0;
2801 aspect: (255/120) (255/120);
2802 aspect_preference: HORIZONTAL;
2803 }
2804 }
2805
2806 ////////////////////////////////////////////////////////////////////
2807 // visual bell - spinning red siren light
2808 part { name: "bell_glow";
2809 mouse_events: 0;
2810 description { state: "default" 0.0;
2811 fixed: 1 1;
2812 visible: 0;
2813 color: 255 255 255 0;
2814 rel1.to: "bell_base";
2815 rel2.to: "bell_base";
2816 min: 200 200;
2817 fill.smooth: 0;
2818 image.normal: "bg_led_glow.png";
2819 }
2820 description { state: "visible" 0.0;
2821 inherit: "default" 0.0;
2822 visible: 1;
2823 color: 255 255 255 255;
2824 }
2825 }
2826 part { name: "bell_base";
2827 mouse_events: 0;
2828 description { state: "default" 0.0;
2829 fixed: 1 1;
2830 visible: 0;
2831 color: 255 255 255 0;
2832 min: 32 32;
2833 max: 32 32;
2834 rel1.to: "terminology.content";
2835 rel2.to: "terminology.content";
2836 align: 1.0 1.0;
2837 image.normal: "bg_led_base.png";
2838 }
2839 description { state: "visible" 0.0;
2840 inherit: "default" 0.0;
2841 visible: 1;
2842 color: 255 255 255 255;
2843 }
2844 }
2845 part { name: "bell";
2846 mouse_events: 0;
2847 description { state: "default" 0.0;
2848 fixed: 1 1;
2849 visible: 0;
2850 color: 255 255 255 0;
2851 rel1.to: "bell_base";
2852 rel2.to: "bell_base";
2853 image.normal: "bg_led.png";
2854 }
2855 description { state: "visible" 0.0;
2856 inherit: "default" 0.0;
2857 visible: 1;
2858 color: 255 255 255 255;
2859 }
2860 }
2861 part { name: "bell_strobe";
2862 mouse_events: 0;
2863 description { state: "default" 0.0;
2864 fixed: 1 1;
2865 visible: 0;
2866 color: 255 255 255 0;
2867 rel1.to: "bell";
2868 rel2.to: "bell";
2869 image.normal: "bg_led_strobe.png";
2870 map {
2871 on: 1;
2872 smooth: 1;
2873 rotation.center: "bell";
2874 }
2875 }
2876 description { state: "spin" 0.0;
2877 inherit: "default" 0.0;
2878 visible: 1;
2879 color: 255 255 255 255;
2880 map.rotation.z: 36.0;
2881 }
2882 description { state: "spin_done" 0.0;
2883 inherit: "spin" 0.0;
2884 map.rotation.z: 720.0;
2885 }
2886 description { state: "spin_done2" 0.0;
2887 inherit: "spin" 0.0;
2888 map.rotation.z: 1440.0;
2889 }
2890 }
2891 program {
2892 signal: "bell"; source: "terminology";
2893 action: STATE_SET "default" 0.0;
2894 target: "bell_base";
2895 target: "bell";
2896 target: "bell_strobe";
2897 target: "bell_glow";
2898 after: "bell";
2899 }
2900 program { name: "bell";
2901 action: STATE_SET "visible" 0.0;
2902 target: "bell_base";
2903 target: "bell_glow";
2904 after: "bell2";
2905 }
2906 program { name: "bell2";
2907 action: STATE_SET "visible" 0.0;
2908 transition: DECELERATE 0.1;
2909 target: "bell";
2910 target: "bell_glow";
2911 after: "bell3";
2912 }
2913 program { name: "bell3";
2914 action: STATE_SET "spin" 0.0;
2915 transition: LINEAR 0.1;
2916 target: "bell_strobe";
2917 after: "bell4.2";
2918 }
2919 program { name: "bell4.2";
2920 action: STATE_SET "spin_done" 0.0;
2921 transition: LINEAR 0.9;
2922 target: "bell_strobe";
2923 after: "bell4.3";
2924 }
2925 program { name: "bell4.3";
2926 action: STATE_SET "spin_done2" 0.0;
2927 transition: LINEAR 1.0;
2928 target: "bell_strobe";
2929 after: "bell4.4";
2930 }
2931 program { name: "bell4.4";
2932 action: STATE_SET "spin_done" 0.0;
2933 target: "bell_strobe";
2934 after: "bell4.3";
2935 }
2936 }
2937 }
2938
2939//////////////////////////////////////////////////////////////////////////////
2940 //// an object overlayd on text that is a link
2941 group { name: "terminology/link";
2942 images {
2943 image: "lk_bottom.png" COMP;
2944 image: "lk_left.png" COMP;
2945 image: "lk_right.png" COMP;
2946 }
2947 parts {
2948 part { name: "bottom";
2949 mouse_events: 0;
2950 description { state: "default" 0.0;
2951 image.normal: "lk_bottom.png";
2952 image.border: 9 9 0 0;
2953 align: 0.5 1.0;
2954 min: 20 8;
2955 rel1.offset: -6 0;
2956 rel1.relative: 0.0 1.0;
2957 rel2.offset: 5 0;
2958 color: 51 153 255 255;
2959 fill.smooth: 0;
2960 }
2961 }
2962 part { name: "l";
2963 mouse_events: 0;
2964 description { state: "default" 0.0;
2965 image.normal: "lk_left.png";
2966 align: 0.0 1.0;
2967 min: 4 4;
2968 rel1.offset: 16 -1;
2969 rel1.relative: 0.0 1.0;
2970 rel2.offset: 16 -1;
2971 rel2.relative: 0.0 1.0;
2972 color: 51 153 255 0;
2973 }
2974 description { state: "out" 0.0;
2975 inherit: "default" 0.0;
2976 min: 16 16;
2977 rel1.offset: -10 -1;
2978 rel2.offset: -10 -1;
2979 color: 51 153 255 255;
2980 }
2981 description { state: "out2" 0.0;
2982 inherit: "default" 0.0;
2983 min: 32 32;
2984 rel1.offset: -26 -1;
2985 rel2.offset: -26 -1;
2986 color: 51 153 255 0;
2987 }
2988 }
2989 part { name: "r";
2990 mouse_events: 0;
2991 description { state: "default" 0.0;
2992 image.normal: "lk_right.png";
2993 align: 1.0 1.0;
2994 min: 4 4;
2995 rel1.offset: -15 0;
2996 rel1.relative: 1.0 1.0;
2997 rel2.offset: -15 0;
2998 rel2.relative: 1.0 1.0;
2999 color: 51 153 255 0;
3000 }
3001 description { state: "out" 0.0;
3002 inherit: "default" 0.0;
3003 min: 16 16;
3004 rel1.offset: 9 -1;
3005 rel2.offset: 9 -1;
3006 color: 51 153 255 255;
3007 }
3008 description { state: "out2" 0.0;
3009 inherit: "default" 0.0;
3010 min: 32 32;
3011 rel1.offset: 25 -1;
3012 rel2.offset: 25 -1;
3013 color: 51 153 255 0;
3014 }
3015 }
3016 part { name: "event"; type: RECT;
3017 mouse_events: 1;
3018 repeat_events: 1;
3019 description { state: "default" 0.0;
3020 color: 0 0 0 0;
3021 }
3022 }
3023 programs {
3024 program { name: "show";
3025 signal: "show"; source: "";
3026 action: STATE_SET "out" 0.0;
3027 transition: LINEAR 0.3;
3028 target: "l";
3029 target: "r";
3030 after: "show2";
3031 }
3032 program { name: "show2";
3033 action: STATE_SET "default" 0.0;
3034 action: STATE_SET "out2" 0.0;
3035 transition: LINEAR 0.3;
3036 target: "l";
3037 target: "r";
3038 after: "show3";
3039 }
3040 program { name: "show3";
3041 action: STATE_SET "default" 0.0;
3042 target: "l";
3043 target: "r";
3044 after: "show";
3045 }
3046 }
3047 }
3048 }
3049
3050//////////////////////////////////////////////////////////////////////////////
3051 //// the multimedia controls
3052 group { name: "terminology/mediabusy";
3053 images {
3054 image: "media_busy_knob.png" COMP;
3055 image: "media_busy_spinner.png" COMP;
3056 image: "media_busy_progress.png" COMP;
3057 }
3058 script {
3059 public message(Msg_Type:type, id, ...) {
3060 if ((type == MSG_FLOAT) && (id == 1)) {
3061 new Float:val;
3062 val = getfarg(2);
3063 // val 0.0 -. 1.0 percentage
3064 custom_state(PART:"progress", "default", 0.0);
3065 set_state_val(PART:"progress", STATE_REL2, val, 1.0);
3066 set_state(PART:"progress", "custom", 0.0);
3067 }
3068 }
3069 }
3070 parts {
3071 part { name: "progress_area"; type: SPACER;
3072 mouse_events: 0;
3073 description { state: "default" 0.0;
3074 fixed: 1 1;
3075 rel2.to_x: "knob";
3076 rel2.relative: 0.0 1.0;
3077 min: 10 40;
3078 max: 99999 40;
3079 align: 0.0 1.0;
3080 }
3081 }
3082 part { name: "progress";
3083 mouse_events: 0;
3084 clip_to: "fade";
3085 description { state: "default" 0.0;
3086 fixed: 1 1;
3087 rel1.to: "progress_area";
3088 rel2.to: "progress_area";
3089 rel2.relative: 0.0 1.0;
3090 color: 51 153 255 255;
3091 image.normal: "media_busy_progress.png";
3092 image.border: 5 5 0 0;
3093 min: 10 40;
3094 align: 0.0 1.0;
3095 }
3096 }
3097 part { name: "fade"; type: RECT;
3098 mouse_events: 0;
3099 description { state: "default" 0.0;
3100 color: 255 255 255 0;
3101 visible: 0;
3102 }
3103 description { state: "visible" 0.0;
3104 inherit: "default" 0.0;
3105 visible: 1;
3106 color: 255 255 255 255;
3107 }
3108 }
3109 part { name: "knob";
3110 clip_to: "fade";
3111 mouse_events: 0;
3112 description { state: "default" 0.0;
3113 fixed: 1 1;
3114 image.normal: "media_busy_knob.png";
3115 min: 40 40;
3116 max: 40 40;
3117 align: 1.0 1.0;
3118 }
3119 }
3120 part { name: "knob_spinner";
3121 clip_to: "fade";
3122 mouse_events: 0;
3123 description { state: "default" 0.0;
3124 fixed: 1 1;
3125 color: 51 153 255 255;
3126 rel1.to: "knob";
3127 rel2.to: "knob";
3128 image.normal: "media_busy_spinner.png";
3129 map {
3130 on: 1;
3131 smooth: 1;
3132 rotation.center: "knob";
3133 }
3134 }
3135 description { state: "spin" 0.0;
3136 inherit: "default" 0.0;
3137 visible: 1;
3138 map.rotation.z: 360;
3139 }
3140 }
3141 }
3142 programs {
3143 program {
3144 signal: "busy"; source: "terminology";
3145 action: STATE_SET "visible" 0.0;
3146 transition: DECELERATE 0.5;
3147 target: "fade";
3148 }
3149 program { name: "spin1";
3150 signal: "busy"; source: "terminology";
3151 action: STATE_SET "spin" 0.0;
3152 transition: LINEAR 0.5;
3153 target: "knob_spinner";
3154 after: "spin2";
3155 }
3156 program { name: "spin2";
3157 action: STATE_SET "default" 0.0;
3158 target: "knob_spinner";
3159 after: "spin1";
3160 }
3161// program { name: "downloading";
3162// signal: "busy";
3163// source: "terminology";
3164// action: STATE_SET "default" 0.0;
3165// }
3166 program {
3167 signal: "done"; source: "terminology";
3168 action: STATE_SET "default" 0.0;
3169 transition: DECELERATE 1.5;
3170 target: "fade";
3171 }
3172 }
3173 }
3174//////////////////////////////////////////////////////////////////////////////
3175 //// the multimedia controls
3176 group { name: "terminology/mediactrl";
3177 images {
3178 image: "media_bg.png" COMP;
3179 image: "media_play.png" COMP;
3180 image: "media_stop.png" COMP;
3181 image: "media_pause.png" COMP;
3182 image: "media_line.png" COMP;
3183 image: "media_knob_vol.png" COMP;
3184 image: "media_knob_pos.png" COMP;
3185 }
3186 parts {
3187 part { name: "media_clip"; type: RECT;
3188 mouse_events: 0;
3189 description { state: "default" 0.0;
3190 rel1.to: "media_bg";
3191 rel2.to: "media_bg";
3192 }
3193 }
3194 part { name: "media_bg";
3195 clip_to: "media_clip";
3196 description { state: "default" 0.0;
3197 image.normal: "media_bg.png";
3198 image.border: 11 11 11 11;
3199 min: 24 24;
3200 max: 24 24;
3201 align: 1.0 0.0;
3202 }
3203 description { state: "expanded" 0.0;
3204 inherit: "default" 0.0;
3205 min: 216 24;
3206 max: 216 24;
3207 }
3208 }
3209 part { name: "play";
3210 mouse_events: 1;
3211 repeat_events: 1;
3212 clip_to: "media_clip";
3213 description { state: "default" 0.0;
3214 image.normal: "media_pause.png";
3215 max: 24 24;
3216 align: 1.0 0.0;
3217 }
3218 description { state: "paused" 0.0;
3219 inherit: "default" 0.0;
3220 image.normal: "media_play.png";
3221 }
3222 }
3223 part { name: "stop";
3224 mouse_events: 1;
3225 repeat_events: 1;
3226 clip_to: "media_clip";
3227 description { state: "default" 0.0;
3228 image.normal: "media_stop.png";
3229 max: 24 24;
3230 rel1.to: "play";
3231 rel2.to: "play";
3232 rel1.offset: -16 0;
3233 rel2.offset: -16 0;
3234 }
3235 }
3236 part { name: "posline";
3237 mouse_events: 0;
3238 repeat_events: 1;
3239 clip_to: "media_clip";
3240 description { state: "default" 0.0;
3241 image.normal: "media_line.png";
3242 image.border: 15 15 0 0;
3243 min: 90 14;
3244 max: 90 14;
3245 rel1.to: "stop";
3246 rel2.to: "stop";
3247 rel1.offset: -25 0;
3248 rel2.offset: -90 0;
3249 }
3250 }
3251 part { name: "terminology.posdrag";
3252 mouse_events: 1;
3253 repeat_events: 1;
3254 clip_to: "media_clip";
3255 dragable {
3256 confine: "posline";
3257 x: 1 1 0;
3258 y: 0 0 0;
3259 }
3260 description { state: "default" 0.0;
3261 image.normal: "media_knob_pos.png";
3262 min: 14 14;
3263 max: 14 14;
3264 }
3265 description { state: "muted" 0.0;
3266 visible: 0;
3267 }
3268 }
3269 part { name: "volline";
3270 mouse_events: 0;
3271 repeat_events: 1;
3272 clip_to: "media_clip";
3273 description { state: "default" 0.0;
3274 image.normal: "media_line.png";
3275 image.border: 15 15 0 0;
3276 min: 60 14;
3277 max: 60 14;
3278 rel1 {
3279 to: "posline";
3280 offset: -25 0;
3281 }
3282 rel2 {
3283 to: "posline";
3284 relative: 0.0 1.0;
3285 offset: -60 0;
3286 }
3287 }
3288 }
3289 part { name: "terminology.voldrag"; type: IMAGE;
3290 mouse_events: 1;
3291 repeat_events: 1;
3292 clip_to: "media_clip";
3293 dragable {
3294 confine: "volline";
3295 x: 1 1 0;
3296 y: 0 0 0;
3297 }
3298 description { state: "default" 0.0;
3299 image.normal: "media_knob_vol.png";
3300 min: 14 14;
3301 max: 14 14;
3302 }
3303 description { state: "muted" 0.0;
3304 visible: 0;
3305 }
3306 }
3307 }
3308 programs {
3309 program {
3310 signal: "mouse,in"; source: "media_bg";
3311 action: STATE_SET "expanded" 0.0;
3312 transition: SINUSOIDAL 0.4 CURRENT;
3313 target: "media_bg";
3314 }
3315 program {
3316 signal: "mouse,out"; source: "media_bg";
3317 action: STATE_SET "default" 0.0;
3318 transition: SINUSOIDAL 0.4 CURRENT;
3319 target: "media_bg";
3320 }
3321 program {
3322 signal: "mouse,up,*"; source: "play";
3323 filter: "play" "default";
3324 action: SIGNAL_EMIT "pause" "";
3325 }
3326 program {
3327 signal: "mouse,up,1"; source: "play";
3328 filter: "play" "paused";
3329 action: SIGNAL_EMIT "play" "";
3330 }
3331 program {
3332 signal: "mouse,up,1"; source: "stop";
3333 action: SIGNAL_EMIT "stop" "";
3334 }
3335 program {
3336 signal: "pause,set"; source: "terminology";
3337 action: STATE_SET "paused" 0.0;
3338 target: "play";
3339 }
3340 program {
3341 signal: "play,set"; source: "terminology";
3342 action: STATE_SET "default" 0.0;
3343 target: "play";
3344 }
3345 program {
3346 signal: "mute,set"; source: "terminology";
3347 action: STATE_SET "muted" 0.0;
3348 target: "terminology.voldrag";
3349 }
3350 program {
3351 signal: "mute,unset"; source: "terminology";
3352 action: STATE_SET "default" 0.0;
3353 target: "terminology.voldrag";
3354 }
3355 }
3356 }
3357
3358#define ICON(Grp, Img) \
3359 group { name: "elm/icon/"##Grp##"/default"; min: 10 10; max: 80 80; \
3360 images.image: Img COMP; \
3361 parts { part { name: "base"; description { state: "default" 0.0; \
3362 aspect: 1.0 1.0; aspect_preference: BOTH; image.normal: Img; \
3363 } } } }
3364 ICON("new", "icon_new.png");
3365 ICON("split-h", "icon_split_h.png");
3366 ICON("split-v", "icon_split_v.png");
3367 ICON("close", "icon_close.png");
3368 ICON("copy", "icon_copy.png");
3369 ICON("paste", "icon_paste.png");
3370 ICON("settings", "icon_settings.png");
3371 ICON("about", "icon_about.png");
3372#undef ICON
3373
3374//////////////////////////////////////////////////////////////////////////////
3375 //// the about box content image
3376 group { name: "terminology/about";
3377 images {
3378 image: "ab_base.png" COMP;
3379 image: "ab_shell.png" COMP;
3380 }
3381 styles {
3382 style { name: "aboutstyle";
3383 base: "font=Sans font_size=8 color=#3f1 style=glow glow2_color=#3f13 glow_color=#3f11 wrap=word";
3384 tag: "b" "+ color=#8f8 glow2_color=#3f15 glow_color=#3f12";
3385 }
3386 }
3387 parts {
3388 part { name: "base";
3389 mouse_events: 0;
3390 description { state: "default" 0.0;
3391 rel1 {
3392 relative: (39/198) (27/198);
3393 to: "shell";
3394 }
3395 rel2 {
3396 relative: (151/198) (115/198);
3397 to: "shell";
3398 }
3399 image.normal: "ab_base.png";
3400 }
3401 }
3402 part { name: "baseclip"; type: RECT;
3403 description { state: "default" 0.0;
3404 color: 255 255 255 255;
3405 rel1.to: "base";
3406 rel2.to: "base";
3407 }
3408 }
3409 part { name: "terminology.text"; type: TEXTBLOCK;
3410 clip_to: "baseclip";
3411 mouse_events: 1;
3412 description { state: "default" 0.0;
3413 fixed: 1 1;
3414 align: 0.5 0.0;
3415 max: 10000 10000;
3416 rel1 {
3417 to: "base";
3418 relative: 0.08 1.0;
3419 }
3420 rel2 {
3421 to: "base";
3422 relative: 0.97 1.0;
3423 }
3424 text {
3425 style: "aboutstyle";
3426 text: "Hello world.<br>This is <b>Terminology</b>, your friendly neighbourhood terminal.<br><br>This needs more text to test vertical scrolling to see if the animation works right.<br>I hope this will be enough now.";
3427 min: 0 1;
3428 }
3429 }
3430 description { state: "up" 0.0;
3431 inherit: "default" 0.0;
3432 align: 0.5 1.0;
3433 rel1.relative: 0.08 0.0;
3434 rel2.relative: 0.97 0.0;
3435 }
3436 }
3437 part { name: "shell";
3438 description { state: "default" 0.0;
3439 max: 198 198;
3440 aspect: 1.0 1.0;
3441 aspect_preference: BOTH;
3442 image.normal: "ab_shell.png";
3443 }
3444 }
3445 }
3446 programs {
3447 program {
3448 signal: "begin"; source: "terminology";
3449 action: ACTION_STOP;
3450 target: "show";
3451 target: "show2";
3452 after: "begin2";
3453 }
3454 program { name: "begin2";
3455 action: STATE_SET "default" 0.0;
3456 target: "terminology.text";
3457 after: "show";
3458 }
3459 program { name: "show";
3460 action: STATE_SET "up" 0.0;
3461 transition: LINEAR 60.0;
3462 target: "terminology.text";
3463 after: "show2";
3464 }
3465 program { name: "show2";
3466 action: STATE_SET "default" 0.0;
3467 target: "terminology.text";
3468 after: "show";
3469 }
3470 }
3471 }
3472
3473//////////////////////////////////////////////////////////////////////////////
3474 //// used in the font selection dialog to give a base for black text
3475 //// previews so they are always visible
3476 group { name: "terminology/fontpreview";
3477 images {
3478 image: "fn_shadow.png" COMP;
3479 }
3480 parts {
3481 part { name: "shadow";
3482 mouse_events: 0;
3483 description { state: "default" 0.0;
3484 rel1 {
3485 offset: -2 -1;
3486 to: "base";
3487 }
3488 rel2 {
3489 offset: 1 2;
3490 to: "base";
3491 }
3492 image {
3493 normal: "fn_shadow.png";
3494 border: 5 5 5 5;
3495 }
3496 fill.smooth: 0;
3497 }
3498 }
3499 part { name: "base"; type: RECT;
3500 mouse_events: 1;
3501 description { state: "default" 0.0;
3502 color: 255 255 255 255;
3503 rel1.offset: 2 2;
3504 rel2.offset: -3 -3;
3505 }
3506 }
3507 part { name: "clip"; type: RECT;
3508 description { state: "default" 0.0;
3509 rel1.to: "base";
3510 rel2.to: "base";
3511 color: 255 255 255 255;
3512 }
3513 }
3514 part { name: "terminology.text.preview"; type: SWALLOW;
3515 clip_to: "clip";
3516 description { state: "default" 0.0;
3517 rel1 {
3518 to: "base";
3519 offset: 1 1;
3520 }
3521 rel2 {
3522 to: "base";
3523 offset: -2 -2;
3524 }
3525 }
3526 }
3527 }
3528 }
3529}