summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorBoris Faure <billiob@gmail.com>2014-08-09 13:55:11 +0200
committerBoris Faure <billiob@gmail.com>2014-08-09 13:55:11 +0200
commit87649b8de537071b1d9824d268eb50bbc96e9bf4 (patch)
tree665dcd31dab98625c54988191e3b4a9099a80b64 /data
parent30825d3098b3d20f56fb0d11bbe0a029a31b52aa (diff)
add miniview to nyanology and fix its makefile
Diffstat (limited to 'data')
-rw-r--r--data/themes/nyanology/Makefile.am2
-rw-r--r--data/themes/nyanology/default.edc2859
-rw-r--r--data/themes/nyanology/nyanology.edc24
3 files changed, 25 insertions, 2860 deletions
diff --git a/data/themes/nyanology/Makefile.am b/data/themes/nyanology/Makefile.am
index dac530b..edc5cf6 100644
--- a/data/themes/nyanology/Makefile.am
+++ b/data/themes/nyanology/Makefile.am
@@ -22,7 +22,7 @@ about.edc \
22nyancursor.edc \ 22nyancursor.edc \
23nyanology.edc 23nyanology.edc
24 24
25nyanology.edj: Makefile nyanology.edc 25nyanology.edj: Makefile nyanology.edc about.edc nyancursor.edc
26 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \ 26 $(AM_V_EDJ)$(EDJE_CC) $(EDJE_FLAGS) \
27 $(top_srcdir)/data/themes/nyanology/nyanology.edc \ 27 $(top_srcdir)/data/themes/nyanology/nyanology.edc \
28 $(top_builddir)/data/themes/nyanology/nyanology.edj 28 $(top_builddir)/data/themes/nyanology/nyanology.edj
diff --git a/data/themes/nyanology/default.edc b/data/themes/nyanology/default.edc
deleted file mode 100644
index 1a2184c..0000000
--- a/data/themes/nyanology/default.edc
+++ /dev/null
@@ -1,2859 +0,0 @@
1collections {
2
3//////////////////////////////////////////////////////////////////////////////
4 //// the background and general container for the terminal
5 group { name: "terminology/background";
6 images {
7 image: "bg_bevel.png" COMP;
8 image: "bg_shine.png" COMP;
9 image: "bg_glint.png" COMP;
10 image: "bg_shadow.png" COMP;
11 image: "bg_led_glow.png" COMP;
12 image: "bg_led_base.png" COMP;
13 image: "bg_led.png" COMP;
14 image: "bg_led_strobe.png" COMP;
15 image: "pm_shadow.png" COMP;
16 image: "pm_overlay.png" COMP;
17 image: "pm_fill.png" COMP;
18 }
19 script {
20 public message(Msg_Type:type, id, ...) {
21 new r, g, b, a, v;
22
23 if ((type != MSG_INT) || (id != 1)) return;
24
25 v = (getarg(2) * 255) / 100;
26
27 custom_state(PART:"shadow", "default", 0.0);
28 get_state_val(PART:"shadow", STATE_COLOR, r, g, b, a);
29 set_state_val(PART:"shadow", STATE_COLOR, r, g, b, v);
30 set_state(PART:"shadow", "custom", 0.0);
31
32 custom_state(PART:"base", "default", 0.0);
33 get_state_val(PART:"base", STATE_COLOR, r, g, b, a);
34 set_state_val(PART:"base", STATE_COLOR, r, g, b, v);
35 set_state(PART:"base", "custom", 0.0);
36
37 custom_state(PART:"fade", "default", 0.0);
38 get_state_val(PART:"fade", STATE_COLOR, r, g, b, a);
39 set_state_val(PART:"fade", STATE_COLOR, r, g, b, v);
40 set_state(PART:"base", "custom", 0.0);
41 }
42 }
43 parts {
44// other signals sent not handled here
45// program { name: "focus_in";
46// signal: "focus,in";
47// source: "terminology";
48// }
49// program { name: "focus_out";
50// signal: "focus,out";
51// source: "terminology";
52// }
53
54 ////////////////////////////////////////////////////////////////////
55 // background handling
56 part { name: "shadow";
57 mouse_events: 0;
58 description { state: "default" 0.0;
59 image.normal: "bg_shadow.png";
60 fill.smooth: 0;
61 }
62 }
63 part { name: "base"; type: RECT;
64 mouse_events: 1;
65 description { state: "default" 0.0;
66 color: 48 48 48 255;
67 }
68 }
69 part { name: "fade"; type: RECT;
70 description { state: "default" 0.0;
71 }
72 }
73 part { name: "terminology.background"; type: SWALLOW;
74 clip_to: "fade";
75 description { state: "default" 0.0;
76 }
77 description { state: "image" 0.0;
78 inherit: "default" 0.0;
79 }
80 description { state: "scale" 0.0;
81 inherit: "default" 0.0;
82 }
83 description { state: "edje" 0.0;
84 inherit: "default" 0.0;
85 }
86 description { state: "movie" 0.0;
87 inherit: "default" 0.0;
88 }
89 }
90 program { name: "media_off";
91 signal: "media,off";
92 source: "terminology";
93 action: STATE_SET "default" 0.0;
94 target: "terminology.background";
95 }
96 program { name: "media_img";
97 signal: "media,image";
98 source: "terminology";
99 action: STATE_SET "image" 0.0;
100 target: "terminology.background";
101 }
102 program { name: "media_scale";
103 signal: "media,scale";
104 source: "terminology";
105 action: STATE_SET "scale" 0.0;
106 target: "terminology.background";
107 }
108 program { name: "media_edje";
109 signal: "media,edje";
110 source: "terminology";
111 action: STATE_SET "edje" 0.0;
112 target: "terminology.background";
113 }
114 program { name: "media_mov";
115 signal: "media,movie";
116 source: "terminology";
117 action: STATE_SET "movie" 0.0;
118 target: "terminology.background";
119 }
120
121 ////////////////////////////////////////////////////////////////////
122 // actual text grid for chars, cursors, selectiond etc. goes here
123 part { name: "terminology.content"; type: SWALLOW;
124 description { state: "default" 0.0;
125 rel1.offset: 1 2;
126 rel2.offset: -2 -2;
127 }
128 }
129
130 ////////////////////////////////////////////////////////////////////
131 // overlayed prettiness
132 part { name: "bevel";
133 mouse_events: 0;
134 description { state: "default" 0.0;
135 rel1.offset: 0 0;
136 rel2.offset: -1 -1;
137 image.normal: "bg_bevel.png";
138 image.border: 3 3 5 3;
139 image.middle: 0;
140 fill.smooth: 0;
141 visible: 1;
142 }
143 }
144 part { name: "glintclip"; type: RECT;
145 mouse_events: 1;
146 description { state: "default" 0.0;
147 }
148 }
149 part { name: "glint";
150 mouse_events: 0;
151 clip_to: "glintclip";
152 description { state: "default" 0.0;
153 fixed: 1 1;
154 min: 79 5;
155 max: 79 5;
156 rel1 {
157 relative: 0.0 0.0;
158 offset: 0 1;
159 }
160 rel2 {
161 relative: 1.0 0.0;
162 offset: -1 1;
163 }
164 image.normal: "bg_glint.png";
165 }
166 }
167 part { name: "shine";
168 mouse_events: 0;
169 description { state: "default" 0.0;
170 rel1.offset: 0 1;
171 rel2.offset: -1 -1;
172 image.normal: "bg_shine.png";
173 fill.smooth: 0;
174 align: 0.5 0.0;
175 aspect: (255/120) (255/120);
176 aspect_preference: HORIZONTAL;
177 }
178 }
179
180 ////////////////////////////////////////////////////////////////////
181 // a place terminology will place an entry box for internal commands
182 part { name: "cmdclip"; type: RECT;
183 description { state: "default" 0.0;
184 rel1.to: "terminology.cmdbox";
185 rel1.offset: -100 -100;
186 rel2.to: "terminology.cmdbox";
187 rel2.offset: 99 99;
188 color: 255 255 255 0;
189 visible: 0;
190 }
191 description { state: "visible" 0.0;
192 inherit: "default" 0.0;
193 color: 255 255 255 255;
194 visible: 1;
195 }
196 }
197 part { name: "cmdback"; type: RECT;
198 clip_to: "cmdclip";
199 description { state: "default" 0.0;
200 color: 255 255 255 255;
201 rel1.to: "terminology.cmdbox";
202 rel1.offset: -2 -2;
203 rel2.to: "terminology.cmdbox";
204 rel2.offset: 1 1;
205 }
206 }
207 part { name: "terminology.cmdbox"; type: SWALLOW;
208 clip_to: "cmdclip";
209 description { state: "default" 0.0;
210 fixed: 1 1;
211 min: 8 8;
212 rel1.relative: 0.0 1.0;
213 rel1.offset: 8 9;
214 rel2.offset: -9 9;
215 align: 0.5 0.0;
216 }
217 description { state: "visible" 0.0;
218 inherit: "default" 0.0;
219 rel1.offset: 8 -9;
220 rel2.offset: -9 -9;
221 align: 0.5 1.0;
222 }
223 }
224 program { name: "cmdshow0";
225 signal: "cmdbox,show";
226 source: "terminology";
227 action: STATE_SET "visible" 0.0;
228 transition: DECELERATE 0.4;
229 target: "cmdclip";
230 }
231 program { name: "cmdshow";
232 signal: "cmdbox,show";
233 source: "terminology";
234 action: STATE_SET "visible" 0.0;
235 transition: SPRING 0.4 0.5 4;
236 target: "terminology.cmdbox";
237 }
238 program { name: "cmdhide";
239 signal: "cmdbox,hide";
240 source: "terminology";
241 action: STATE_SET "default" 0.0;
242 transition: ACCELERATE 0.5;
243 target: "terminology.cmdbox";
244 target: "cmdclip";
245 }
246
247 ////////////////////////////////////////////////////////////////////
248 // visual bell - spinning red siren light
249 part { name: "bell_glow";
250 mouse_events: 0;
251 description { state: "default" 0.0;
252 fixed: 1 1;
253 visible: 0;
254 color: 255 255 255 0;
255 rel1.to: "bell_base";
256 rel2.to: "bell_base";
257 min: 1600 1600;
258 fill.smooth: 0;
259 image.normal: "bg_led_glow.png";
260 }
261 description { state: "visible" 0.0;
262 inherit: "default" 0.0;
263 visible: 1;
264 color: 255 255 255 255;
265 }
266 description { state: "done" 0.0;
267 inherit: "default" 0.0;
268 visible: 0;
269 color: 255 255 255 0;
270 min: 0 0;
271 }
272 }
273 part { name: "bell_base";
274 mouse_events: 0;
275 description { state: "default" 0.0;
276 fixed: 1 1;
277 visible: 0;
278 color: 255 255 255 0;
279 min: 32 32;
280 max: 32 32;
281 rel2.offset: -1 -1;
282 align: 1.0 1.0;
283 image.normal: "bg_led_base.png";
284 }
285 description { state: "visible" 0.0;
286 inherit: "default" 0.0;
287 visible: 1;
288 color: 255 255 255 255;
289 }
290 }
291 part { name: "bell";
292 mouse_events: 0;
293 description { state: "default" 0.0;
294 fixed: 1 1;
295 visible: 0;
296 color: 255 255 255 0;
297 rel1.to: "bell_base";
298 rel2.to: "bell_base";
299 image.normal: "bg_led.png";
300 }
301 description { state: "visible" 0.0;
302 inherit: "default" 0.0;
303 visible: 1;
304 color: 255 255 255 255;
305 }
306 }
307 part { name: "bell_strobe";
308 mouse_events: 0;
309 description { state: "default" 0.0;
310 fixed: 1 1;
311 visible: 0;
312 color: 255 255 255 0;
313 rel1.to: "bell";
314 rel2.to: "bell";
315 image.normal: "bg_led_strobe.png";
316 map {
317 on: 1;
318 smooth: 1;
319 rotation.center: "bell";
320 }
321 }
322 description { state: "spin" 0.0;
323 inherit: "default" 0.0;
324 visible: 1;
325 color: 255 255 255 255;
326 map.rotation.z: 36.0;
327 }
328 description { state: "spin_done" 0.0;
329 inherit: "default" 0.0;
330 visible: 0;
331 color: 255 255 255 0;
332 map.rotation.z: 684.0;
333 }
334 }
335 program { name: "bell0";
336 signal: "bell";
337 source: "terminology";
338 action: STATE_SET "default" 0.0;
339 target: "bell_base";
340 target: "bell";
341 target: "bell_strobe";
342 target: "bell_glow";
343 after: "bell";
344 }
345 program { name: "bell";
346 action: STATE_SET "visible" 0.0;
347 target: "bell_base";
348 target: "bell_glow";
349 after: "bell2";
350 }
351 program { name: "bell2";
352 action: STATE_SET "visible" 0.0;
353 transition: DECELERATE 0.1;
354 target: "bell";
355 target: "bell_glow";
356 after: "bell3";
357 after: "bell3.1";
358 }
359 program { name: "bell3";
360 action: STATE_SET "spin" 0.0;
361 transition: LINEAR 0.1;
362 target: "bell_strobe";
363 after: "bell4.0";
364 after: "bell4.1";
365 after: "bell4.2";
366 }
367 program { name: "bell3.1";
368 action: STATE_SET "done" 0.0;
369 transition: DECELERATE 0.5;
370 target: "bell_glow";
371 }
372 program { name: "bell4.0";
373 action: STATE_SET "default" 0.0;
374 transition: ACCELERATE 1.2;
375 target: "bell";
376 }
377 program { name: "bell4.1";
378 action: STATE_SET "default" 0.0;
379 transition: ACCELERATE 1.6;
380 target: "bell_base";
381 }
382 program { name: "bell4.2";
383 action: STATE_SET "spin_done" 0.0;
384 transition: LINEAR 0.9;
385 target: "bell_strobe";
386 }
387
388 ////////////////////////////////////////////////////////////////////
389 // popup media over the terminal (until dismissed)
390 part { name: "popmedia_clip"; type: RECT;
391 mouse_events: 1;
392 description { state: "default" 0.0;
393 fixed: 1 1;
394 visible: 0;
395 color: 255 255 255 0;
396 }
397 description { state: "visible" 0.0;
398 inherit: "default" 0.0;
399 visible: 1;
400 color: 255 255 255 255;
401 }
402 }
403 part { name: "popmedia_shadow";
404 mouse_events: 0;
405 description { state: "default" 0.0;
406 fixed: 1 1;
407 rel1 {
408 to: "terminology.popmedia";
409 }
410 rel2 {
411 to: "terminology.popmedia";
412 }
413 image.normal: "pm_shadow.png";
414 image.border: 64 64 64 64;
415 image.border_scale_by: 0.1;
416 fill.smooth: 0;
417 visible: 0;
418 }
419 description { state: "visible" 0.0;
420 inherit: "default" 0.0;
421 rel1.offset: -32 -32;
422 rel2.offset: 31 31;
423 image.border_scale_by: 1.0;
424 visible: 1;
425 }
426 }
427 part { name: "popmedia_fill";
428 mouse_events: 0;
429 description { state: "default" 0.0;
430 fixed: 1 1;
431 rel1.to: "terminology.popmedia";
432 rel2.to: "terminology.popmedia";
433 image.normal: "pm_fill.png";
434 fill {
435 size.relative: 0.0 0.0;
436 size.offset: 64 64;
437 }
438 }
439 }
440 part { name: "terminology.popmedia"; type: SWALLOW;
441 clip_to: "popmedia_clip";
442 description { state: "default" 0.0;
443 fixed: 1 1;
444 rel1.relative: 0.5 0.5;
445 rel2.relative: 0.5 0.5;
446 visible: 0;
447 }
448 description { state: "image" 0.0;
449 inherit: "default" 0.0;
450 rel1.relative: 0.1 0.1;
451 rel2.relative: 0.9 0.9;
452 visible: 1;
453 }
454 description { state: "scale" 0.0;
455 inherit: "default" 0.0;
456 rel1.relative: 0.1 0.1;
457 rel2.relative: 0.9 0.9;
458 visible: 1;
459 }
460 description { state: "edje" 0.0;
461 inherit: "default" 0.0;
462 rel1.relative: 0.1 0.1;
463 rel2.relative: 0.9 0.9;
464 visible: 1;
465 }
466 description { state: "movie" 0.0;
467 inherit: "default" 0.0;
468 rel1.relative: 0.1 0.1;
469 rel2.relative: 0.9 0.9;
470 visible: 1;
471 }
472 }
473 part { name: "popmedia_overlay";
474 mouse_events: 0;
475 description { state: "default" 0.0;
476 fixed: 1 1;
477 rel1.to: "terminology.popmedia";
478 rel2.to: "terminology.popmedia";
479 image.normal: "pm_overlay.png";
480 fill.smooth: 0;
481 visible: 0;
482 }
483 description { state: "visible" 0.0;
484 inherit: "default" 0.0;
485 visible: 1;
486 }
487 }
488 part { name: "popmedia_bevel";
489 mouse_events: 0;
490 description { state: "default" 0.0;
491 fixed: 1 1;
492 rel1.to: "terminology.popmedia";
493 rel2.to: "terminology.popmedia";
494 image.normal: "bg_bevel.png";
495 image.border: 3 3 5 3;
496 image.middle: 0;
497 fill.smooth: 0;
498 visible: 0;
499 }
500 description { state: "visible" 0.0;
501 inherit: "default" 0.0;
502 visible: 1;
503 }
504 }
505 part { name: "popmedia_glintclip"; type: RECT;
506 mouse_events: 0;
507 description { state: "default" 0.0;
508 fixed: 1 1;
509 visible: 0;
510 }
511 description { state: "visible" 0.0;
512 inherit: "default" 0.0;
513 visible: 1;
514 }
515 }
516 part { name: "popmedia_glint";
517 mouse_events: 0;
518 clip_to: "popmedia_glintclip";
519 description { state: "default" 0.0;
520 fixed: 1 1;
521 min: 79 5;
522 max: 79 5;
523 rel1 {
524 to: "terminology.popmedia";
525 relative: 0.0 0.0;
526 offset: 0 0;
527 }
528 rel2 {
529 to: "terminology.popmedia";
530 relative: 1.0 0.0;
531 offset: -1 0;
532 }
533 image.normal: "bg_glint.png";
534 visible: 0;
535 }
536 description { state: "visible" 0.0;
537 inherit: "default" 0.0;
538 visible: 1;
539 }
540 }
541 part { name: "popmedia_shine";
542 mouse_events: 0;
543 description { state: "default" 0.0;
544 fixed: 1 1;
545 rel1.to: "terminology.popmedia";
546 rel2.to: "terminology.popmedia";
547 image.normal: "bg_shine.png";
548 fill.smooth: 0;
549 align: 0.5 0.0;
550 aspect: (255/120) (255/120);
551 aspect_preference: HORIZONTAL;
552 visible: 0;
553 }
554 description { state: "visible" 0.0;
555 inherit: "default" 0.0;
556 visible: 1;
557 }
558 }
559 part { name: "popmedia_dismiss"; type: RECT;
560 mouse_events: 1;
561 description { state: "default" 0.0;
562 fixed: 1 1;
563 color: 0 0 0 0;
564 visible: 0;
565 }
566 description { state: "visible" 0.0;
567 inherit: "default" 0.0;
568 visible: 1;
569 }
570 }
571 program { name: "popmedia_dismiss";
572 signal: "mouse,clicked,*";
573 source: "popmedia_dismiss";
574 action: STATE_SET "default" 0.0;
575 transition: DECELERATE 0.5;
576 target: "terminology.popmedia";
577 target: "popmedia_clip";
578 target: "popmedia_dismiss";
579 target: "popmedia_shadow";
580 target: "popmedia_fill";
581 target: "popmedia_overlay";
582 target: "popmedia_bevel";
583 target: "popmedia_glint";
584 target: "popmedia_glintclip";
585 target: "popmedia_shine";
586 after: "popmedia_dismiss2";
587 }
588 program { name: "popmedia_dismiss2";
589 action: SIGNAL_EMIT "popmedia,done" "terminology";
590 }
591 program { name: "popmedia_off";
592 signal: "popmedia,off";
593 source: "terminology";
594 action: STATE_SET "default" 0.0;
595 transition: DECELERATE 0.2;
596 target: "terminology.popmedia";
597 target: "popmedia_clip";
598 target: "popmedia_dismiss";
599 target: "popmedia_shadow";
600 target: "popmedia_fill";
601 target: "popmedia_overlay";
602 target: "popmedia_bevel";
603 target: "popmedia_glint";
604 target: "popmedia_glintclip";
605 target: "popmedia_shine";
606 after: "popmedia_dismiss2";
607 }
608 program { name: "popmedia_img";
609 signal: "popmedia,image";
610 source: "terminology";
611 action: STATE_SET "image" 0.0;
612 transition: DECELERATE 0.2;
613 target: "terminology.popmedia";
614 }
615 program { name: "popmedia_scale";
616 signal: "popmedia,scale";
617 source: "terminology";
618 action: STATE_SET "scale" 0.0;
619 transition: DECELERATE 0.2;
620 target: "terminology.popmedia";
621 }
622 program { name: "popmedia_edje";
623 signal: "popmedia,edje";
624 source: "terminology";
625 action: STATE_SET "edje" 0.0;
626 transition: DECELERATE 0.2;
627 target: "terminology.popmedia";
628 }
629 program { name: "popmedia_mov";
630 signal: "popmedia,movie";
631 source: "terminology";
632 action: STATE_SET "movie" 0.0;
633 transition: DECELERATE 0.2;
634 target: "terminology.popmedia";
635 }
636 program { name: "popmedia_img2";
637 signal: "popmedia,image";
638 source: "terminology";
639 action: STATE_SET "visible" 0.0;
640 transition: DECELERATE 0.2;
641 target: "popmedia_clip";
642 target: "popmedia_dismiss";
643 target: "popmedia_shadow";
644 target: "popmedia_fill";
645 target: "popmedia_overlay";
646 target: "popmedia_bevel";
647 target: "popmedia_glint";
648 target: "popmedia_glintclip";
649 target: "popmedia_shine";
650 }
651 program { name: "popmedia_scale2";
652 signal: "popmedia,scale";
653 source: "terminology";
654 action: STATE_SET "visible" 0.0;
655 transition: DECELERATE 0.2;
656 target: "popmedia_clip";
657 target: "popmedia_dismiss";
658 target: "popmedia_shadow";
659 target: "popmedia_fill";
660 target: "popmedia_overlay";
661 target: "popmedia_bevel";
662 target: "popmedia_glint";
663 target: "popmedia_glintclip";
664 target: "popmedia_shine";
665 }
666 program { name: "popmedia_edje2";
667 signal: "popmedia,edje";
668 source: "terminology";
669 action: STATE_SET "visible" 0.0;
670 transition: DECELERATE 0.2;
671 target: "popmedia_clip";
672 target: "popmedia_dismiss";
673 target: "popmedia_shadow";
674 target: "popmedia_fill";
675 target: "popmedia_overlay";
676 target: "popmedia_bevel";
677 target: "popmedia_glint";
678 target: "popmedia_glintclip";
679 target: "popmedia_shine";
680 }
681 program { name: "popmedia_mov2";
682 signal: "popmedia,movie";
683 source: "terminology";
684 action: STATE_SET "visible" 0.0;
685 transition: DECELERATE 0.2;
686 target: "popmedia_clip";
687 target: "popmedia_dismiss";
688 target: "popmedia_shadow";
689 target: "popmedia_fill";
690 target: "popmedia_overlay";
691 target: "popmedia_bevel";
692 target: "popmedia_glint";
693 target: "popmedia_glintclip";
694 target: "popmedia_shine";
695 }
696
697 ////////////////////////////////////////////////////////////////////
698 // overlayed options and controls
699 part { name: "terminology.about"; type: SWALLOW;
700 scale: 1;
701 description { state: "default" 0.0;
702 fixed: 1 1;
703 min: 198 198;
704 max: 198 198;
705 align: 0.5 0.0;
706 visible: 0;
707 rel1.relative: 0.0 1.0;
708 rel2.relative: 1.0 1.0;
709 }
710 description { state: "visible" 0.0;
711 inherit: "default" 0.0;
712 visible: 1;
713 align: 0.5 0.5;
714 rel1.relative: 0.0 0.0;
715 rel2.relative: 1.0 1.0;
716 }
717 }
718 program { name: "ab_show";
719 signal: "about,show";
720 source: "terminology";
721 action: STATE_SET "visible" 0.0;
722 transition: SPRING 1.2 2.0 6;
723 target: "terminology.about";
724 }
725 program { name: "ab_hide";
726 signal: "about,hide";
727 source: "terminology";
728 action: STATE_SET "default" 0.0;
729 transition: DECELERATE 0.6;
730 target: "terminology.about";
731 }
732
733 ////////////////////////////////////////////////////////////////////
734 // swallow to hold invisile rect to click on to dismiss things
735 part { name: "terminology.dismiss"; type: SWALLOW;
736 description { state: "default" 0.0;
737 }
738 }
739
740 ////////////////////////////////////////////////////////////////////
741 // overlayed options and controls
742 part { name: "terminology.optdetails"; type: SWALLOW;
743 scale: 1;
744 description { state: "default" 0.0;
745 fixed: 1 1;
746 min: 40 40;
747 align: 0.0 0.5;
748 visible: 0;
749 rel1 {
750 relative: 1.0 0.02;
751 offset: 8 8;
752 }
753 rel2 {
754 relative: 1.0 0.98;
755 offset: 8 -9;
756 }
757 }
758 description { state: "visible" 0.0;
759 inherit: "default" 0.0;
760 visible: 1;
761 align: 1.0 0.5;
762 rel1 {
763 relative: 0.1 0.02;
764 offset: 8 8;
765 }
766 rel2 {
767 to_x: "terminology.options";
768 relative: 0.0 0.98;
769 offset: -9 -9;
770 }
771 }
772 }
773 program { name: "opdt_show";
774 signal: "optdetails,show";
775 source: "terminology";
776 action: STATE_SET "visible" 0.0;
777 transition: DECELERATE 0.4;
778 target: "terminology.optdetails";
779 }
780 program { name: "opdt_hide";
781 signal: "optdetails,hide";
782 source: "terminology";
783 action: STATE_SET "default" 0.0;
784 transition: DECELERATE 0.2;
785 target: "terminology.optdetails";
786 after: "opdt_hide2";
787 }
788 program { name: "opdt_hide2";
789 action: SIGNAL_EMIT "optdetails,hide,done" "terminology";
790 }
791
792 part { name: "terminology.options"; type: SWALLOW;
793 scale: 1;
794 description { state: "default" 0.0;
795 fixed: 1 1;
796 align: 0.0 0.5;
797 visible: 0;
798 rel1 {
799 relative: 1.0 0.02;
800 offset: 8 8;
801 }
802 rel2 {
803 relative: 1.0 0.98;
804 offset: 8 -9;
805 }
806 }
807 description { state: "visible" 0.0;
808 inherit: "default" 0.0;
809 visible: 1;
810 align: 1.0 0.5;
811 rel1 {
812 offset: -9 8;
813 }
814 rel2 {
815 offset: -9 -9;
816 }
817 }
818 }
819 program { name: "op_show";
820 signal: "options,show";
821 source: "terminology";
822 action: STATE_SET "visible" 0.0;
823 transition: DECELERATE 0.4;
824 target: "terminology.options";
825 }
826 program { name: "op_hide";
827 signal: "options,hide";
828 source: "terminology";
829 action: STATE_SET "default" 0.0;
830 transition: DECELERATE 0.6;
831 target: "terminology.options";
832 }
833
834 part { name: "terminology.controls"; type: SWALLOW;
835 scale: 1;
836 description { state: "default" 0.0;
837 fixed: 1 1;
838 min: 10 10;
839 align: 0.0 0.5;
840 visible: 0;
841 rel1 {
842 relative: 1.0 0.5;
843 offset: 8 8;
844 }
845 rel2 {
846 relative: 1.0 0.5;
847 offset: 8 -9;
848 }
849 }
850 description { state: "visible" 0.0;
851 inherit: "default" 0.0;
852 visible: 1;
853 align: 1.0 0.5;
854 rel1 {
855 relative: 1.0 0.5;
856 offset: -9 8;
857 }
858 rel2 {
859 offset: -9 -9;
860 }
861 }
862 }
863 program { name: "ct_show";
864 signal: "controls,show";
865 source: "terminology";
866 action: STATE_SET "visible" 0.0;
867 transition: DECELERATE 0.3;
868 target: "terminology.controls";
869 }
870 program { name: "ct_hide";
871 signal: "controls,hide";
872 source: "terminology";
873 action: STATE_SET "default" 0.0;
874 transition: DECELERATE 0.5;
875 target: "terminology.controls";
876 }
877 }
878 }
879
880//////////////////////////////////////////////////////////////////////////////
881 //// the selection
882 // selections come in 5 modes:
883 //
884 // oneline (also multiple lines but all fill the row):
885 // | ######### |
886 //
887 // disjoint:
888 // | #######|
889 // |## |
890 //
891 // default:
892 // | ###########|
893 // |######### |
894 //
895 // topfull:
896 // |##############|
897 // |###### |
898 //
899 // bottomfull:
900 // | ######|
901 // |##############|
902#define PATCOL 100 160 255 128
903#define PATCOL2 120 180 255 144
904#define OUTCOL 120 220 255 128
905#define OUTCOL2 180 240 255 144
906
907 group { name: "terminology/selection";
908 images {
909 image: "sl_stripe.png" COMP;
910 image: "sl_left.png" COMP;
911 image: "sl_right.png" COMP;
912 image: "sl_top.png" COMP;
913 image: "sl_bottom.png" COMP;
914 image: "sl_htop.png" COMP;
915 image: "sl_hbottom.png" COMP;
916 }
917 parts {
918 // background pattern. duplicated because clips cut out regions of
919 // it to see and clips don't overlap
920 part { name: "background_top";
921 mouse_events: 0;
922 clip_to: "top_clip";
923 description { state: "default" 0.0;
924 color: PATCOL;
925 image.normal: "sl_stripe.png";
926 fill.size.relative: 0.0 0.0;
927 fill.size.offset: 40 40;
928 }
929 description { state: "pulse" 0.0;
930 inherit: "default" 0.0;
931 color: PATCOL2;
932 }
933 }
934 part { name: "background_middle";
935 mouse_events: 0;
936 clip_to: "middle_clip";
937 description { state: "default" 0.0;
938 color: PATCOL;
939 image.normal: "sl_stripe.png";
940 fill.size.relative: 0.0 0.0;
941 fill.size.offset: 40 40;
942 }
943 description { state: "pulse" 0.0;
944 inherit: "default" 0.0;
945 color: PATCOL2;
946 }
947 }
948 part { name: "background_bottom";
949 mouse_events: 0;
950 clip_to: "bottom_clip";
951 description { state: "default" 0.0;
952 color: PATCOL;
953 image.normal: "sl_stripe.png";
954 fill.size.relative: 0.0 0.0;
955 fill.size.offset: 40 40;
956 }
957 description { state: "pulse" 0.0;
958 inherit: "default" 0.0;
959 color: PATCOL2;
960 }
961 }
962
963 // clips that clip the above pattern images to occupy specific
964 // regions of the object (or be invisible since clip is invisible)
965 part { name: "top_clip"; type: RECT;
966 mouse_events: 0;
967 description { state: "default" 0.0;
968 rel1.to: "terminology.top_left";
969 rel1.relative: 1.0 0.0;
970 rel2.to_y: "terminology.top_left";
971 rel2.relative: 1.0 1.0;
972 }
973 description { state: "oneline" 0.0;
974 visible: 0;
975 }
976 }
977 part { name: "middle_clip"; type: RECT;
978 mouse_events: 0;
979 description { state: "default" 0.0;
980 rel1.to: "terminology.top_left";
981 rel1.relative: 0.0 1.0;
982 rel2.to: "terminology.bottom_right";
983 rel2.relative: 1.0 0.0;
984 }
985 description { state: "oneline" 0.0;
986 rel1.to: "terminology.top_left";
987 rel1.relative: 1.0 0.0;
988 rel2.to: "terminology.bottom_right";
989 rel2.relative: 0.0 1.0;
990 }
991 }
992 part { name: "bottom_clip"; type: RECT;
993 mouse_events: 0;
994 description { state: "default" 0.0;
995 rel1.to_y: "terminology.bottom_right";
996 rel1.relative: 0.0 0.0;
997 rel2.to_x: "terminology.bottom_right";
998 rel2.relative: 0.0 1.0;
999 }
1000 description { state: "oneline" 0.0;
1001 visible: 0;
1002 }
1003 }
1004
1005 // the outline around the selection...
1006#define TARGETS \
1007target: "top_clip"; target: "middle_clip"; target: "bottom_clip"; \
1008target: "0.clip"; target: "1.clip"; target: "2.clip"; target: "3.clip"; target: "4.clip"
1009
1010 part { name: "0.clip"; type: RECT;
1011 mouse_events: 0;
1012 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1013 description { state: "oneline" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1014 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1015 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1016 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1017 }
1018 part { name: "1.clip"; type: RECT;
1019 mouse_events: 0;
1020 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1021 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1022 description { state: "disjoint" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1023 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1024 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1025 }
1026 part { name: "2.clip"; type: RECT;
1027 mouse_events: 0;
1028 description { state: "default" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1029 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1030 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1031 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1032 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1033 }
1034 part { name: "3.clip"; type: RECT;
1035 mouse_events: 0;
1036 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1037 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1038 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1039 description { state: "topfull" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1040 description { state: "bottomfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1041 }
1042 part { name: "4.clip"; type: RECT;
1043 mouse_events: 0;
1044 description { state: "default" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1045 description { state: "oneline" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1046 description { state: "disjoint" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1047 description { state: "topfull" 0.0; visible: 0; rel1.offset: -100 -100; rel2.offset: 101 101; }
1048 description { state: "bottomfull" 0.0; visible: 1; rel1.offset: -100 -100; rel2.offset: 101 101; }
1049 }
1050
1051 // oneline (also multiple lines but all fill the row):
1052 // | ######### |
1053 part { name: "0.left";
1054 mouse_events: 0;
1055 clip_to: "0.clip";
1056 description { state: "default" 0.0;
1057 rel1 {
1058 to_x: "terminology.top_left";
1059 relative: 1.0 0.0;
1060 offset: -1 -1;
1061 }
1062 rel2 {
1063 to_x: "terminology.top_left";
1064 relative: 1.0 1.0;
1065 offset: 2 0;
1066 }
1067 color: OUTCOL;
1068 image.normal: "sl_left.png";
1069 image.border: 0 0 4 4;
1070 fill.smooth: 0;
1071 }
1072 description { state: "pulse" 0.0;
1073 inherit: "default" 0.0;
1074 color: OUTCOL2;
1075 }
1076 }
1077 part { name: "0.right";
1078 mouse_events: 0;
1079 clip_to: "0.clip";
1080 description { state: "default" 0.0;
1081 rel1 {
1082 to_x: "terminology.bottom_right";
1083 relative: 0.0 0.0;
1084 offset: -3 -1;
1085 }
1086 rel2 {
1087 to_x: "terminology.bottom_right";
1088 relative: 0.0 1.0;
1089 offset: 0 0;
1090 }
1091 color: OUTCOL;
1092 image.normal: "sl_right.png";
1093 image.border: 0 0 4 4;
1094 fill.smooth: 0;
1095 }
1096 description { state: "pulse" 0.0;
1097 inherit: "default" 0.0;
1098 color: OUTCOL2;
1099 }
1100 }
1101 part { name: "0.top";
1102 mouse_events: 0;
1103 clip_to: "0.clip";
1104 description { state: "default" 0.0;
1105 rel1 {
1106 to: "0.left";
1107 relative: 1.0 0.0;
1108 offset: 0 0;
1109 }
1110 rel2 {
1111 to: "0.right";
1112 relative: 0.0 0.0;
1113 offset: -1 3;
1114 }
1115 color: OUTCOL;
1116 image.normal: "sl_htop.png";
1117 fill.smooth: 0;
1118 }
1119 description { state: "pulse" 0.0;
1120 inherit: "default" 0.0;
1121 color: OUTCOL2;
1122 }
1123 }
1124 part { name: "0.bottom";
1125 mouse_events: 0;
1126 clip_to: "0.clip";
1127 description { state: "default" 0.0;
1128 rel1 {
1129 to: "0.left";
1130 relative: 1.0 1.0;
1131 offset: 0 -4;
1132 }
1133 rel2 {
1134 to: "0.right";
1135 relative: 0.0 1.0;
1136 offset: -1 -1;
1137 }
1138 color: OUTCOL;
1139 image.normal: "sl_hbottom.png";
1140 fill.smooth: 0;
1141 }
1142 description { state: "pulse" 0.0;
1143 inherit: "default" 0.0;
1144 color: OUTCOL2;
1145 }
1146 }
1147 program { name: "oneline";
1148 signal: "mode,oneline";
1149 source: "terminology";
1150 action: STATE_SET "oneline" 0.0;
1151 TARGETS;
1152 }
1153
1154 // disjoint:
1155 // | #######|
1156 // |## |
1157 part { name: "1.left";
1158 mouse_events: 0;
1159 clip_to: "1.clip";
1160 description { state: "default" 0.0;
1161 rel1 {
1162 to: "terminology.top_left";
1163 relative: 1.0 0.0;
1164 offset: -1 -1;
1165 }
1166 rel2 {
1167 to: "terminology.top_left";
1168 relative: 1.0 1.0;
1169 offset: 2 0;
1170 }
1171 color: OUTCOL;
1172 image.normal: "sl_left.png";
1173 image.border: 0 0 4 4;
1174 fill.smooth: 0;
1175 }
1176 description { state: "pulse" 0.0;
1177 inherit: "default" 0.0;
1178 color: OUTCOL2;
1179 }
1180 }
1181 part { name: "1.right";
1182 mouse_events: 0;
1183 clip_to: "1.clip";
1184 description { state: "default" 0.0;
1185 rel1 {
1186 to_y: "terminology.top_left";
1187 relative: 1.0 0.0;
1188 offset: -4 -1;
1189 }
1190 rel2 {
1191 to_y: "terminology.top_left";
1192 relative: 1.0 1.0;
1193 offset: -1 0;
1194 }
1195 color: OUTCOL;
1196 image.normal: "sl_right.png";
1197 image.border: 0 0 4 4;
1198 fill.smooth: 0;
1199 }
1200 description { state: "pulse" 0.0;
1201 inherit: "default" 0.0;
1202 color: OUTCOL2;
1203 }
1204 }
1205 part { name: "1.top";
1206 mouse_events: 0;
1207 clip_to: "1.clip";
1208 description { state: "default" 0.0;
1209 rel1 {
1210 to: "1.left";
1211 relative: 1.0 0.0;
1212 offset: 0 0;
1213 }
1214 rel2 {
1215 to: "1.right";
1216 relative: 0.0 0.0;
1217 offset: -1 3;
1218 }
1219 color: OUTCOL;
1220 image.normal: "sl_htop.png";
1221 fill.smooth: 0;
1222 }
1223 description { state: "pulse" 0.0;
1224 inherit: "default" 0.0;
1225 color: OUTCOL2;
1226 }
1227 }
1228 part { name: "1.bottom";
1229 mouse_events: 0;
1230 clip_to: "1.clip";
1231 description { state: "default" 0.0;
1232 rel1 {
1233 to: "1.left";
1234 relative: 1.0 1.0;
1235 offset: 0 -4;
1236 }
1237 rel2 {
1238 to: "1.right";
1239 relative: 0.0 1.0;
1240 offset: -1 -1;
1241 }
1242 color: OUTCOL;
1243 image.normal: "sl_hbottom.png";
1244 fill.smooth: 0;
1245 }
1246 description { state: "pulse" 0.0;
1247 inherit: "default" 0.0;
1248 color: OUTCOL2;
1249 }
1250 }
1251 part { name: "1.left2";
1252 mouse_events: 0;
1253 clip_to: "1.clip";
1254 description { state: "default" 0.0;
1255 rel1 {
1256 to_y: "terminology.bottom_right";
1257 offset: -1 -1;
1258 }
1259 rel2 {
1260 to_y: "terminology.bottom_right";
1261 relative: 0.0 1.0;
1262 offset: 2 0;
1263 }
1264 color: OUTCOL;
1265 image.normal: "sl_left.png";
1266 image.border: 0 0 4 4;
1267 fill.smooth: 0;
1268 }
1269 description { state: "pulse" 0.0;
1270 inherit: "default" 0.0;
1271 color: OUTCOL2;
1272 }
1273 }
1274 part { name: "1.right2";
1275 mouse_events: 0;
1276 clip_to: "1.clip";
1277 description { state: "default" 0.0;
1278 rel1 {
1279 to: "terminology.bottom_right";
1280 relative: 0.0 0.0;
1281 offset: -3 -1;
1282 }
1283 rel2 {
1284 to: "terminology.bottom_right";
1285 relative: 0.0 1.0;
1286 offset: 0 0;
1287 }
1288 color: OUTCOL;
1289 image.normal: "sl_right.png";
1290 image.border: 0 0 4 4;
1291 fill.smooth: 0;
1292 }
1293 description { state: "pulse" 0.0;
1294 inherit: "default" 0.0;
1295 color: OUTCOL2;
1296 }
1297 }
1298 part { name: "1.top2";
1299 mouse_events: 0;
1300 clip_to: "1.clip";
1301 description { state: "default" 0.0;
1302 rel1 {
1303 to: "1.left2";
1304 relative: 1.0 0.0;
1305 offset: 0 0;
1306 }
1307 rel2 {
1308 to: "1.right2";
1309 relative: 0.0 0.0;
1310 offset: -1 3;
1311 }
1312 color: OUTCOL;
1313 image.normal: "sl_htop.png";
1314 fill.smooth: 0;
1315 }
1316 description { state: "pulse" 0.0;
1317 inherit: "default" 0.0;
1318 color: OUTCOL2;
1319 }
1320 }
1321 part { name: "1.bottom2";
1322 mouse_events: 0;
1323 clip_to: "1.clip";
1324 description { state: "default" 0.0;
1325 rel1 {
1326 to: "1.left2";
1327 relative: 1.0 1.0;
1328 offset: 0 -4;
1329 }
1330 rel2 {
1331 to: "1.right2";
1332 relative: 0.0 1.0;
1333 offset: -1 -1;
1334 }
1335 color: OUTCOL;
1336 image.normal: "sl_hbottom.png";
1337 fill.smooth: 0;
1338 }
1339 description { state: "pulse" 0.0;
1340 inherit: "default" 0.0;
1341 color: OUTCOL2;
1342 }
1343 }
1344 program { name: "disjoint";
1345 signal: "mode,disjoint";
1346 source: "terminology";
1347 action: STATE_SET "disjoint" 0.0;
1348 TARGETS;
1349 }
1350
1351 // default:
1352 // | ###########|
1353 // |######### |
1354 part { name: "2.topkink";
1355 mouse_events: 0;
1356 clip_to: "2.clip";
1357 description { state: "default" 0.0;
1358 rel1 {
1359 to: "top_clip";
1360 relative: 0.0 0.0;
1361 offset: -4 -1;
1362 }
1363 rel2 {
1364 to: "top_clip";
1365 relative: 0.0 1.0;
1366 offset: 2 2;
1367 }
1368 color: OUTCOL;
1369 image.normal: "sl_top.png";
1370 image.border: 0 0 4 7;
1371 }
1372 description { state: "pulse" 0.0;
1373 inherit: "default" 0.0;
1374 color: OUTCOL2;
1375 }
1376 }
1377 part { name: "2.bottomkink";
1378 mouse_events: 0;
1379 clip_to: "2.clip";
1380 description { state: "default" 0.0;
1381 rel1 {
1382 to: "bottom_clip";
1383 relative: 1.0 0.0;
1384 offset: -3 -3;
1385 }
1386 rel2 {
1387 to: "bottom_clip";
1388 relative: 1.0 1.0;
1389 offset: 3 0;
1390 }
1391 color: OUTCOL;
1392 image.normal: "sl_bottom.png";
1393 image.border: 0 0 7 4;
1394 }
1395 description { state: "pulse" 0.0;
1396 inherit: "default" 0.0;
1397 color: OUTCOL2;
1398 }
1399 }
1400 part { name: "2.left";
1401 mouse_events: 0;
1402 clip_to: "2.clip";
1403 description { state: "default" 0.0;
1404 rel1 {
1405 to: "middle_clip";
1406 offset: -1 -1;
1407 }
1408 rel2 {
1409 to: "bottom_clip";
1410 relative: 0.0 1.0;
1411 offset: 2 0;
1412 }
1413 color: OUTCOL;
1414 image.normal: "sl_left.png";
1415 image.border: 0 0 4 4;
1416 fill.smooth: 0;
1417 }
1418 description { state: "pulse" 0.0;
1419 inherit: "default" 0.0;
1420 color: OUTCOL2;
1421 }
1422 }
1423 part { name: "2.right";
1424 mouse_events: 0;
1425 clip_to: "2.clip";
1426 description { state: "default" 0.0;
1427 rel1 {
1428 to: "top_clip";
1429 relative: 1.0 0.0;
1430 offset: -3 -1;
1431 }
1432 rel2 {
1433 to: "middle_clip";
1434 offset: 0 0;
1435 }
1436 color: OUTCOL;
1437 image.normal: "sl_right.png";
1438 image.border: 0 0 4 4;
1439 fill.smooth: 0;
1440 }
1441 description { state: "pulse" 0.0;
1442 inherit: "default" 0.0;
1443 color: OUTCOL2;
1444 }
1445 }
1446 part { name: "2.top";
1447 mouse_events: 0;
1448 clip_to: "2.clip";
1449 description { state: "default" 0.0;
1450 rel1 {
1451 to: "2.topkink";
1452 relative: 1.0 0.0;
1453 offset: 0 0;
1454 }
1455 rel2 {
1456 to: "2.right";
1457 relative: 0.0 0.0;
1458 offset: -1 3;
1459 }
1460 color: OUTCOL;
1461 image.normal: "sl_htop.png";
1462 fill.smooth: 0;
1463 }
1464 description { state: "pulse" 0.0;
1465 inherit: "default" 0.0;
1466 color: OUTCOL2;
1467 }
1468 }
1469 part { name: "2.top2";
1470 mouse_events: 0;
1471 clip_to: "2.clip";
1472 description { state: "default" 0.0;
1473 rel1 {
1474 to: "2.left";
1475 relative: 1.0 0.0;
1476 offset: 0 0;
1477 }
1478 rel2 {
1479 to: "2.topkink";
1480 relative: 0.0 1.0;
1481 offset: -1 -1;
1482 }
1483 color: OUTCOL;
1484 image.normal: "sl_htop.png";
1485 fill.smooth: 0;
1486 }
1487 description { state: "pulse" 0.0;
1488 inherit: "default" 0.0;
1489 color: OUTCOL2;
1490 }
1491 }
1492 part { name: "2.bottom";
1493 mouse_events: 0;
1494 clip_to: "2.clip";
1495 description { state: "default" 0.0;
1496 rel1 {
1497 to: "2.left";
1498 relative: 1.0 1.0;
1499 offset: 0 -4;
1500 }
1501 rel2 {
1502 to: "2.bottomkink";
1503 relative: 0.0 1.0;
1504 offset: -1 -1;
1505 }
1506 color: OUTCOL;
1507 image.normal: "sl_hbottom.png";
1508 fill.smooth: 0;
1509 }
1510 description { state: "pulse" 0.0;
1511 inherit: "default" 0.0;
1512 color: OUTCOL2;
1513 }
1514 }
1515 part { name: "2.bottom2";
1516 mouse_events: 0;
1517 clip_to: "2.clip";
1518 description { state: "default" 0.0;
1519 rel1 {
1520 to: "2.bottomkink";
1521 relative: 1.0 0.0;
1522 offset: 0 0;
1523 }
1524 rel2 {
1525 to: "2.right";
1526 relative: 0.0 1.0;
1527 offset: -1 -1;
1528 }
1529 color: OUTCOL;
1530 image.normal: "sl_hbottom.png";
1531 fill.smooth: 0;
1532 }
1533 description { state: "pulse" 0.0;
1534 inherit: "default" 0.0;
1535 color: OUTCOL2;
1536 }
1537 }
1538 program { name: "multiline";
1539 signal: "mode,multiline";
1540 source: "terminology";
1541 action: STATE_SET "default" 0.0;
1542 TARGETS;
1543 }
1544
1545 // topfull:
1546 // |##############|
1547 // |###### |
1548 part { name: "3.bottomkink";
1549 mouse_events: 0;
1550 clip_to: "3.clip";
1551 description { state: "default" 0.0;
1552 rel1 {
1553 to: "bottom_clip";
1554 relative: 1.0 0.0;
1555 offset: -3 -3;
1556 }
1557 rel2 {
1558 to: "bottom_clip";
1559 relative: 1.0 1.0;
1560 offset: 3 0;
1561 }
1562 color: OUTCOL;
1563 image.normal: "sl_bottom.png";
1564 image.border: 0 0 7 4;
1565 }
1566 description { state: "pulse" 0.0;
1567 inherit: "default" 0.0;
1568 color: OUTCOL2;
1569 }
1570 }
1571 part { name: "3.left";
1572 mouse_events: 0;
1573 clip_to: "3.clip";
1574 description { state: "default" 0.0;
1575 rel1 {
1576 to: "top_clip";
1577 offset: -1 -1;
1578 }
1579 rel2 {
1580 to: "bottom_clip";
1581 relative: 0.0 1.0;
1582 offset: 2 0;
1583 }
1584 color: OUTCOL;
1585 image.normal: "sl_left.png";
1586 image.border: 0 0 4 4;
1587 fill.smooth: 0;
1588 }
1589 description { state: "pulse" 0.0;
1590 inherit: "default" 0.0;
1591 color: OUTCOL2;
1592 }
1593 }
1594 part { name: "3.right";
1595 mouse_events: 0;
1596 clip_to: "3.clip";
1597 description { state: "default" 0.0;
1598 rel1 {
1599 to: "top_clip";
1600 relative: 1.0 0.0;
1601 offset: -3 -1;
1602 }
1603 rel2 {
1604 to: "middle_clip";
1605 offset: 0 0;
1606 }
1607 color: OUTCOL;
1608 image.normal: "sl_right.png";
1609 image.border: 0 0 4 4;
1610 fill.smooth: 0;
1611 }
1612 description { state: "pulse" 0.0;
1613 inherit: "default" 0.0;
1614 color: OUTCOL2;
1615 }
1616 }
1617 part { name: "3.top";
1618 mouse_events: 0;
1619 clip_to: "3.clip";
1620 description { state: "default" 0.0;
1621 rel1 {
1622 to: "3.left";
1623 relative: 1.0 0.0;
1624 offset: 0 0;
1625 }
1626 rel2 {
1627 to: "3.right";
1628 relative: 0.0 0.0;
1629 offset: -1 3;
1630 }
1631 color: OUTCOL;
1632 image.normal: "sl_htop.png";
1633 fill.smooth: 0;
1634 }
1635 description { state: "pulse" 0.0;
1636 inherit: "default" 0.0;
1637 color: OUTCOL2;
1638 }
1639 }
1640 part { name: "3.bottom";
1641 mouse_events: 0;
1642 clip_to: "3.clip";
1643 description { state: "default" 0.0;
1644 rel1 {
1645 to: "3.left";
1646 relative: 1.0 1.0;
1647 offset: 0 -4;
1648 }
1649 rel2 {
1650 to: "3.bottomkink";
1651 relative: 0.0 1.0;
1652 offset: -1 -1;
1653 }
1654 color: OUTCOL;
1655 image.normal: "sl_hbottom.png";
1656 fill.smooth: 0;
1657 }
1658 description { state: "pulse" 0.0;
1659 inherit: "default" 0.0;
1660 color: OUTCOL2;
1661 }
1662 }
1663 part { name: "3.bottom2";
1664 mouse_events: 0;
1665 clip_to: "3.clip";
1666 description { state: "default" 0.0;
1667 rel1 {
1668 to: "3.bottomkink";
1669 relative: 1.0 0.0;
1670 offset: 0 0;
1671 }
1672 rel2 {
1673 to: "3.right";
1674 relative: 0.0 1.0;
1675 offset: -1 -1;
1676 }
1677 color: OUTCOL;
1678 image.normal: "sl_hbottom.png";
1679 fill.smooth: 0;
1680 }
1681 description { state: "pulse" 0.0;
1682 inherit: "default" 0.0;
1683 color: OUTCOL2;
1684 }
1685 }
1686 program { name: "topfull";
1687 signal: "mode,topfull";
1688 source: "terminology";
1689 action: STATE_SET "topfull" 0.0;
1690 TARGETS;
1691 }
1692
1693 // bottomfull:
1694 // | ######|
1695 // |##############|
1696 part { name: "4.topkink";
1697 mouse_events: 0;
1698 clip_to: "4.clip";
1699 description { state: "default" 0.0;
1700 rel1 {
1701 to: "top_clip";
1702 relative: 0.0 0.0;
1703 offset: -4 -1;
1704 }
1705 rel2 {
1706 to: "top_clip";
1707 relative: 0.0 1.0;
1708 offset: 2 2;
1709 }
1710 color: OUTCOL;
1711 image.normal: "sl_top.png";
1712 image.border: 0 0 4 7;
1713 }
1714 description { state: "pulse" 0.0;
1715 inherit: "default" 0.0;
1716 color: OUTCOL2;
1717 }
1718 }
1719 part { name: "4.left";
1720 mouse_events: 0;
1721 clip_to: "4.clip";
1722 description { state: "default" 0.0;
1723 rel1 {
1724 to: "middle_clip";
1725 offset: -1 -1;
1726 }
1727 rel2 {
1728 to: "bottom_clip";
1729 relative: 0.0 1.0;
1730 offset: 2 0;
1731 }
1732 color: OUTCOL;
1733 image.normal: "sl_left.png";
1734 image.border: 0 0 4 4;
1735 fill.smooth: 0;
1736 }
1737 description { state: "pulse" 0.0;
1738 inherit: "default" 0.0;
1739 color: OUTCOL2;
1740 }
1741 }
1742 part { name: "4.right";
1743 mouse_events: 0;
1744 clip_to: "4.clip";
1745 description { state: "default" 0.0;
1746 rel1 {
1747 to: "top_clip";
1748 relative: 1.0 0.0;
1749 offset: -3 -1;
1750 }
1751 rel2 {
1752 offset: 0 0;
1753 }
1754 color: OUTCOL;
1755 image.normal: "sl_right.png";
1756 image.border: 0 0 4 4;
1757 fill.smooth: 0;
1758 }
1759 description { state: "pulse" 0.0;
1760 inherit: "default" 0.0;
1761 color: OUTCOL2;
1762 }
1763 }
1764 part { name: "4.top";
1765 mouse_events: 0;
1766 clip_to: "4.clip";
1767 description { state: "default" 0.0;
1768 rel1 {
1769 to: "4.topkink";
1770 relative: 1.0 0.0;
1771 offset: 0 0;
1772 }
1773 rel2 {
1774 to: "4.right";
1775 relative: 0.0 0.0;
1776 offset: -1 3;
1777 }
1778 color: OUTCOL;
1779 image.normal: "sl_htop.png";
1780 fill.smooth: 0;
1781 }
1782 description { state: "pulse" 0.0;
1783 inherit: "default" 0.0;
1784 color: OUTCOL2;
1785 }
1786 }
1787 part { name: "4.top2";
1788 mouse_events: 0;
1789 clip_to: "4.clip";
1790 description { state: "default" 0.0;
1791 rel1 {
1792 to: "4.left";
1793 relative: 1.0 0.0;
1794 offset: 0 0;
1795 }
1796 rel2 {
1797 to: "4.topkink";
1798 relative: 0.0 1.0;
1799 offset: -1 -1;
1800 }
1801 color: OUTCOL;
1802 image.normal: "sl_htop.png";
1803 fill.smooth: 0;
1804 }
1805 description { state: "pulse" 0.0;
1806 inherit: "default" 0.0;
1807 color: OUTCOL2;
1808 }
1809 }
1810 part { name: "4.bottom";
1811 mouse_events: 0;
1812 clip_to: "4.clip";
1813 description { state: "default" 0.0;
1814 rel1 {
1815 to: "4.left";
1816 relative: 1.0 1.0;
1817 offset: 0 -4;
1818 }
1819 rel2 {
1820 to: "4.right";
1821 relative: 1.0 1.0;
1822 offset: -1 -1;
1823 }
1824 color: OUTCOL;
1825 image.normal: "sl_hbottom.png";
1826 fill.smooth: 0;
1827 }
1828 }
1829 program { name: "bottomfull";
1830 signal: "mode,bottomfull";
1831 source: "terminology";
1832 action: STATE_SET "bottomfull" 0.0;
1833 TARGETS;
1834 }
1835
1836#define SELPULSE \
1837target: "background_top"; \
1838target: "background_middle"; \
1839target: "background_bottom"; \
1840target: "0.left"; \
1841target: "0.right"; \
1842target: "0.top"; \
1843target: "0.bottom"; \
1844target: "1.left"; \
1845target: "1.right"; \
1846target: "1.top"; \
1847target: "1.bottom"; \
1848target: "1.left2"; \
1849target: "1.right2"; \
1850target: "1.top2"; \
1851target: "1.bottom2"; \
1852target: "2.topkink"; \
1853target: "2.bottomkink"; \
1854target: "2.left"; \
1855target: "2.right"; \
1856target: "2.top2"; \
1857target: "2.top"; \
1858target: "2.bottom"; \
1859target: "2.bottom2"; \
1860target: "3.bottomkink"; \
1861target: "3.left"; \
1862target: "3.right"; \
1863target: "3.top"; \
1864target: "3.bottom"; \
1865target: "3.bottom2"; \
1866target: "4.topkink"; \
1867target: "4.left"; \
1868target: "4.right"; \
1869target: "4.top2"; \
1870target: "4.top"; \
1871target: "4.bottom"
1872
1873 program { name: "selpulse";
1874 signal: "show";
1875 source: "";
1876 action: STATE_SET "pulse" 0.0;
1877 transition: SINUSOIDAL 0.5;
1878 SELPULSE;
1879 after: "selpulse2";
1880 }
1881 program { name: "selpulse2";
1882 action: STATE_SET "default" 0.0;
1883 transition: SINUSOIDAL 1.0;
1884 SELPULSE;
1885 after: "selpulse";
1886 }
1887
1888 // top and bottom swallows used to coimmunicate via min/max size the
1889 // size of the top and bottom lines
1890 part { name: "terminology.top_left"; type: SWALLOW;
1891 mouse_events: 0;
1892 description { state: "default" 0.0;
1893 align: 0.0 0.0;
1894 rel2.relative: 0.0 0.0;
1895 visible: 0;
1896 }
1897 }
1898 part { name: "terminology.bottom_right"; type: SWALLOW;
1899 mouse_events: 0;
1900 description { state: "default" 0.0;
1901 align: 1.0 1.0;
1902 rel1.relative: 1.0 1.0;
1903 visible: 0;
1904 }
1905 }
1906
1907 // blinky cursors indicating you can drag the ends of the selection
1908 part { name: "cursor.top_left"; type: RECT;
1909 mouse_events: 0;
1910 description { state: "default" 0.0;
1911 rel1.to: "terminology.top_left";
1912 rel1.relative: 1.0 0.0;
1913 rel2.to: "terminology.top_left";
1914 rel2.relative: 1.0 1.0;
1915 rel2.offset: 0 -1;
1916 color: 255 0 0 128;
1917 }
1918 }
1919 part { name: "cursor_blink.top_left"; type: RECT;
1920 mouse_events: 0;
1921 description { state: "default" 0.0;
1922 rel1.to: "cursor.top_left";
1923 rel2.to: "cursor.top_left";
1924 visible: 0;
1925 }
1926 description { state: "fading" 0.0;
1927 inherit: "default" 0.0;
1928 color: 255 0 0 255;
1929 visible: 1;
1930 }
1931 description { state: "fading" 1.0;
1932 inherit: "fading" 0.0;
1933 color: 255 0 0 64;
1934 rel1.offset: -5 0;
1935 }
1936 }
1937 part { name: "zone.top_left"; type: RECT;
1938 description { state: "default" 0.0;
1939 rel1.to: "cursor.top_left";
1940 rel1.offset: -15 0;
1941 rel2.to: "cursor.top_left";
1942 rel2.offset: 15 0;
1943 color: 0 0 0 0;
1944 }
1945 program { name: "top_left.blink";
1946 signal: "mouse,in";
1947 source: "zone.top_left";
1948 action: STATE_SET "fading" 0.0;
1949 target: "cursor_blink.top_left";
1950 after: "top_left.fade";
1951 }
1952 program { name: "top_left.fade";
1953 action: STATE_SET "fading" 1.0;
1954 transition: LINEAR 0.3;
1955 target: "cursor_blink.top_left";
1956 after: "top_left.blink";
1957 }
1958 program { name: "top_left.stop";
1959 signal: "mouse,out";
1960 source: "zone.top_left";
1961 action: STATE_SET "default" 0.0;
1962 target: "cursor_blink.top_left";
1963 }
1964 }
1965 part { name: "cursor.bottom_right"; type: RECT;
1966 mouse_events: 0;
1967 description { state: "default" 0.0;
1968 rel1.to: "terminology.bottom_right";
1969 rel1.relative: 0.0 0.0;
1970 rel1.offset: -1 0;
1971 rel2.to: "terminology.bottom_right";
1972 rel2.relative: 0.0 1.0;
1973 rel2.offset: -1 -1;
1974 color: 255 0 0 128;
1975 }
1976 }
1977 part { name: "cursor_blink.bottom_right"; type: RECT;
1978 mouse_events: 0;
1979 description { state: "default" 0.0;
1980 rel1.to: "cursor.bottom_right";
1981 rel2.to: "cursor.bottom_right";
1982 visible: 0;
1983 }
1984 description { state: "fading" 0.0;
1985 inherit: "default" 0.0;
1986 color: 255 0 0 255;
1987 visible: 1;
1988 }
1989 description { state: "fading" 1.0;
1990 inherit: "fading" 0.0;
1991 color: 255 0 0 64;
1992 rel2.offset: +5 0;
1993 }
1994 }
1995 part { name: "zone.bottom_right"; type: RECT;
1996 description { state: "default" 0.0;
1997 rel1.to: "cursor.bottom_right";
1998 rel1.offset: -15 0;
1999 rel2.to: "cursor.bottom_right";
2000 rel2.offset: 15 0;
2001 color: 0 0 0 0;
2002 }
2003 program { name: "bottom_right.blink";
2004 signal: "mouse,in";
2005 source: "zone.bottom_right";
2006 action: STATE_SET "fading" 0.0;
2007 target: "cursor_blink.bottom_right";
2008 after: "bottom_right.fade";
2009 }
2010 program { name: "bottom_right.fade";
2011 action: STATE_SET "fading" 1.0;
2012 transition: LINEAR 0.3;
2013 target: "cursor_blink.bottom_right";
2014 after: "bottom_right.blink";
2015 }
2016 program { name: "bottom_right.stop";
2017 signal: "mouse,out";
2018 source: "zone.bottom_right";
2019 action: STATE_SET "default" 0.0;
2020 target: "cursor_blink.bottom_right";
2021 }
2022 }
2023 }
2024 }
2025
2026
2027//////////////////////////////////////////////////////////////////////////////
2028 //// the cursor to show where text is typed
2029 group { name: "terminology/cursor";
2030 images {
2031 image: "cr_fill.png" COMP;
2032 image: "cr_key.png" COMP;
2033 image: "cr_out.png" COMP;
2034 image: "cr_pulse.png" COMP;
2035 }
2036 parts {
2037 part { name: "fill";
2038 mouse_events: 0;
2039 description { state: "default" 0.0;
2040 image.normal: "cr_fill.png";
2041 fill {
2042 size {
2043 relative: 0.0 0.0;
2044 offset: 32 32;
2045 }
2046 }
2047 color: 255 255 255 80;
2048 }
2049 description { state: "focused" 0.0;
2050 inherit: "default" 0.0;
2051 color: 255 255 255 255;
2052 }
2053 }
2054 part { name: "key";
2055 mouse_events: 0;
2056 description { state: "default" 0.0;
2057 rel1 {
2058 to: "outline";
2059 offset: -5 -5;
2060 }
2061 rel2 {
2062 to: "outline";
2063 offset: 4 4;
2064 }
2065 image {
2066 normal: "cr_key.png";
2067 border: 4 4 4 4;
2068 }
2069 color: 255 255 255 0;
2070 }
2071 description { state: "on" 0.0;
2072 inherit: "default" 0.0;
2073 color: 255 255 255 255;
2074 }
2075 description { state: "out" 0.0;
2076 inherit: "default" 0.0;
2077 color: 160 100 255 0;
2078 rel1.offset: -7 -15;
2079 rel2.offset: 6 14;
2080 }
2081 }
2082 part { name: "pulse";
2083 mouse_events: 0;
2084 description { state: "default" 0.0;
2085 rel1 {
2086 to: "outline";
2087 offset: -4 -4;
2088 }
2089 rel2 {
2090 to: "outline";
2091 offset: 3 3;
2092 }
2093 image {
2094 normal: "cr_pulse.png";
2095 border: 4 4 4 4;
2096 }
2097 color: 255 255 255 0;
2098 }
2099 description { state: "on" 0.0;
2100 inherit: "default" 0.0;
2101 color: 255 255 255 255;
2102 }
2103 description { state: "out" 0.0;
2104 inherit: "default" 0.0;
2105 color: 100 160 255 0;
2106 rel1.offset: -8 -8;
2107 rel2.offset: 7 7;
2108 }
2109 }
2110 part { name: "outline";
2111 mouse_events: 0;
2112 description { state: "default" 0.0;
2113 image {
2114 normal: "cr_out.png";
2115 border: 3 3 3 3;
2116 }
2117 color: 255 255 255 80;
2118 }
2119 description { state: "focused" 0.0;
2120 inherit: "default" 0.0;
2121 color: 255 255 255 255;
2122 }
2123 }
2124 programs {
2125 program { name: "focus_in_noblink";
2126 signal: "focus,in,noblink";
2127 source: "terminology";
2128 action: STATE_SET "focused" 0.0;
2129 target: "fill";
2130 target: "outline";
2131 }
2132 program { name: "focus_in";
2133 signal: "focus,in";
2134 source: "terminology";
2135 action: STATE_SET "focused" 0.0;
2136 target: "fill";
2137 target: "outline";
2138 after: "focus2";
2139 after: "pulse";
2140 }
2141 program { name: "focus2";
2142 in: 0.5 0.0;
2143 action: STATE_SET "default" 0.0;
2144 target: "fill";
2145 target: "outline";
2146 after: "focus3";
2147 }
2148 program { name: "focus3";
2149 in: 0.5 0.0;
2150 action: STATE_SET "focused" 0.0;
2151 target: "fill";
2152 target: "outline";
2153 after: "focus2";
2154 after: "pulse";
2155 }
2156 program { name: "pulse";
2157 action: STATE_SET "on" 0.0;
2158 target: "pulse";
2159 after: "pulse2";
2160 }
2161 program { name: "pulse2";
2162 action: STATE_SET "out" 0.0;
2163 transition: DECELERATE 0.4;
2164 target: "pulse";
2165 }
2166 program { name: "focus_out";
2167 signal: "focus,out";
2168 source: "terminology";
2169 action: ACTION_STOP;
2170 target: "focus_in";
2171 target: "focus2";
2172 target: "focus3";
2173 target: "pulse";
2174 target: "pulse2";
2175 after: "focus_out2";
2176 }
2177 program { name: "focus_out2";
2178 action: STATE_SET "default" 0.0;
2179 target: "fill";
2180 target: "outline";
2181 }
2182 program { name: "key";
2183 signal: "key,down";
2184 source: "terminology";
2185 action: STATE_SET "default" 0.0;
2186 target: "key";
2187 after: "key2";
2188 }
2189 program { name: "key2";
2190 action: STATE_SET "on" 0.0;
2191 target: "key";
2192 after: "key3";
2193 }
2194 program { name: "key3";
2195 action: STATE_SET "out" 0.0;
2196 transition: DECELERATE 0.3;
2197 target: "key";
2198 }
2199 }
2200 }
2201 }
2202
2203//////////////////////////////////////////////////////////////////////////////
2204 //// an object overlayd on text that is a link
2205 group { name: "terminology/link";
2206 images {
2207 image: "lk_bottom.png" COMP;
2208 image: "lk_left.png" COMP;
2209 image: "lk_right.png" COMP;
2210 }
2211 parts {
2212 part { name: "bottom";
2213 mouse_events: 0;
2214 description { state: "default" 0.0;
2215 image.normal: "lk_bottom.png";
2216 image.border: 9 9 0 0;
2217 align: 0.5 1.0;
2218 min: 20 8;
2219 rel1.offset: -6 0;
2220 rel1.relative: 0.0 1.0;
2221 rel2.offset: 5 0;
2222 color: 100 200 255 255;
2223 fill.smooth: 0;
2224 }
2225 }
2226 part { name: "l";
2227 mouse_events: 0;
2228 description { state: "default" 0.0;
2229 image.normal: "lk_left.png";
2230 align: 0.0 1.0;
2231 min: 4 4;
2232 rel1.offset: 16 -1;
2233 rel1.relative: 0.0 1.0;
2234 rel2.offset: 16 -1;
2235 rel2.relative: 0.0 1.0;
2236 color: 100 200 255 0;
2237 }
2238 description { state: "out" 0.0;
2239 inherit: "default" 0.0;
2240 min: 16 16;
2241 rel1.offset: -10 -1;
2242 rel2.offset: -10 -1;
2243 color: 180 220 255 255;
2244 }
2245 description { state: "out2" 0.0;
2246 inherit: "default" 0.0;
2247 min: 32 32;
2248 rel1.offset: -26 -1;
2249 rel2.offset: -26 -1;
2250 color: 100 200 255 0;
2251 }
2252 }
2253 part { name: "r";
2254 mouse_events: 0;
2255 description { state: "default" 0.0;
2256 image.normal: "lk_right.png";
2257 align: 1.0 1.0;
2258 min: 4 4;
2259 rel1.offset: -15 0;
2260 rel1.relative: 1.0 1.0;
2261 rel2.offset: -15 0;
2262 rel2.relative: 1.0 1.0;
2263 color: 100 200 255 0;
2264 }
2265 description { state: "out" 0.0;
2266 inherit: "default" 0.0;
2267 min: 16 16;
2268 rel1.offset: 9 -1;
2269 rel2.offset: 9 -1;
2270 color: 180 220 255 255;
2271 }
2272 description { state: "out2" 0.0;
2273 inherit: "default" 0.0;
2274 min: 32 32;
2275 rel1.offset: 25 -1;
2276 rel2.offset: 25 -1;
2277 color: 100 200 255 0;
2278 }
2279 }
2280 part { name: "event"; type: RECT;
2281 mouse_events: 1;
2282 repeat_events: 1;
2283 description { state: "default" 0.0;
2284 color: 0 0 0 0;
2285 }
2286 }
2287 programs {
2288 program { name: "show";
2289 signal: "show";
2290 source: "";
2291 action: STATE_SET "out" 0.0;
2292 transition: LINEAR 0.3;
2293 target: "l";
2294 target: "r";
2295 after: "show2";
2296 }
2297 program { name: "show2";
2298 action: STATE_SET "default" 0.0;
2299 action: STATE_SET "out2" 0.0;
2300 transition: LINEAR 0.3;
2301 target: "l";
2302 target: "r";
2303 after: "show3";
2304 }
2305 program { name: "show3";
2306 action: STATE_SET "default" 0.0;
2307 target: "l";
2308 target: "r";
2309 after: "show";
2310 }
2311 }
2312 }
2313 }
2314
2315//////////////////////////////////////////////////////////////////////////////
2316 //// the multimedia controls
2317 group { name: "terminology/mediabusy";
2318 images {
2319 image: "media_busy_knob.png" COMP;
2320 image: "media_busy_spinner.png" COMP;
2321 image: "media_busy_progress.png" COMP;
2322 }
2323 script {
2324 public message(Msg_Type:type, id, ...) {
2325 if ((type == MSG_FLOAT) && (id == 1)) {
2326 new Float:val;
2327 val = getfarg(2);
2328 // val 0.0 -. 1.0 percentage
2329 custom_state(PART:"progress", "default", 0.0);
2330 set_state_val(PART:"progress", STATE_REL2, val, 1.0);
2331 set_state(PART:"progress", "custom", 0.0);
2332 }
2333 }
2334 }
2335 parts {
2336 part { name: "progress_area"; type: SPACER;
2337 mouse_events: 0;
2338 description { state: "default" 0.0;
2339 fixed: 1 1;
2340 rel2.to_x: "knob";
2341 rel2.relative: 0.0 1.0;
2342 min: 10 40;
2343 max: 99999 40;
2344 align: 0.0 1.0;
2345 }
2346 }
2347 part { name: "progress";
2348 mouse_events: 0;
2349 clip_to: "fade";
2350 description { state: "default" 0.0;
2351 fixed: 1 1;
2352 rel1.to: "progress_area";
2353 rel2.to: "progress_area";
2354 rel2.relative: 0.0 1.0;
2355 color: 100 160 255 255;
2356 image.normal: "media_busy_progress.png";
2357 image.border: 5 5 0 0;
2358 min: 10 40;
2359 align: 0.0 1.0;
2360 }
2361 }
2362 part { name: "fade"; type: RECT;
2363 mouse_events: 0;
2364 description { state: "default" 0.0;
2365 color: 255 255 255 0;
2366 visible: 0;
2367 }
2368 description { state: "visible" 0.0;
2369 inherit: "default" 0.0;
2370 visible: 1;
2371 color: 255 255 255 255;
2372 }
2373 }
2374 part { name: "knob";
2375 clip_to: "fade";
2376 mouse_events: 0;
2377 description { state: "default" 0.0;
2378 fixed: 1 1;
2379 image.normal: "media_busy_knob.png";
2380 min: 40 40;
2381 max: 40 40;
2382 align: 1.0 1.0;
2383 }
2384 }
2385 part { name: "knob_spinner";
2386 clip_to: "fade";
2387 mouse_events: 0;
2388 description { state: "default" 0.0;
2389 fixed: 1 1;
2390 color: 100 160 255 255;
2391 rel1.to: "knob";
2392 rel2.to: "knob";
2393 image.normal: "media_busy_spinner.png";
2394 map {
2395 on: 1;
2396 smooth: 1;
2397 rotation.center: "knob";
2398 }
2399 }
2400 description { state: "spin" 0.0;
2401 inherit: "default" 0.0;
2402 visible: 1;
2403 map.rotation.z: 360;
2404 }
2405 }
2406 }
2407 programs {
2408 program { name: "busy";
2409 signal: "busy";
2410 source: "terminology";
2411 action: STATE_SET "visible" 0.0;
2412 transition: DECELERATE 0.5;
2413 target: "fade";
2414 }
2415 program { name: "spin1";
2416 signal: "busy";
2417 source: "terminology";
2418 action: STATE_SET "spin" 0.0;
2419 transition: LINEAR 0.5;
2420 target: "knob_spinner";
2421 after: "spin2";
2422 }
2423 program { name: "spin2";
2424 action: STATE_SET "default" 0.0;
2425 target: "knob_spinner";
2426 after: "spin1";
2427 }
2428// program { name: "downloading";
2429// signal: "busy";
2430// source: "terminology";
2431// action: STATE_SET "default" 0.0;
2432// }
2433 program { name: "done";
2434 signal: "done";
2435 source: "terminology";
2436 action: STATE_SET "default" 0.0;
2437 transition: DECELERATE 1.5;
2438 target: "fade";
2439 }
2440 }
2441 }
2442//////////////////////////////////////////////////////////////////////////////
2443 //// the multimedia controls
2444 group { name: "terminology/mediactrl";
2445 images {
2446 image: "media_bg.png" COMP;
2447 image: "media_play.png" COMP;
2448 image: "media_stop.png" COMP;
2449 image: "media_pause.png" COMP;
2450 image: "media_line.png" COMP;
2451 image: "media_knob_vol.png" COMP;
2452 image: "media_knob_pos.png" COMP;
2453 }
2454 parts {
2455 part { name: "media_clip"; type: RECT;
2456 mouse_events: 0;
2457 description { state: "default" 0.0;
2458 rel1.to: "media_bg";
2459 rel2.to: "media_bg";
2460 }
2461 }
2462 part { name: "media_bg";
2463 clip_to: "media_clip";
2464 description { state: "default" 0.0;
2465 image.normal: "media_bg.png";
2466 image.border: 11 11 11 11;
2467 min: 24 24;
2468 max: 24 24;
2469 align: 1.0 0.0;
2470 }
2471 description { state: "expanded" 0.0;
2472 inherit: "default" 0.0;
2473 min: 216 24;
2474 max: 216 24;
2475 }
2476 }
2477 part { name: "play";
2478 mouse_events: 1;
2479 repeat_events: 1;
2480 clip_to: "media_clip";
2481 description { state: "default" 0.0;
2482 image.normal: "media_pause.png";
2483 max: 24 24;
2484 align: 1.0 0.0;
2485 }
2486 description { state: "paused" 0.0;
2487 inherit: "default" 0.0;
2488 image.normal: "media_play.png";
2489 }
2490 }
2491 part { name: "stop";
2492 mouse_events: 1;
2493 repeat_events: 1;
2494 clip_to: "media_clip";
2495 description { state: "default" 0.0;
2496 image.normal: "media_stop.png";
2497 max: 24 24;
2498 rel1.to: "play";
2499 rel2.to: "play";
2500 rel1.offset: -16 0;
2501 rel2.offset: -16 0;
2502 }
2503 }
2504 part { name: "posline";
2505 mouse_events: 1;
2506 repeat_events: 1;
2507 clip_to: "media_clip";
2508 description { state: "default" 0.0;
2509 image.normal: "media_line.png";
2510 image.border: 15 15 0 0;
2511 min: 90 14;
2512 max: 90 14;
2513 rel1.to: "stop";
2514 rel2.to: "stop";
2515 rel1.offset: -25 0;
2516 rel2.offset: -90 0;
2517 }
2518 }
2519 part { name: "terminology.posdrag";
2520 mouse_events: 0;
2521 repeat_events: 1;
2522 clip_to: "media_clip";
2523 dragable {
2524 confine: "posline";
2525 x: 1 1 0;
2526 y: 0 0 0;
2527 }
2528 description { state: "default" 0.0;
2529 image.normal: "media_knob_pos.png";
2530 min: 14 14;
2531 max: 14 14;
2532 }
2533 description { state: "muted" 0.0;
2534 visible: 0;
2535 }
2536 }
2537 part { name: "volline";
2538 mouse_events: 1;
2539 repeat_events: 1;
2540 clip_to: "media_clip";
2541 description { state: "default" 0.0;
2542 image.normal: "media_line.png";
2543 image.border: 15 15 0 0;
2544 min: 60 14;
2545 max: 60 14;
2546 rel1 {
2547 to: "posline";
2548 offset: -25 0;
2549 }
2550 rel2 {
2551 to: "posline";
2552 relative: 0.0 1.0;
2553 offset: -60 0;
2554 }
2555 }
2556 }
2557 part { name: "terminology.voldrag"; type: IMAGE;
2558 mouse_events: 0;
2559 repeat_events: 1;
2560 clip_to: "media_clip";
2561 dragable {
2562 confine: "volline";
2563 x: 1 1 0;
2564 y: 0 0 0;
2565 }
2566 description { state: "default" 0.0;
2567 image.normal: "media_knob_vol.png";
2568 min: 14 14;
2569 max: 14 14;
2570 }
2571 description { state: "muted" 0.0;
2572 visible: 0;
2573 }
2574 }
2575 }
2576 programs {
2577 program { name: "media_mouse_in";
2578 signal: "mouse,in";
2579 source: "media_bg";
2580 action: STATE_SET "expanded" 0.0;
2581 transition: SINUSOIDAL 0.4 CURRENT;
2582 target: "media_bg";
2583 }
2584 program { name: "media_mouse_out";
2585 signal: "mouse,out";
2586 source: "media_bg";
2587 action: STATE_SET "default" 0.0;
2588 transition: SINUSOIDAL 0.4 CURRENT;
2589 target: "media_bg";
2590 }
2591 program { name: "media_pause_click";
2592 signal: "mouse,up,*";
2593 source: "play";
2594 filter: "play" "default";
2595 action: SIGNAL_EMIT "pause" "";
2596 }
2597 program { name: "media_play_click";
2598 signal: "mouse,up,1";
2599 source: "play";
2600 filter: "play" "paused";
2601 action: SIGNAL_EMIT "play" "";
2602 }
2603 program { name: "media_stop_click";
2604 signal: "mouse,up,1";
2605 source: "stop";
2606 action: SIGNAL_EMIT "stop" "";
2607 }
2608 program { name: "media_signal_pause";
2609 signal: "pause,set";
2610 source: "terminology";
2611 action: STATE_SET "paused" 0.0;
2612 target: "play";
2613 }
2614 program { name: "media_signal_play";
2615 signal: "play,set";
2616 source: "terminology";
2617 action: STATE_SET "default" 0.0;
2618 target: "play";
2619 }
2620 program { name: "media_signal_mute";
2621 signal: "mute,set";
2622 source: "terminology";
2623 action: STATE_SET "muted" 0.0;
2624 target: "terminology.voldrag";
2625 }
2626 program { name: "media_signal_unmute";
2627 signal: "mute,unset";
2628 source: "terminology";
2629 action: STATE_SET "default" 0.0;
2630 target: "terminology.voldrag";
2631 }
2632 program { name: "media_pos_drag_start";
2633 signal: "mouse,down,1"; source: "posline";
2634 filter: "terminology.posdrag" "default";
2635 script {
2636 new x, y, w, h, m_x, m_y;
2637 new Float:pos;
2638
2639 get_geometry(PART:"posline", x, y, w, h);
2640 get_mouse(m_x, m_y);
2641 pos = m_x - x;
2642 pos = pos / w;
2643 set_drag(PART:"terminology.posdrag", pos, 0.0);
2644 emit("pos,drag,start", "");
2645
2646 }
2647 }
2648 program { name: "media_pos_drag_stop";
2649 signal: "mouse,up,1"; source: "posline";
2650 action: SIGNAL_EMIT "pos,drag,stop" "";
2651 }
2652 program { name: "media_pos_drag";
2653 signal: "mouse,move"; source: "posline";
2654 script {
2655 new x, y, w, h, m_x, m_y;
2656 new Float:pos;
2657
2658 if (!get_mouse_buttons()) return;
2659
2660 get_geometry(PART:"posline", x, y, w, h);
2661 get_mouse(m_x, m_y);
2662 pos = m_x - x;
2663 pos = pos / w;
2664 set_drag(PART:"terminology.posdrag", pos, 0.0);
2665 emit("pos,drag", "");
2666 }
2667 }
2668 program { name: "media_vol_drag_start";
2669 signal: "mouse,down,1"; source: "volline";
2670 filter: "terminology.voldrag" "default";
2671 script {
2672 new x, y, w, h, m_x, m_y;
2673 new Float:pos;
2674
2675 get_geometry(PART:"volline", x, y, w, h);
2676 get_mouse(m_x, m_y);
2677 pos = m_x - x;
2678 pos = pos / w;
2679 set_drag(PART:"terminology.voldrag", pos, 0.0);
2680 emit("vol,drag", "");
2681
2682 }
2683 }
2684 program { name: "media_vol_drag";
2685 signal: "mouse,move"; source: "volline";
2686 script {
2687 new x, y, w, h, m_x, m_y;
2688 new Float:pos;
2689
2690 if (!get_mouse_buttons()) return;
2691
2692 get_geometry(PART:"volline", x, y, w, h);
2693 get_mouse(m_x, m_y);
2694 pos = m_x - x;
2695 pos = pos / w;
2696 set_drag(PART:"terminology.voldrag", pos, 0.0);
2697 emit("vol,drag", "");
2698 }
2699 }
2700 }
2701 }
2702
2703//////////////////////////////////////////////////////////////////////////////
2704 //// the about box content image
2705 group { name: "terminology/about";
2706 images {
2707 image: "ab_base.png" COMP;
2708 image: "ab_shell.png" COMP;
2709 }
2710 styles {
2711 style { name: "aboutstyle";
2712 base: "font=Sans font_size=8 color=#3f1 style=glow glow2_color=#3f13 glow_color=#3f11 wrap=word";
2713 tag: "b" "+ color=#8f8 glow2_color=#3f15 glow_color=#3f12";
2714 }
2715 }
2716 parts {
2717 part { name: "base";
2718 mouse_events: 0;
2719 description { state: "default" 0.0;
2720 rel1 {
2721 relative: (39/198) (27/198);
2722 to: "shell";
2723 }
2724 rel2 {
2725 relative: (151/198) (115/198);
2726 to: "shell";
2727 }
2728 image.normal: "ab_base.png";
2729 }
2730 }
2731 part { name: "baseclip"; type: RECT;
2732 description { state: "default" 0.0;
2733 color: 255 255 255 255;
2734 rel1.to: "base";
2735 rel2.to: "base";
2736 }
2737 }
2738 part { name: "terminology.text"; type: TEXTBLOCK;
2739 clip_to: "baseclip";
2740 mouse_events: 1;
2741 description { state: "default" 0.0;
2742 fixed: 1 1;
2743 align: 0.5 0.0;
2744 max: 10000 10000;
2745 rel1 {
2746 to: "base";
2747 relative: 0.08 1.0;
2748 }
2749 rel2 {
2750 to: "base";
2751 relative: 0.97 1.0;
2752 }
2753 text {
2754 style: "aboutstyle";
2755 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.";
2756 min: 0 1;
2757 }
2758 }
2759 description { state: "up" 0.0;
2760 inherit: "default" 0.0;
2761 align: 0.5 1.0;
2762 rel1.relative: 0.08 0.0;
2763 rel2.relative: 0.97 0.0;
2764 }
2765 }
2766 part { name: "shell";
2767 description { state: "default" 0.0;
2768 max: 198 198;
2769 aspect: 1.0 1.0;
2770 aspect_preference: BOTH;
2771 image.normal: "ab_shell.png";
2772 }
2773 }
2774 }
2775 programs {
2776 program { name: "begin";
2777 signal: "begin";
2778 source: "terminology";
2779 action: ACTION_STOP;
2780 target: "show";
2781 target: "show2";
2782 after: "begin2";
2783 }
2784 program { name: "begin2";
2785 action: STATE_SET "default" 0.0;
2786 target: "terminology.text";
2787 after: "show";
2788 }
2789 program { name: "show";
2790 action: STATE_SET "up" 0.0;
2791 transition: LINEAR 60.0;
2792 target: "terminology.text";
2793 after: "show2";
2794 }
2795 program { name: "show2";
2796 action: STATE_SET "default" 0.0;
2797 target: "terminology.text";
2798 after: "show";
2799 }
2800 }
2801 }
2802
2803//////////////////////////////////////////////////////////////////////////////
2804 //// used in the font selection dialog to give a base for black text
2805 //// previews so they are always visible
2806 group { name: "terminology/fontpreview";
2807 images {
2808 image: "fn_shadow.png" COMP;
2809 }
2810 parts {
2811 part { name: "shadow";
2812 mouse_events: 0;
2813 description { state: "default" 0.0;
2814 rel1 {
2815 offset: -2 -1;
2816 to: "base";
2817 }
2818 rel2 {
2819 offset: 1 2;
2820 to: "base";
2821 }
2822 image {
2823 normal: "fn_shadow.png";
2824 border: 5 5 5 5;
2825 }
2826 fill.smooth: 0;
2827 }
2828 }
2829 part { name: "base"; type: RECT;
2830 mouse_events: 1;
2831 description { state: "default" 0.0;
2832 color: 255 255 255 255;
2833 rel1.offset: 2 2;
2834 rel2.offset: -3 -3;
2835 }
2836 }
2837 part { name: "clip"; type: RECT;
2838 description { state: "default" 0.0;
2839 rel1.to: "base";
2840 rel2.to: "base";
2841 color: 255 255 255 255;
2842 }
2843 }
2844 part { name: "terminology.text.preview"; type: SWALLOW;
2845 clip_to: "clip";
2846 description { state: "default" 0.0;
2847 rel1 {
2848 to: "base";
2849 offset: 1 1;
2850 }
2851 rel2 {
2852 to: "base";
2853 offset: -2 -2;
2854 }
2855 }
2856 }
2857 }
2858 }
2859}
diff --git a/data/themes/nyanology/nyanology.edc b/data/themes/nyanology/nyanology.edc
index ff6e8d6..f933504 100644
--- a/data/themes/nyanology/nyanology.edc
+++ b/data/themes/nyanology/nyanology.edc
@@ -408,6 +408,30 @@ collections {
408 target: "terminology.tabmissed.label"; 408 target: "terminology.tabmissed.label";
409 } 409 }
410 410
411 ////////////////////////////////////////////////////////////////////
412 // miniview
413 part { name: "terminology.miniview"; type: SWALLOW;
414 description { state: "default" 0.0;
415 //color: 255 255 255 0;
416 visible: 0;
417 }
418 description { state: "on" 0.0;
419 inherit: "default" 0.0;
420 visible: 1;
421 //color: 255 255 255 255;
422 }
423 }
424
425 program {
426 signal: "miniview,off"; source: "terminology";
427 action: STATE_SET "default" 0.0;
428 target: "terminology.miniview";
429 }
430 program {
431 signal: "miniview,on"; source: "terminology";
432 action: STATE_SET "on" 0.0;
433 target: "terminology.miniview";
434 }
411 435
412 //////////////////////////////////////////////////////////////////// 436 ////////////////////////////////////////////////////////////////////
413 // overlayed prettiness 437 // overlayed prettiness