2 * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved
4 * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are met:
9 * 1. Redistributions of source code must retain the above copyright notice, this
10 * list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright notice,
12 * this list of conditions and the following disclaimer in the documentation
13 * and/or other materials provided with the distribution.
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
16 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
19 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 #define ADD_PULSE_PARTS PULSE_PART(1,0) PULSE_PART(2,1) \
28 PULSE_PART(3,2) PULSE_PART(4,3) PULSE_PART(5,4) PULSE_PART(6,5) PULSE_PART(7,6) PULSE_PART(8,7) PULSE_PART(9,8) PULSE_PART(10,9) \
29 PULSE_PART(11,10) PULSE_PART(12,11) PULSE_PART(13,12) PULSE_PART(14,13) PULSE_PART(15,14) PULSE_PART(16,15) PULSE_PART(17,16) PULSE_PART(18,17) \
30 PULSE_PART(19,18) PULSE_PART(20,19) PULSE_PART(21,20) PULSE_PART(22,21) PULSE_PART(23,22) PULSE_PART(24,23) PULSE_PART(25,24) PULSE_PART(26,25) \
31 PULSE_PART(27,26) PULSE_PART(28,27) PULSE_PART(29,28) PULSE_PART(30,29) PULSE_PART(31,30) PULSE_PART(32,31) PULSE_PART(33,32) PULSE_PART(34,33) \
32 PULSE_PART(35,34) PULSE_PART(36,35) PULSE_PART(37,36) PULSE_PART(38,37) PULSE_PART(39,38) PULSE_PART(40,39) PULSE_PART(41,40) PULSE_PART(42,41) \
33 PULSE_PART(43,42) PULSE_PART(44,43) PULSE_PART(45,44) PULSE_PART(46,45) PULSE_PART(47,46) PULSE_PART(48,47) PULSE_PART(49,48) PULSE_PART(50,49) \
34 PULSE_PART(51,50) PULSE_PART(52,51) PULSE_PART(53,52) PULSE_PART(54,53) PULSE_PART(55,54) PULSE_PART(56,55) PULSE_PART(57,56) PULSE_PART(58,57) \
35 PULSE_PART(59,58) PULSE_PART(60,59) PULSE_PART(61,60) PULSE_PART(62,61) PULSE_PART(63,62) PULSE_PART(64,63) PULSE_PART(65,64) PULSE_PART(66,65) \
36 PULSE_PART(67,66) PULSE_PART(68,67) PULSE_PART(69,68) PULSE_PART(70,69) PULSE_PART(71,70) PULSE_PART(72,71) PULSE_PART(73,72) PULSE_PART(74,73) \
37 PULSE_PART(75,74) PULSE_PART(76,75) PULSE_PART(77,76) PULSE_PART(78,77) PULSE_PART(79,78) PULSE_PART(80,79) PULSE_PART(81,80) PULSE_PART(82,81) \
38 PULSE_PART(83,82) PULSE_PART(84,83) PULSE_PART(85,84) PULSE_PART(86,85) PULSE_PART(87,86) PULSE_PART(88,87) PULSE_PART(89,88) PULSE_PART(90,89) \
39 PULSE_PART(91,90) PULSE_PART(92,91) PULSE_PART(93,92) PULSE_PART(94,93) PULSE_PART(95,94) PULSE_PART(96,95) PULSE_PART(97,96) PULSE_PART(98,97) \
40 PULSE_PART(99,98) PULSE_PART(100,99)
42 #define PULSE_PART(i,j) \
43 part { name: "pulse_area_"i"_blank"; type: RECT; mouse_events: 0; \
44 clip_to: "pulse_clipper"; \
45 description { state: "default" 0.0; \
50 to_x: "pulse_area_"j"_filled"; \
51 to_y: "pulse_area_"j"_filled"; \
55 to_x: "pulse_area_"j"_filled"; \
56 to_y: "pulse_area_"j"_filled"; \
60 color: 255 255 255 26; \
63 part { name: "pulse_area_"i"_filled"; type: RECT; mouse_events: 0; \
64 clip_to: "pulse_clipper"; \
65 description { state: "default" 0.0; \
70 to_x: "pulse_area_"i"_blank"; \
71 to_y: "pulse_area_"i"_blank"; \
75 to_x: "pulse_area_"i"_blank"; \
76 to_y: "pulse_area_"i"_blank"; \
80 color: 255 255 255 178; \
85 /*****************************************************************************
86 Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 95,
87 Progessbar filling style, single progress filling,
88 Gray color filling over a trasparent bg
89 ******************************************************************************/
90 group { name: "elm/progressbar/horizontal/default";
92 part { name: "elm.background.progressbar"; type: RECT; mouse_events: 0;
93 description { state: "default" 0.0;
98 part { name: "elm.swallow.bar"; mouse_events: 0; type: SWALLOW;
102 fixed: 1 1;state: "default" 0.0;
105 to_y: "elm.background.progressbar";
107 rel2.to: "elm.background.progressbar";
110 part { name: "elm.swallow.content"; type: SWALLOW;
111 description { state: "default" 0.0;
114 rel1.to_y: "elm.background.progressbar";
117 to_y: "elm.background.progressbar";
120 description { state: "visible" 0.0;
121 inherit: "default" 0.0;
124 aspect_preference: VERTICAL;
127 part { name: "elm.text"; type: TEXT; mouse_events: 0;
129 description { state: "default" 0.0;
133 rel1.to_x: "elm.swallow.content";
134 rel1.relative: 1.0 0.0;
135 rel2.to_x: "elm.swallow.content";
138 font: "Sans,Edje-Vera";
144 description { state: "visible" 0.0;
145 inherit: "default" 0.0;
151 part { name: "background"; type: RECT; mouse_events: 0;
152 clip_to: "elm.background.progressbar";
153 description { state: "default" 0.0;
154 rel1.to: "elm.swallow.bar";
155 rel2.to: "elm.swallow.bar";
156 color: 255 255 255 26;
159 part { name: "elm.text.status"; type: TEXT; mouse_events: 0;
160 description { state: "default" 0.0;
172 font: "Sans:style=Bold,Edje-Vera-Bold";
180 description { state: "hidden" 0.0;
181 inherit: "default" 0.0;
186 part { name: "elm.progress.progressbar"; type: RECT; mouse_events: 0;
187 clip_to: "elm.background.progressbar";
188 description { state: "default" 0.0;
192 rel1.to: "elm.swallow.bar";
194 to_y: "elm.swallow.bar";
195 to_x: "elm.cur.progressbar";
197 color: 255 255 255 178;
199 description { state: "invert" 0.0;
200 inherit: "default" 0.0;
202 to_y: "elm.swallow.bar";
203 to_x: "elm.cur.progressbar";
205 rel2.to: "elm.swallow.bar";
207 description { state: "state_begin" 0.0; //OK
208 inherit: "default" 0.0;
211 rel1.to: "elm.swallow.bar";
213 to: "elm.swallow.bar";
218 description { state: "state_end" 0.0;
219 inherit: "default" 0.0;
232 description { state: "state_end1" 0.0; //OK
233 inherit: "state_begin" 0.0;
235 description { state: "state_begin1" 0.0; //OK
236 inherit: "state_end" 0.0;
239 part { name: "pulse_clipper"; type: RECT; mouse_events: 0;
240 clip_to: "elm.background.progressbar";
241 description { state: "default" 0.0;
243 rel1.to: "elm.background.progressbar";
244 rel2.to: "elm.background.progressbar";
247 description { state: "state_pulse" 0.0; //OK
248 inherit: "default" 0.0;
251 description { state: "state_begin" 0.0; //OK
252 inherit: "default" 0.0;
256 part { name: "pulse_area0"; type: SPACER; mouse_events: 0;
257 description { state: "default" 0.0;
261 rel1.to: "elm.swallow.bar";
263 to_y: "elm.swallow.bar";
264 to_x: "elm.cur.progressbar";
270 part { name: "pulse_area_0_blank"; type: RECT; mouse_events: 0;
271 clip_to: "pulse_clipper";
272 description { state: "default" 0.0;
277 to_x: "elm.progress.progressbar";
278 to_y: "elm.progress.progressbar";
282 to_x: "elm.progress.progressbar";
283 to_y: "elm.progress.progressbar";
287 color: 255 255 255 26;
290 part { name: "pulse_area_0_filled"; type: RECT; mouse_events: 0;
291 clip_to: "pulse_clipper";
292 description { state: "default" 0.0;
297 to_x: "pulse_area_0_blank";
298 to_y: "pulse_area_0_blank";
302 to_x: "pulse_area_0_blank";
303 to_y: "pulse_area_0_blank";
307 color: 255 255 255 178;
311 part { name: "text-bar"; type: TEXT; mouse_events: 0;
312 clip_to: "progress-rect";
315 description { state: "default" 0.0;
319 rel1.to: "elm.text.status";
320 rel2.to: "elm.text.status";
322 text_source: "elm.text.status";
323 font: "Sans:style=Bold,Edje-Vera-Bold";
329 color: 224 224 224 0;
332 description { state: "hidden" 0.0;
333 inherit: "default" 0.0;
338 part { name: "over1"; type: RECT; mouse_events: 0;
339 description { state: "default" 0.0;
340 rel1.to: "elm.progress.progressbar";
341 rel2.to: "elm.progress.progressbar";
342 rel2.relative: 1.0 0.5;
346 part { name: "over2"; type: RECT; mouse_events: 1;
348 description { state: "default" 0.0;
349 rel1.to: "elm.progress.progressbar";
350 rel2.to: "elm.progress.progressbar";
354 part { name: "elm.cur.progressbar"; mouse_events: 0;
356 confine: "background";
360 description { state: "default" 0.0;
365 rel1.to: "background";
366 rel2.to: "background";
369 part { name: "progress-rect"; type: RECT; mouse_events: 0;
370 description { state: "default" 0.0;
371 rel1.to: "elm.progress.progressbar";
372 rel2.to: "elm.progress.progressbar";
375 part { name: "tmp"; type: RECT; mouse_events: 0;
377 description { state: "default" 0.0;
378 rel1.to: "elm.swallow.bar";
379 rel2.to: "elm.swallow.bar";
385 program { name: "label_show";
386 signal: "elm,state,text,visible";
388 action: STATE_SET "visible" 0.0;
391 program { name: "label_hide";
392 signal: "elm,state,text,hidden";
394 action: STATE_SET "default" 0.0;
397 program { name: "icon_show";
398 signal: "elm,state,icon,visible";
400 action: STATE_SET "visible" 0.0;
401 target: "elm.swallow.content";
403 program { name: "icon_hide";
404 signal: "elm,state,icon,hidden";
406 action: STATE_SET "default" 0.0;
407 target: "elm.swallow.content";
409 program { name: "units_show";
410 signal: "elm,state,units,visible";
412 action: STATE_SET "default" 0.0;
414 target: "elm.text.status";
416 program { name: "units_hide";
417 signal: "elm,state,units,hidden";
419 action: STATE_SET "hidden" 0.0;
421 target: "elm.text.status";
423 program { name: "slide_to_end";
424 action: STATE_SET "state_end" 0.0;
425 transition: LINEAR 0.5;
426 target: "elm.progress.progressbar";
427 after: "slide_to_begin";
429 program { name: "slide_to_begin";
430 signal: "elm,state,slide,begin";
431 action: STATE_SET "state_begin" 0.0;
432 target: "elm.progress.progressbar";
433 // transition: LINEAR 0.5;
434 after: "slide_to_end";
436 program { name: "start_pulse";
437 signal: "elm,state,pulse,start";
439 action: STATE_SET "state_pulse" 0.0;
440 target: "pulse_clipper";
441 after: "slide_to_end";
443 program { name: "stop_pulse";
444 signal: "elm,state,pulse,stop";
447 target: "slide_to_begin";
448 target: "slide_to_end";
449 target: "start_pulse";
450 after: "state_pulse";
452 program { name: "state_pulse";
453 signal: "elm,state,pulse";
455 action: STATE_SET "state_begin" 0.0;
456 target: "elm.progress.progressbar";
457 target: "pulse_clipper";
460 program { name: "state_fraction";
461 signal: "elm,state,fraction";
464 target: "slide_to_begin";
465 target: "slide_to_end";
466 target: "start_pulse";
467 action: STATE_SET "default" 0.0;
468 target: "elm.progress.progressbar";
470 program { name: "set_invert_on";
471 signal: "elm,state,inverted,on";
473 action: STATE_SET "invert" 0.0;
474 target: "elm.progress.progressbar";
476 program { name: "set_invert_off";
477 signal: "elm,state,inverted,off";
479 action: STATE_SET "default" 0.0;
480 target: "elm.progress.progressbar";
485 /*****************************************************************************
486 Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 95,
487 Vertical Progessbar filling style, single progress filling,
488 Gray color filling over a trasparent bg
489 ******************************************************************************/
490 group { name: "elm/progressbar/vertical/default";
492 part { name: "elm.background.progressbar"; type: RECT; mouse_events: 0;
493 description { state: "default" 0.0;
496 part { name: "elm.swallow.bar"; type: SWALLOW;
498 description { state: "default" 0.0;
508 to_y: "elm.text.box";
513 part { name: "elm.swallow.content"; type: SWALLOW;
514 description { state: "default" 0.0;
517 rel1.to_x: "elm.swallow.bar";
520 to_x: "elm.swallow.bar";
523 description { state: "visible" 0.0;
524 inherit: "default" 0.0;
527 aspect_preference: HORIZONTAL;
530 part { name: "elm.text"; type: TEXT; mouse_events: 0;
532 description { state: "default" 0.0;
536 rel1.to_y: "elm.swallow.content";
537 rel1.relative: 0.5 1.0;
538 rel2.to_y: "elm.swallow.content";
539 rel2.relative: 0.5 1.0;
542 font: "Sans,Edje-Vera";
548 description { state: "visible" 0.0;
549 inherit: "default" 0.0;
555 part { name: "background"; type: RECT; mouse_events: 0;
556 clip_to: "elm.background.progressbar";
557 description { state: "default" 0.0;
558 rel1.to: "elm.swallow.bar";
559 rel2.to: "elm.swallow.bar";
560 color: 255 255 255 26;
563 part { name: "elm.progress.progressbar"; type: RECT; mouse_events: 0;
564 clip_to: "elm.background.progressbar";
565 description { state: "default" 0.0;
569 rel1.to: "elm.swallow.bar";
571 to_x: "elm.swallow.bar";
572 to_y: "elm.cur.progressbar";
574 color: 255 255 255 178;
576 description { state: "invert" 0.0;
577 inherit: "default" 0.0;
579 to_x: "elm.swallow.bar";
580 to_y: "elm.cur.progressbar";
582 rel2.to: "elm.swallow.bar";
584 description { state: "state_begin" 0.0;
585 inherit: "default" 0.0;
586 rel1.to: "elm.swallow.bar";
588 to: "elm.swallow.bar";
592 description { state: "state_end" 0.0;
593 inherit: "default" 0.0;
595 to: "elm.swallow.bar";
598 rel2.to: "elm.swallow.bar";
601 part { name: "over1"; type: RECT; mouse_events: 0;
602 description { state: "default" 0.0;
603 rel1.to: "elm.progress.progressbar";
604 rel2.to: "elm.progress.progressbar";
605 rel2.relative: 1.0 0.5;
609 part { name: "over2"; type: RECT; mouse_events: 1;
611 description { state: "default" 0.0;
612 rel1.to: "elm.progress.progressbar";
613 rel2.to: "elm.progress.progressbar";
617 part { name: "elm.cur.progressbar"; mouse_events: 0;
619 confine: "background";
623 description { state: "default" 0.0;
628 rel1.to: "background";
629 rel2.to: "background";
632 part { name: "elm.text.box"; mouse_events: 0; type: RECT;
633 description { state: "default" 0.0;
635 rel1.to: "elm.text.status";
636 rel2.to: "elm.text.status";
637 color: 255 255 255 0;
639 description { state: "visible" 0.0;
640 inherit: "default" 0.0;
644 part { name: "elm.text.status"; type: TEXT; mouse_events: 0;
646 description { state: "default" 0.0;
650 rel1.relative: 0.0 1.0;
653 font: "Sans:style=Bold,Edje-Vera-Bold";
659 description { state: "visible" 0.0;
660 inherit: "default" 0.0;
669 program { name: "label_show";
670 signal: "elm,state,text,visible";
672 action: STATE_SET "visible" 0.0;
675 program { name: "label_hide";
676 signal: "elm,state,text,hidden";
678 action: STATE_SET "default" 0.0;
681 program { name: "icon_show";
682 signal: "elm,state,icon,visible";
684 action: STATE_SET "visible" 0.0;
685 target: "elm.swallow.content";
687 program { name: "icon_hide";
688 signal: "elm,state,icon,hidden";
690 action: STATE_SET "default" 0.0;
691 target: "elm.swallow.content";
693 program { name: "units_show";
694 signal: "elm,state,units,visible";
696 action: STATE_SET "visible" 0.0;
697 target: "elm.text.status";
698 target: "elm.text.box";
700 program { name: "units_hide";
701 signal: "elm,state,units,hidden";
703 action: STATE_SET "default" 0.0;
704 target: "elm.text.status";
705 target: "elm.text.box";
707 program { name: "slide_to_end";
708 action: STATE_SET "state_end" 0.0;
709 transition: LINEAR 0.5;
710 target: "elm.progress.progressbar";
711 after: "slide_to_begin";
713 program { name: "slide_to_begin";
714 action: STATE_SET "state_begin" 0.0;
715 target: "elm.progress.progressbar";
716 transition: LINEAR 0.5;
717 after: "slide_to_end";
719 program { name: "start_pulse";
720 signal: "elm,state,pulse,start";
722 action: STATE_SET "state_begin" 0.0;
723 target: "elm.progress.progressbar";
724 after: "slide_to_end";
726 program { name: "stop_pulse";
727 signal: "elm,state,pulse,stop";
730 target: "slide_to_begin";
731 target: "slide_to_end";
732 target: "start_pulse";
733 after: "state_pulse";
735 program { name: "state_pulse";
736 signal: "elm,state,pulse";
738 action: STATE_SET "state_begin" 0.0;
739 target: "elm.progress.progressbar";
742 program { name: "state_fraction";
743 signal: "elm,state,fraction";
746 target: "slide_to_begin";
747 target: "slide_to_end";
748 target: "start_pulse";
749 action: STATE_SET "default" 0.0;
750 target: "elm.progress.progressbar";
752 program { name: "set_invert_on";
753 signal: "elm,state,inverted,on";
755 action: STATE_SET "invert" 0.0;
756 target: "elm.progress.progressbar";
757 target: "elm.cur.progressbar";
759 program { name: "set_invert_off";
760 signal: "elm,state,inverted,off";
762 action: STATE_SET "default" 0.0;
763 target: "elm.progress.progressbar";
764 target: "elm.cur.progressbar";