a625f0b05307e69e7b16c8dbdc677e4367593912
[platform/core/uifw/efl-theme-tizen.git] / themes / widgets / progressbar.edc
1 /*
2  * efl-theme-tizen
3  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4  *
5  * Licensed under the Apache License, Version 2.0 (the License);
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an AS IS BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18
19
20 ///////////////////////////////////////////////////////////////////////////////////////
21
22    group { name: "elm/progressbar/horizontal/default";
23       alias: "elm/progressbar/horizontal/list_progress";
24       images {
25          image: "00_progress_bg.png" COMP;
26          image: "00_progress_bar.png" COMP;
27       }
28       parts {
29          part { name: "access";
30             type: RECT;
31             description { state: "default" 0.0;
32                fixed: 1 1;
33                color: 0 0 0 0;
34             }
35          }
36          part { name: "elm.padding.left";
37             type: RECT;
38             scale: 1;
39             description {
40                state: "default" 0.0;
41                min: 0 0;
42                fixed: 1 0;
43                rel1 {
44                   relative: 0.0  0.0;
45                   offset: 0 0;
46                }
47                rel2 {
48                   relative: 0.0  1.0;
49                   offset: 0 0;
50                }
51                visible: 0;
52                align: 0.0 0.0;
53             }
54          }
55          part { name: "elm.padding.right";
56             type: RECT;
57             scale: 1;
58             description {
59                state: "default" 0.0;
60                min: 0 0;
61                fixed: 1 0;
62                rel1 {
63                   relative: 1.0  0.0;
64                   offset: 0 0;
65                }
66                rel2 {
67                   relative: 1.0  1.0;
68                   offset:   0   0;
69                }
70                visible: 0;
71                align: 1.0 0.0;
72             }
73          }
74          part { name: "elm.background.progressbar";
75             type: RECT;
76             mouse_events: 0;
77             scale: 1;
78             description {
79                state: "default" 0.0;
80                rel1 {
81                   to_x: "elm.padding.left";
82                   relative: 1.0 0.0;
83                   offset: 0 0;
84                }
85                rel2 {
86                   to_x: "elm.padding.right";
87                   relative: 0.0 1.0;
88                   offset: 0 0;
89                }
90             }
91          }
92          part { name: "elm.swallow.bar";
93             mouse_events: 0;
94             scale: 1;
95             type: SWALLOW;
96             description {
97                min: 1 PROGRESSBAR_LIST_PROGRESS_HEIGHT_INC;
98                max: 99999 PROGRESSBAR_LIST_PROGRESS_HEIGHT_INC;
99                state: "default" 0.0;
100                rel1 {
101                   to: "elm.background.progressbar";
102                   relative: 0.0 0.0;
103                }
104                rel2 {
105                   to: "elm.background.progressbar";
106                   relative: 1.0 1.0;
107                }
108             }
109          }
110          part { name: "elm.swallow.content";
111             type: SWALLOW;
112             scale: 1;
113             description { state: "default" 0.0;
114                visible: 0;
115                align: 0.0 0.5;
116                rel1 {
117                   offset: 0 0;
118                   to_y: "elm.background.progressbar";
119                }
120                rel2 {
121                   offset: 0 -1;
122                   relative: 0.0 1.0;
123                   to_y: "elm.background.progressbar";
124                }
125             }
126             description { state: "visible" 0.0;
127                inherit: "default" 0.0;
128                visible: 1;
129                aspect: 1.0 1.0;
130                aspect_preference: VERTICAL;
131                rel2.offset: 4 -1;
132             }
133          }
134          part { name: "elm.text";
135             type: TEXT;
136             mouse_events: 0;
137             scale: 1;
138             description { state: "default" 0.0;
139                visible: 0;
140                fixed: 1 1;
141                align: 0.0 0.5;
142                rel1.to_x: "elm.swallow.content";
143                rel1.relative: 1.0 0.0;
144                rel2.to_x: "elm.swallow.content";
145                rel2.relative: 1.0 1.0;
146                color: PROGRESSBAR_LIST_PROGRESS_STYLE_TEXT_COLOR_INC;
147                text {
148                   font: "Tizen:style=Medium";
149                   size: PROGRESSBAR_STATUS_TEXT_FONT_SIZE_INC;
150                   min: 0 0;
151                   align: 0.0 0.5;
152                   text_class: "tizen";
153                }
154             }
155             description { state: "visible" 0.0;
156                inherit: "default" 0.0;
157                visible: 0;
158                text.min: 1 1;
159             }
160          }
161          part { name: "background";
162             mouse_events: 0;
163             scale: 1;
164             clip_to: "elm.background.progressbar";
165             description {
166                state: "default" 0.0;
167                rel1 {
168                   to: "elm.swallow.bar";
169                   relative: 0.0 0.0;
170                }
171                rel2 {
172                   to: "elm.swallow.bar";
173                   relative: 1.0 1.0;
174                }
175                image {
176                   normal: "00_progress_bg.png";
177                   border: PROGRESS_BG_IMAGE_BORDER_INC;
178                   border_scale: 1;
179                }
180             }
181          }
182          part { name: "elm.text.status";
183             type: TEXT;
184             mouse_events: 0;
185             scale: 1;
186             description { state: "default" 0.0;
187                fixed: 1 1;
188                visible: 0;
189                rel1 {
190                   to: "background";
191                   relative: 0.5 0.5;
192                }
193                rel2 {
194                   to: "background";
195                   relative: 0.5 0.5;
196                }
197                text {
198                   font: "Tizen:style=Medium";
199                   size: PROGRESSBAR_STATUS_TEXT_FONT_SIZE_INC;
200                   min: 0 0;
201                   align: 0.5 0.0;
202                   text_class: "tizen";
203                }
204                color: PROGRESSBAR_LIST_PROGRESS_STYLE_TEXT_COLOR_INC;
205             }
206             description { state: "show" 0.0;
207                inherit: "default" 0.0;
208                visible: 0;
209                text.min: 1 1;
210             }
211          }
212          part {
213             name: "bar.image.left.padding";
214             type: RECT;
215             scale: 1;
216             description {
217                state: "default" 0.0;
218                visible: 0;
219                min: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
220                max: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
221                fixed: 1 0;
222                rel1.to: "elm.swallow.bar";
223                rel2 {
224                   relative: 0.0  1.0;
225                   to: "elm.swallow.bar";
226                }
227                align: 0.0 0.5;
228             }
229          }
230          part {
231             name: "bar.image.right.padding";
232             type: RECT;
233             scale: 1;
234             description {
235                state: "default" 0.0;
236                visible: 0;
237                min: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
238                max: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
239                fixed: 1 0;
240                rel1 {
241                   relative: 1.0  0.0;
242                   to: "elm.swallow.bar";
243                }
244                rel2.to: "elm.swallow.bar";
245                align: 1.0 0.5;
246             }
247          }
248          part { name: "drag.background";
249             mouse_events: 0;
250             type: RECT;
251             scale: 1;
252             clip_to: "elm.background.progressbar";
253             description {
254                state: "default" 0.0;
255                visible: 0;
256                rel1 {
257                   to_x: "bar.image.left.padding";
258                   to_y: "elm.swallow.bar";
259                   relative: 1.0 0.0;
260                }
261                rel2 {
262                   to_x: "bar.image.right.padding";
263                   to_y: "elm.swallow.bar";
264                   relative: 0.0 1.0;
265                }
266             }
267          }
268          part { name: "elm.progress.progressbar";
269             mouse_events: 0;
270             scale: 1;
271             clip_to: "elm.background.progressbar";
272             description {
273                state: "default" 0.0;
274                min: 0 0;
275                fixed: 1 1;
276                rel1 {
277                   to_x: "bar.image.left.padding";
278                   to_y: "elm.swallow.bar";
279                   relative: 1.0 0.0;
280                }
281                rel2 {
282                   to_y: "elm.swallow.bar";
283                   to_x: "elm.cur.progressbar";
284                   offset: -1 -1;
285                }
286                image {
287                   normal: "00_progress_bar.png";
288                   border: PROGRESS_BAR_IMAGE_BORDER_INC;
289                   border_scale: 1;
290                }
291             }
292             description {
293                state: "invert" 0.0;
294                inherit: "default" 0.0;
295                rel1 {
296                   to_y: "elm.swallow.bar";
297                   to_x: "elm.cur.progressbar";
298                }
299                rel2 {
300                   to_y: "elm.swallow.bar";
301                   to_x: "bar.image.right.padding";
302                   relative: 1.0 0.0;
303                }
304             }
305             description {
306                state: "state_begin" 0.0;
307                inherit: "default" 0.0;
308                rel1 {
309                   to: "elm.swallow.bar";
310                   relative: 0.0 0.0;
311                }
312                rel2 {
313                   to: "elm.swallow.bar";
314                   relative: 0.1 1.0;
315                }
316             }
317             description {
318                state: "state_end" 0.0;
319                inherit: "default" 0.0;
320                rel1 {
321                   to: "elm.swallow.bar";
322                   relative: 0.9 0.0;
323                }
324                rel2 {
325                   to: "elm.swallow.bar";
326                   relative: 1.0 1.0;
327                }
328             }
329          }
330          part { name: "text-bar";
331             type: TEXT;
332             mouse_events: 0;
333             scale: 1;
334             clip_to: "progress-rect";
335             //effect: SOFT_SHADOW;
336             scale: 0;
337             description { state: "default" 0.0;
338                align: 0.0 0.0;
339                fixed: 1 1;
340                visible: 0;
341                rel1.to: "elm.text.status";
342                rel1.offset: -1 -1;
343                rel2.to: "elm.text.status";
344                text {
345                   text_source: "elm.text.status";
346                   font: "Tizen:style=Medium";
347                   size: PROGRESSBAR_STATUS_TEXT_FONT_SIZE_INC;
348                   min: 0 0;
349                   align: 0.0 0.0;
350                   text_class: "tizen";
351                }
352                color: PROGRESSBAR_LIST_PROGRESS_STYLE_STATUS_TEXT_COLOR_INC;
353             }
354             description { state: "show" 0.0;
355                inherit: "default" 0.0;
356                visible: 0;
357                text.min: 1 1;
358             }
359          }
360          part { name: "elm.cur.progressbar";
361             mouse_events: 0;
362             scale: 1;
363             dragable {
364                confine: "drag.background";
365                x: 1 1 1;
366                y: 0 0 0;
367             }
368             description { state: "default" 0.0;
369                min: 0 28;
370                fixed: 1 1;
371                visible: 0;
372                rel1.to: "drag.background";
373                rel2.to: "drag.background";
374            }
375          }
376          part { name: "progress-rect";
377             type: RECT;
378             mouse_events: 0;
379             scale: 1;
380             description {
381                state: "default" 0.0;
382                rel1.to: "elm.progress.progressbar";
383                rel2.to: "elm.progress.progressbar";
384             }
385          }
386       }
387       programs {
388          program { name: "label_show";
389             signal: "elm,state,text,visible";
390             source: "elm";
391             action:  STATE_SET "visible" 0.0;
392             target: "elm.text";
393          }
394          program { name: "label_hide";
395             signal: "elm,state,text,hidden";
396             source: "elm";
397             action:  STATE_SET "default" 0.0;
398             target: "elm.text";
399          }
400          program { name: "icon_show";
401             signal: "elm,state,icon,visible";
402             source: "elm";
403             action:  STATE_SET "visible" 0.0;
404             target: "elm.swallow.content";
405          }
406          program { name: "icon_hide";
407             signal: "elm,state,icon,hidden";
408             source: "elm";
409             action:  STATE_SET "default" 0.0;
410             target: "elm.swallow.content";
411          }
412          program { name: "units_show";
413             signal: "elm,state,units,visible";
414             source: "elm";
415             action:  STATE_SET "show" 0.0;
416             target: "text-bar";
417             target: "elm.text.status";
418          }
419          program { name: "units_hide";
420             signal: "elm,state,units,hidden";
421             source: "elm";
422             action:  STATE_SET "default" 0.0;
423             target: "text-bar";
424             target: "elm.text.status";
425          }
426          program { name: "slide_to_end";
427             action:  STATE_SET "state_end" 0.0;
428             transition: LINEAR 0.5;
429             target: "elm.progress.progressbar";
430             after: "slide_to_begin";
431          }
432          program { name: "slide_to_begin";
433             signal: "elm,state,slide,begin";
434             action: STATE_SET "state_begin" 0.0;
435             target: "elm.progress.progressbar";
436             transition: LINEAR 0.5;
437             after: "slide_to_end";
438          }
439          program { name: "start_pulse";
440             signal: "elm,state,pulse,start";
441             source: "elm";
442            // after: "slide_to_end";
443          }
444          program { name: "stop_pulse";
445             signal: "elm,state,pulse,stop";
446             source: "elm";
447             action: ACTION_STOP;
448             target: "slide_to_begin";
449             target: "slide_to_end";
450             target: "start_pulse";
451             //after: "state_pulse";
452          }
453          program { name: "state_pulse";
454             signal: "elm,state,pulse";
455             source: "elm";
456             action: STATE_SET "state_begin" 0.0;
457             target: "elm.progress.progressbar";
458             after: "units_hide";
459          }
460          program { name: "state_fraction";
461             signal: "elm,state,fraction";
462             source: "elm";
463             action: ACTION_STOP;
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";
469          }
470          program { name: "set_invert_on";
471             signal: "elm,state,inverted,on";
472             source: "elm";
473             action:  STATE_SET "invert" 0.0;
474             target: "elm.progress.progressbar";
475          }
476          program { name: "set_invert_off";
477             signal: "elm,state,inverted,off";
478             source: "elm";
479             action:  STATE_SET "default" 0.0;
480             target: "elm.progress.progressbar";
481          }
482       }
483    }
484
485    group { name: "elm/progressbar/horizontal/list_title_progress";
486       images {
487          image: "00_progress_bg.png" COMP;
488          image: "00_progress_bar.png" COMP;
489       }
490       parts {
491          part { name: "access";
492             type: RECT;
493             description { state: "default" 0.0;
494                fixed: 1 1;
495                color: 0 0 0 0;
496             }
497          }
498          part { name: "base";
499             type: RECT;
500             scale: 1;
501             description {
502                state: "default" 0.0;
503                visible: 0;
504                rel1 { relative: 0.0  0.0; }
505                rel2 { relative: 1.0  1.0; }
506                color: 0 0 0 0;
507             }
508          }
509          part { name: "elm.padding.left";
510             type: RECT;
511             scale: 1;
512             description {
513                state: "default" 0.0;
514                min: 0 82;
515                visible: 0;
516                fixed: 1 0;
517                rel1 { relative: 0.0  0.0; to: "base"; }
518                rel2 { relative: 0.0  1.0; to: "base"; }
519                color: 0 0 0 0;
520                align: 0.0 0.0;
521             }
522          }
523          part { name: "elm.padding.right";
524             type: RECT;
525             scale: 1;
526             description {
527                state: "default" 0.0;
528                min: 0 82;
529                visible: 0;
530                fixed: 1 0;
531                rel1 { relative: 1.0  0.0; to: "base"; }
532                rel2 { relative: 1.0  1.0; to: "base"; }
533                color: 0 0 0 0;
534                align: 1.0 0.0;
535             }
536          }
537          part {
538             name: "elm.padding.top";
539             type: RECT;
540             scale: 1;
541             mouse_events: 0;
542             description { state: "default" 0.0;
543                align: 0.0 0.0;
544                min: 100 1;
545                visible: 0;
546                fixed: 0 1;
547                rel1 { relative: 0.0  0.0; to: "base"; }
548                rel2 { relative: 1.0  0.0; to: "base"; }
549                color: 0 0 0 0;
550             }
551          }
552          part {
553             name: "elm.padding.bottom";
554             type: RECT;
555             scale: 1;
556             mouse_events: 0;
557             description { state: "default" 0.0;
558                align: 1.0 1.0;
559                min: 100 1;
560                visible: 0;
561                fixed: 0 1;
562                rel1 { relative: 0.0  1.0; to: "base"; }
563                rel2 { relative: 1.0  1.0; to: "base"; }
564                color: 0 0 0 0;
565             }
566          }
567          part {
568             name: "label_rect";
569             type: RECT;
570             scale: 1;
571             mouse_events: 0;
572             description { state: "default" 0.0;
573                visible: 1;
574                min: 460 56;
575                fixed: 0 1;
576                rel1 { relative: 1.0 1.0; to_x: "elm.padding.left"; to_y: "elm.padding.top"; }
577                rel2 { relative: 0.0 0.0; to_x: "elm.padding.right"; }
578                align: 0.0 0.0;
579                color: 0 0 0 0;
580             }
581          }
582          part { name: "elm.background.progressbar";
583             type: RECT;
584             mouse_events: 0;
585             scale: 1;
586             description {
587                state: "default" 0.0;
588                rel1 {
589                   to_x: "elm.padding.left";
590                   to_y: "label_rect";
591                   relative: 1.0 1.0;
592                   offset: 0 0;
593                }
594                rel2 {
595                   to_x: "elm.padding.right";
596                   relative: 0.0 1.0;
597                   offset: 0 0;
598                }
599             }
600          }
601          part { name: "elm.swallow.bar";
602             mouse_events: 0;
603             scale: 1;
604             type: SWALLOW;
605             description {
606                min: 1 PROGRESSBAR_LIST_PROGRESS_HEIGHT_INC;
607                max: 99999 PROGRESSBAR_LIST_PROGRESS_HEIGHT_INC;
608                state: "default" 0.0;
609                rel1 {
610                   to: "elm.background.progressbar";
611                   relative: 0.0 0.0;
612                }
613                rel2 {
614                   to: "elm.background.progressbar";
615                   relative: 1.0 1.0;
616                }
617             }
618          }
619          part { name: "elm.swallow.content";
620             type: SWALLOW;
621             scale: 1;
622             description { state: "default" 0.0;
623                visible: 0;
624                align: 0.0 0.5;
625                rel1 {
626                   offset: 0 0;
627                   to_y: "elm.background.progressbar";
628                }
629                rel2 {
630                   offset: 0 -1;
631                   relative: 0.0 1.0;
632                   to_y: "elm.background.progressbar";
633                }
634             }
635             description { state: "visible" 0.0;
636                inherit: "default" 0.0;
637                visible: 1;
638                aspect: 1.0 1.0;
639                aspect_preference: VERTICAL;
640                rel2.offset: 4 -1;
641             }
642          }
643          part { name: "elm.text";
644             type: TEXT;
645             mouse_events: 0;
646             scale: 1;
647             description { state: "default" 0.0;
648                visible: 1;
649                fixed: 1 1;
650                align: 0.0 0.5;
651                rel1.to: "label_rect";
652                rel2.to: "label_rect";
653                color: PROGRESSBAR_LIST_PROGRESS_STYLE_TEXT_COLOR_INC;
654                text {
655                   font: "Tizen:style=Medium";
656                   size: PROGRESSBAR_TITLE_FONT_SIZE_INC;
657                   min: 0 0;
658                   align: 0.0 0.5;
659                   text_class: "tizen";
660                }
661             }
662             description { state: "visible" 0.0;
663                inherit: "default" 0.0;
664                visible: 1;
665                text.min: 1 1;
666             }
667          }
668          part { name: "background";
669             mouse_events: 0;
670             scale: 1;
671             clip_to: "elm.background.progressbar";
672             description {
673                state: "default" 0.0;
674                rel1 {
675                   to: "elm.swallow.bar";
676                   relative: 0.0 0.0;
677                }
678                rel2 {
679                   to: "elm.swallow.bar";
680                   relative: 1.0 1.0;
681                }
682                image {
683                   normal: "00_progress_bg.png";
684                   border: PROGRESS_BG_IMAGE_BORDER_INC;
685                   border_scale: 1;
686                }
687             }
688          }
689          part { name: "elm.text.status";
690             type: TEXT;
691             mouse_events: 0;
692             scale: 1;
693             description { state: "default" 0.0;
694                fixed: 1 1;
695                visible: 0;
696                rel1 {
697                   to: "background";
698                   relative: 0.5 0.5;
699                }
700                rel2 {
701                   to: "background";
702                   relative: 0.5 0.5;
703                }
704                text {
705                   font: "Tizen:style=Medium";
706                   size: PROGRESSBAR_TITLE_FONT_SIZE_INC;
707                   min: 0 0;
708                   align: 0.5 0.0;
709                   text_class: "tizen";
710                }
711                color: PROGRESSBAR_LIST_PROGRESS_STYLE_TEXT_COLOR_INC;
712             }
713             description { state: "show" 0.0;
714                inherit: "default" 0.0;
715                visible: 0;
716                text.min: 1 1;
717             }
718          }
719          part {
720             name: "bar.image.left.padding";
721             type: RECT;
722             scale: 1;
723             description {
724                state: "default" 0.0;
725                visible: 0;
726                min: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
727                max: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
728                fixed: 1 0;
729                rel1.to: "elm.swallow.bar";
730                rel2 {
731                   relative: 0.0  1.0;
732                   to: "elm.swallow.bar";
733                }
734                align: 0.0 0.5;
735             }
736          }
737          part {
738             name: "bar.image.right.padding";
739             type: RECT;
740             scale: 1;
741             description {
742                state: "default" 0.0;
743                visible: 0;
744                min: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
745                max: PROGRESS_BAR_IMAGE_PADDING_SIZE_INC;
746                fixed: 1 0;
747                rel1 {
748                   relative: 1.0  0.0;
749                   to: "elm.swallow.bar";
750                }
751                rel2.to: "elm.swallow.bar";
752                align: 1.0 0.5;
753             }
754          }
755          part { name: "drag.background";
756             mouse_events: 0;
757             type: RECT;
758             scale: 1;
759             clip_to: "elm.background.progressbar";
760             description {
761                state: "default" 0.0;
762                visible: 0;
763                rel1 {
764                   to_x: "bar.image.left.padding";
765                   to_y: "elm.swallow.bar";
766                   relative: 1.0 0.0;
767                }
768                rel2 {
769                   to_x: "bar.image.right.padding";
770                   to_y: "elm.swallow.bar";
771                   relative: 0.0 1.0;
772                }
773             }
774          }
775          part { name: "elm.progress.progressbar";
776             mouse_events: 0;
777             scale: 1;
778             clip_to: "elm.background.progressbar";
779             description {
780                state: "default" 0.0;
781                min: 0 0;
782                fixed: 1 1;
783                rel1 {
784                   to_x: "bar.image.left.padding";
785                   to_y: "elm.swallow.bar";
786                   relative: 1.0 0.0;
787                }
788                rel2 {
789                   to_y: "elm.swallow.bar";
790                   to_x: "elm.cur.progressbar";
791                   offset: -1 -1;
792                }
793                image {
794                   normal: "00_progress_bar.png";
795                   border: PROGRESS_BAR_IMAGE_BORDER_INC;
796                   border_scale: 1;
797                }
798             }
799             description {
800                state: "invert" 0.0;
801                inherit: "default" 0.0;
802                rel1 {
803                   to_y: "elm.swallow.bar";
804                   to_x: "elm.cur.progressbar";
805                }
806                rel2 {
807                   to_y: "elm.swallow.bar";
808                   to_x: "bar.image.right.padding";
809                   relative: 1.0 0.0;
810                }
811             }
812             description {
813                state: "state_begin" 0.0;
814                inherit: "default" 0.0;
815                rel1 {
816                   to: "elm.swallow.bar";
817                   relative: 0.0 0.0;
818                }
819                rel2 {
820                   to: "elm.swallow.bar";
821                   relative: 0.1 1.0;
822                }
823             }
824             description {
825                state: "state_end" 0.0;
826                inherit: "default" 0.0;
827                rel1 {
828                   to: "elm.swallow.bar";
829                   relative: 0.9 0.0;
830                }
831                rel2 {
832                   to: "elm.swallow.bar";
833                   relative: 1.0 1.0;
834                }
835             }
836          }
837          part { name: "text-bar";
838             type: TEXT;
839             mouse_events: 0;
840             scale: 1;
841             clip_to: "progress-rect";
842             //effect: SOFT_SHADOW;
843             scale: 0;
844             description { state: "default" 0.0;
845                align: 0.0 0.0;
846                fixed: 1 1;
847                visible: 0;
848                rel1.to: "elm.text.status";
849                rel1.offset: -1 -1;
850                rel2.to: "elm.text.status";
851                text {
852                   text_source: "elm.text.status";
853                   font: "Tizen:style=Medium";
854                   size: PROGRESSBAR_STATUS_TEXT_FONT_SIZE_INC;
855                   min: 0 0;
856                   align: 0.0 0.0;
857                   text_class: "tizen";
858                }
859                color: PROGRESSBAR_LIST_PROGRESS_STYLE_STATUS_TEXT_COLOR_INC;
860             }
861             description { state: "show" 0.0;
862                inherit: "default" 0.0;
863                visible: 0;
864                text.min: 1 1;
865             }
866          }
867          part { name: "elm.cur.progressbar";
868             mouse_events: 0;
869             scale: 1;
870             dragable {
871                confine: "drag.background";
872                x: 1 1 1;
873                y: 0 0 0;
874             }
875             description { state: "default" 0.0;
876                min: 0 28;
877                fixed: 1 1;
878                visible: 0;
879                rel1.to: "drag.background";
880                rel2.to: "drag.background";
881             }
882          }
883          part { name: "progress-rect";
884             type: RECT;
885             mouse_events: 0;
886             scale: 1;
887             description {
888                state: "default" 0.0;
889                rel1.to: "elm.progress.progressbar";
890                rel2.to: "elm.progress.progressbar";
891             }
892          }
893       }
894       programs {
895          program { name: "label_show";
896             signal: "elm,state,text,visible";
897             source: "elm";
898             action:  STATE_SET "visible" 0.0;
899             target: "elm.text";
900          }
901          program { name: "label_hide";
902             signal: "elm,state,text,hidden";
903             source: "elm";
904             action:  STATE_SET "default" 0.0;
905             target: "elm.text";
906          }
907          program { name: "icon_show";
908             signal: "elm,state,icon,visible";
909             source: "elm";
910             action:  STATE_SET "visible" 0.0;
911             target: "elm.swallow.content";
912          }
913          program { name: "icon_hide";
914             signal: "elm,state,icon,hidden";
915             source: "elm";
916             action:  STATE_SET "default" 0.0;
917             target: "elm.swallow.content";
918          }
919          program { name: "units_show";
920             signal: "elm,state,units,visible";
921             source: "elm";
922             action:  STATE_SET "show" 0.0;
923             target: "text-bar";
924             target: "elm.text.status";
925          }
926          program { name: "units_hide";
927             signal: "elm,state,units,hidden";
928             source: "elm";
929             action:  STATE_SET "default" 0.0;
930             target: "text-bar";
931             target: "elm.text.status";
932          }
933          program { name: "slide_to_end";
934             action:  STATE_SET "state_end" 0.0;
935             transition: LINEAR 0.5;
936             target: "elm.progress.progressbar";
937             after: "slide_to_begin";
938          }
939          program { name: "slide_to_begin";
940             signal: "elm,state,slide,begin";
941             action: STATE_SET "state_begin" 0.0;
942             target: "elm.progress.progressbar";
943             transition: LINEAR 0.5;
944             after: "slide_to_end";
945          }
946          program { name: "start_pulse";
947             signal: "elm,state,pulse,start";
948             source: "elm";
949            // after: "slide_to_end";
950          }
951          program { name: "stop_pulse";
952             signal: "elm,state,pulse,stop";
953             source: "elm";
954             action: ACTION_STOP;
955             target: "slide_to_begin";
956             target: "slide_to_end";
957             target: "start_pulse";
958             //after: "state_pulse";
959          }
960          program { name: "state_pulse";
961             signal: "elm,state,pulse";
962             source: "elm";
963             action: STATE_SET "state_begin" 0.0;
964             target: "elm.progress.progressbar";
965             after: "units_hide";
966          }
967          program { name: "state_fraction";
968             signal: "elm,state,fraction";
969             source: "elm";
970             action: ACTION_STOP;
971             target: "slide_to_begin";
972             target: "slide_to_end";
973             target: "start_pulse";
974             action: STATE_SET "default" 0.0;
975             target: "elm.progress.progressbar";
976          }
977          program { name: "set_invert_on";
978             signal: "elm,state,inverted,on";
979             source: "elm";
980             action:  STATE_SET "invert" 0.0;
981             target: "elm.progress.progressbar";
982          }
983          program { name: "set_invert_off";
984             signal: "elm,state,inverted,off";
985             source: "elm";
986             action:  STATE_SET "default" 0.0;
987             target: "elm.progress.progressbar";
988          }
989       }
990    }
991
992    group { name: "elm/progressbar/horizontal/pending_list";
993       images {
994          image: "00_progress_pending_01_bg.png" COMP;
995          image: "00_progress_pending_02_bg.png" COMP;
996       }
997       parts {
998          part { name: "access";
999             type: RECT;
1000             description { state: "default" 0.0;
1001                fixed: 1 1;
1002                color: 0 0 0 0;
1003             }
1004          }
1005          part { name: "elm.background.progressbar";
1006             type: RECT;
1007             mouse_events: 0;
1008             scale: 1;
1009             description {
1010                state: "default" 0.0;
1011                rel1 {
1012                   relative: 0.0 0.0;
1013                   offset: 0 0;
1014                }
1015                rel2 {
1016                   relative: 1.0 1.0;
1017                }
1018             }
1019          }
1020          part { name: "elm.swallow.bar";
1021             mouse_events: 0;
1022             scale: 1;
1023             type: SWALLOW;
1024             description {
1025                min: 1 PROGRESSBAR_LIST_PENDING_HEIGHT_INC;
1026                max: 99999 PROGRESSBAR_LIST_PENDING_HEIGHT_INC;
1027                state: "default" 0.0;
1028                rel1 {
1029                   to: "elm.background.progressbar";
1030                   relative: 0.0 0.0;
1031                }
1032                rel2 {
1033                   to: "elm.background.progressbar";
1034                   relative: 1.0 1.0;
1035                }
1036             }
1037          }
1038          part { name: "elm.progress.progressbar";
1039             mouse_events: 0;
1040             scale: 1;
1041             clip_to: "elm.background.progressbar";
1042             description {
1043                state: "default" 0.0;
1044                min: 0 0;
1045                fixed: 1 1;
1046                rel1 {
1047                   to: "elm.swallow.bar";
1048                   relative: 0.0 0.0;
1049                }
1050                rel2 {
1051                   to: "elm.swallow.bar";
1052                   relative: 1.0 1.0;
1053                   offset: -1 -1;
1054                }
1055                image {
1056                   normal: "00_progress_pending_01_bg.png";
1057                   border: 0 0 0 0;
1058                }
1059             }
1060             description {
1061                state: "state_begin" 0.0;
1062                inherit: "default" 0.0;
1063             }
1064             description {
1065                state: "state_end" 0.0;
1066                inherit: "default" 0.0;
1067                image {
1068                   normal: "00_progress_pending_02_bg.png";
1069                   border: 0 0 0 0;
1070                }
1071             }
1072          }
1073       }
1074       programs {
1075          program { name: "slide_to_end";
1076             action:  STATE_SET "state_end" 0.0;
1077             in: 0.3 0.0;
1078             target: "elm.progress.progressbar";
1079             after: "slide_to_begin";
1080          }
1081          program { name: "slide_to_begin";
1082             signal: "elm,state,slide,begin";
1083             action: STATE_SET "state_begin" 0.0;
1084             target: "elm.progress.progressbar";
1085             in: 0.3 0.0;
1086             after: "slide_to_end";
1087          }
1088          program { name: "start_pulse";
1089             signal: "elm,state,pulse,start";
1090             source: "elm";
1091             after: "slide_to_end";
1092          }
1093          program { name: "stop_pulse";
1094             signal: "elm,state,pulse,stop";
1095             source: "elm";
1096             action: ACTION_STOP;
1097             target: "slide_to_begin";
1098             target: "slide_to_end";
1099             target: "start_pulse";
1100             after: "init_pulse";
1101          }
1102          program { name: "init_pulse";
1103             action: STATE_SET "default" 0.0;
1104             target: "elm.progress.progressbar";
1105          }
1106       }
1107    }
1108
1109 #define PROCESS_IMAGE(COLOR, SIZE, NUM) \
1110    image: ""COLOR"/"SIZE"/00_list_process_"NUM".png" COMP;
1111
1112 #define PROCESS_IMAGES(COLOR, SIZE) \
1113    images { \
1114       PROCESS_IMAGE(COLOR, SIZE, 01) \
1115       PROCESS_IMAGE(COLOR, SIZE, 02) \
1116       PROCESS_IMAGE(COLOR, SIZE, 03) \
1117       PROCESS_IMAGE(COLOR, SIZE, 04) \
1118       PROCESS_IMAGE(COLOR, SIZE, 05) \
1119       PROCESS_IMAGE(COLOR, SIZE, 06) \
1120       PROCESS_IMAGE(COLOR, SIZE, 07) \
1121       PROCESS_IMAGE(COLOR, SIZE, 08) \
1122       PROCESS_IMAGE(COLOR, SIZE, 09) \
1123       PROCESS_IMAGE(COLOR, SIZE, 10) \
1124       PROCESS_IMAGE(COLOR, SIZE, 11) \
1125       PROCESS_IMAGE(COLOR, SIZE, 12) \
1126       PROCESS_IMAGE(COLOR, SIZE, 13) \
1127       PROCESS_IMAGE(COLOR, SIZE, 14) \
1128       PROCESS_IMAGE(COLOR, SIZE, 15) \
1129       PROCESS_IMAGE(COLOR, SIZE, 16) \
1130       PROCESS_IMAGE(COLOR, SIZE, 17) \
1131       PROCESS_IMAGE(COLOR, SIZE, 18) \
1132       PROCESS_IMAGE(COLOR, SIZE, 19) \
1133       PROCESS_IMAGE(COLOR, SIZE, 20) \
1134       PROCESS_IMAGE(COLOR, SIZE, 21) \
1135       PROCESS_IMAGE(COLOR, SIZE, 22) \
1136       PROCESS_IMAGE(COLOR, SIZE, 23) \
1137       PROCESS_IMAGE(COLOR, SIZE, 24) \
1138       PROCESS_IMAGE(COLOR, SIZE, 25) \
1139       PROCESS_IMAGE(COLOR, SIZE, 26) \
1140       PROCESS_IMAGE(COLOR, SIZE, 27) \
1141       PROCESS_IMAGE(COLOR, SIZE, 28) \
1142       PROCESS_IMAGE(COLOR, SIZE, 29) \
1143       PROCESS_IMAGE(COLOR, SIZE, 30) \
1144    }
1145
1146 #define PROGRESS_DESC(COLOR, SIZE, NUM ) \
1147    description { state: "pulse" 0.#NUM; \
1148       inherit: "default" 0.0; \
1149       image { \
1150          normal: ""COLOR"/"SIZE"/00_list_process_"NUM".png"; \
1151       } \
1152    }
1153
1154 #define PROCESS_DESCS(COLOR, SIZE, WIDTH, HEIGHT) \
1155       description { \
1156          state: "default" 0.0; \
1157          min: WIDTH HEIGHT; \
1158          max: WIDTH HEIGHT; \
1159          aspect: 1.0 1.0; \
1160          aspect_preference: BOTH; \
1161          image { \
1162             normal: ""COLOR"/"SIZE"/00_list_process_01.png"; \
1163          } \
1164       } \
1165       description { state: "pulse" 0.0; \
1166          inherit: "default" 0.0; \
1167          image { \
1168             normal: ""COLOR"/"SIZE"/00_list_process_01.png"; \
1169          } \
1170       } \
1171       PROGRESS_DESC(COLOR, SIZE, 01 ) \
1172       PROGRESS_DESC(COLOR, SIZE, 03 ) \
1173       PROGRESS_DESC(COLOR, SIZE, 04 ) \
1174       PROGRESS_DESC(COLOR, SIZE, 05 ) \
1175       PROGRESS_DESC(COLOR, SIZE, 06 ) \
1176       PROGRESS_DESC(COLOR, SIZE, 07 ) \
1177       PROGRESS_DESC(COLOR, SIZE, 08 ) \
1178       PROGRESS_DESC(COLOR, SIZE, 09 ) \
1179       PROGRESS_DESC(COLOR, SIZE, 10 ) \
1180       PROGRESS_DESC(COLOR, SIZE, 11 ) \
1181       PROGRESS_DESC(COLOR, SIZE, 12 ) \
1182       PROGRESS_DESC(COLOR, SIZE, 13 ) \
1183       PROGRESS_DESC(COLOR, SIZE, 14 ) \
1184       PROGRESS_DESC(COLOR, SIZE, 15 ) \
1185       PROGRESS_DESC(COLOR, SIZE, 16 ) \
1186       PROGRESS_DESC(COLOR, SIZE, 17 ) \
1187       PROGRESS_DESC(COLOR, SIZE, 18 ) \
1188       PROGRESS_DESC(COLOR, SIZE, 19 ) \
1189       PROGRESS_DESC(COLOR, SIZE, 20 ) \
1190       PROGRESS_DESC(COLOR, SIZE, 21 ) \
1191       PROGRESS_DESC(COLOR, SIZE, 22 ) \
1192       PROGRESS_DESC(COLOR, SIZE, 23 ) \
1193       PROGRESS_DESC(COLOR, SIZE, 24 ) \
1194       PROGRESS_DESC(COLOR, SIZE, 25 ) \
1195       PROGRESS_DESC(COLOR, SIZE, 26 ) \
1196       PROGRESS_DESC(COLOR, SIZE, 27 ) \
1197       PROGRESS_DESC(COLOR, SIZE, 28 ) \
1198       PROGRESS_DESC(COLOR, SIZE, 29 ) \
1199       PROGRESS_DESC(COLOR, SIZE, 30 )
1200
1201 #define   PROGRESSING_DELAY    0.07
1202
1203    group { name: "elm/progressbar/horizontal/list_process";
1204       alias: "elm/progressbar/horizontal/process";
1205       PROCESS_IMAGES("White", "63x63")
1206       parts {
1207          part { name: "access";
1208             type: RECT;
1209             description { state: "default" 0.0;
1210                fixed: 1 1;
1211                color: 0 0 0 0;
1212             }
1213          }
1214          part { name: "elm.background.progressbar";
1215             mouse_events: 0;
1216             scale: 1;
1217             type: RECT;
1218             description {
1219                state: "default" 0.0;
1220             }
1221          }
1222          part { name: "elm.swallow.bar";
1223             mouse_events: 0;
1224             scale: 1;
1225             type: SWALLOW;
1226             description { state: "default" 0.0;
1227                min: 0 0;
1228                max: 0 0;
1229                visible: 0;
1230             }
1231          }
1232          part { name: "elm.swallow.content";
1233             type: SWALLOW;
1234             scale: 1;
1235             description { state: "default" 0.0;
1236                min: 0 0;
1237                max: 0 0;
1238                visible: 0;
1239             }
1240          }
1241          part { name: "background";
1242             mouse_events: 0;
1243             scale: 1;
1244             clip_to: "elm.background.progressbar";
1245             PROCESS_DESCS("White", "63x63", 63, 63)
1246          }
1247       }
1248       script {
1249          public pulse_state;
1250       }
1251       programs {
1252          program { name: "continue_pulse";
1253             script {
1254                new Float:state;
1255                state = get_float(pulse_state);
1256                set_state(PART:"background", "pulse", state);
1257                state += 0.01;
1258                if( state > 0.30 )
1259                   state = 0.01;
1260                set_float(pulse_state, state);
1261             }
1262                after: "delay";
1263          }
1264          program { name: "delay";
1265             action: STATE_SET "pulse" 0.10;
1266             target: "background";
1267             in: PROGRESSING_DELAY 0.0;
1268             after: "continue_pulse";
1269          }
1270          program { name: "start_pulse";
1271             signal: "elm,state,pulse,start";
1272             source: "elm";
1273             script {
1274                set_float(pulse_state, 0.0);
1275             }
1276             after: "continue_pulse";
1277          }
1278          program { name: "stop_pulse";
1279             signal: "elm,state,pulse,stop";
1280             source: "elm";
1281             action: ACTION_STOP;
1282             target: "continue_pulse";
1283             target: "delay";
1284             target: "start_pulse";
1285             after: "init_pulse";
1286          }
1287          program { name: "init_pulse";
1288             action: STATE_SET "default" 0.0;
1289             target: "background";
1290          }
1291       }
1292    }
1293
1294    group { name: "elm/progressbar/horizontal/process_medium";
1295       PROCESS_IMAGES("White", "54x54")
1296       parts {
1297          part { name: "access";
1298             type: RECT;
1299             description { state: "default" 0.0;
1300                fixed: 1 1;
1301                color: 0 0 0 0;
1302             }
1303          }
1304          part { name: "elm.background.progressbar";
1305             mouse_events: 0;
1306             scale: 1;
1307             type: RECT;
1308             description {
1309                state: "default" 0.0;
1310             }
1311          }
1312          part { name: "elm.swallow.bar";
1313             mouse_events: 0;
1314             scale: 1;
1315             type: SWALLOW;
1316             description { state: "default" 0.0;
1317                min: 0 0;
1318                max: 0 0;
1319                visible: 0;
1320             }
1321          }
1322          part { name: "elm.swallow.content";
1323             type: SWALLOW;
1324             scale: 1;
1325             description { state: "default" 0.0;
1326                min: 0 0;
1327                max: 0 0;
1328                visible: 0;
1329             }
1330          }
1331          part { name: "background";
1332             mouse_events: 0;
1333             scale: 1;
1334             clip_to: "elm.background.progressbar";
1335             PROCESS_DESCS("White", "54x54", 54, 54)
1336          }
1337       }
1338       script {
1339          public pulse_state;
1340       }
1341       programs {
1342          program { name: "continue_pulse";
1343             script {
1344                new Float:state;
1345                state = get_float(pulse_state);
1346                set_state(PART:"background", "pulse", state);
1347                state += 0.01;
1348                if( state > 0.30 )
1349                   state = 0.01;
1350                set_float(pulse_state, state);
1351             }
1352                after: "delay";
1353          }
1354          program { name: "delay";
1355             action: STATE_SET "pulse" 0.10;
1356             target: "background";
1357             in: PROGRESSING_DELAY 0.0;
1358             after: "continue_pulse";
1359          }
1360          program { name: "start_pulse";
1361             signal: "elm,state,pulse,start";
1362             source: "elm";
1363             script {
1364                set_float(pulse_state, 0.0);
1365             }
1366             after: "continue_pulse";
1367          }
1368          program { name: "stop_pulse";
1369             signal: "elm,state,pulse,stop";
1370             source: "elm";
1371             action: ACTION_STOP;
1372             target: "continue_pulse";
1373             target: "delay";
1374             target: "start_pulse";
1375             after: "init_pulse";
1376          }
1377          program { name: "init_pulse";
1378             action: STATE_SET "default" 0.0;
1379             target: "background";
1380          }
1381       }
1382    }
1383
1384    group { name: "elm/progressbar/horizontal/list_process_small";
1385       alias: "elm/progressbar/horizontal/process_small";
1386       PROCESS_IMAGES("White", "36x36")
1387       parts {
1388          part { name: "access";
1389             type: RECT;
1390             description { state: "default" 0.0;
1391                fixed: 1 1;
1392                color: 0 0 0 0;
1393             }
1394          }
1395          part { name: "elm.background.progressbar";
1396             mouse_events: 0;
1397             scale: 1;
1398             type: RECT;
1399             description {
1400                state: "default" 0.0;
1401             }
1402          }
1403          part { name: "elm.swallow.bar";
1404             mouse_events: 0;
1405             scale: 1;
1406             type: SWALLOW;
1407             description { state: "default" 0.0;
1408                min: 0 0;
1409                max: 0 0;
1410                visible: 0;
1411             }
1412          }
1413          part { name: "elm.swallow.content";
1414             type: SWALLOW;
1415             scale: 1;
1416             description { state: "default" 0.0;
1417                min: 0 0;
1418                max: 0 0;
1419                visible: 0;
1420             }
1421          }
1422          part { name: "background";
1423             mouse_events: 0;
1424             scale: 1;
1425             clip_to: "elm.background.progressbar";
1426             PROCESS_DESCS("White", "36x36", 36, 36)
1427          }
1428       }
1429       script {
1430          public pulse_state;
1431       }
1432       programs {
1433          program { name: "continue_pulse";
1434             script {
1435                new Float:state;
1436                state = get_float(pulse_state);
1437                set_state(PART:"background", "pulse", state);
1438                state += 0.01;
1439                if( state > 0.30 )
1440                   state = 0.01;
1441                set_float(pulse_state, state);
1442             }
1443                after: "delay";
1444          }
1445          program { name: "delay";
1446             action: STATE_SET "pulse" 0.10;
1447             target: "background";
1448             in: PROGRESSING_DELAY 0.0;
1449             after: "continue_pulse";
1450          }
1451          program { name: "start_pulse";
1452             signal: "elm,state,pulse,start";
1453             source: "elm";
1454             script {
1455                set_float(pulse_state, 0.0);
1456             }
1457             after: "continue_pulse";
1458          }
1459          program { name: "stop_pulse";
1460             signal: "elm,state,pulse,stop";
1461             source: "elm";
1462             action: ACTION_STOP;
1463             target: "continue_pulse";
1464             target: "delay";
1465             target: "start_pulse";
1466             after: "init_pulse";
1467          }
1468          program { name: "init_pulse";
1469             action: STATE_SET "default" 0.0;
1470             target: "background";
1471          }
1472       }
1473    }
1474
1475 // Black progressbar
1476    group { name: "elm/progressbar/horizontal/list_process_black";
1477       alias: "elm/progressbar/horizontal/process_black";
1478       PROCESS_IMAGES("Black", "63x63")
1479       parts {
1480          part { name: "access";
1481             type: RECT;
1482             description { state: "default" 0.0;
1483                fixed: 1 1;
1484                color: 0 0 0 0;
1485             }
1486          }
1487          part { name: "elm.background.progressbar";
1488             mouse_events: 0;
1489             scale: 1;
1490             type: RECT;
1491             description {
1492                state: "default" 0.0;
1493             }
1494          }
1495          part { name: "elm.swallow.bar";
1496             mouse_events: 0;
1497             scale: 1;
1498             type: SWALLOW;
1499             description { state: "default" 0.0;
1500                min: 0 0;
1501                max: 0 0;
1502                visible: 0;
1503             }
1504          }
1505          part { name: "elm.swallow.content";
1506             type: SWALLOW;
1507             scale: 1;
1508             description { state: "default" 0.0;
1509                min: 0 0;
1510                max: 0 0;
1511                visible: 0;
1512             }
1513          }
1514          part { name: "background";
1515             mouse_events: 0;
1516             scale: 1;
1517             clip_to: "elm.background.progressbar";
1518             PROCESS_DESCS("Black", "63x63", 63, 63)
1519          }
1520       }
1521       script {
1522          public pulse_state;
1523       }
1524       programs {
1525          program { name: "continue_pulse";
1526             script {
1527                new Float:state;
1528                state = get_float(pulse_state);
1529                set_state(PART:"background", "pulse", state);
1530                state += 0.01;
1531                if( state > 0.30 )
1532                   state = 0.01;
1533                set_float(pulse_state, state);
1534             }
1535                after: "delay";
1536          }
1537          program { name: "delay";
1538             action: STATE_SET "pulse" 0.10;
1539             target: "background";
1540             in: PROGRESSING_DELAY 0.0;
1541             after: "continue_pulse";
1542          }
1543          program { name: "start_pulse";
1544             signal: "elm,state,pulse,start";
1545             source: "elm";
1546             script {
1547                set_float(pulse_state, 0.0);
1548             }
1549             after: "continue_pulse";
1550          }
1551          program { name: "stop_pulse";
1552             signal: "elm,state,pulse,stop";
1553             source: "elm";
1554             action: ACTION_STOP;
1555             target: "continue_pulse";
1556             target: "delay";
1557             target: "start_pulse";
1558             after: "init_pulse";
1559          }
1560          program { name: "init_pulse";
1561             action: STATE_SET "default" 0.0;
1562             target: "background";
1563          }
1564       }
1565    }
1566
1567    group { name: "elm/progressbar/horizontal/process_medium_black";
1568       PROCESS_IMAGES("Black", "54x54")
1569       parts {
1570          part { name: "access";
1571             type: RECT;
1572             description { state: "default" 0.0;
1573                fixed: 1 1;
1574                color: 0 0 0 0;
1575             }
1576          }
1577          part { name: "elm.background.progressbar";
1578             mouse_events: 0;
1579             scale: 1;
1580             type: RECT;
1581             description {
1582                state: "default" 0.0;
1583             }
1584          }
1585          part { name: "elm.swallow.bar";
1586             mouse_events: 0;
1587             scale: 1;
1588             type: SWALLOW;
1589             description { state: "default" 0.0;
1590                min: 0 0;
1591                max: 0 0;
1592                visible: 0;
1593             }
1594          }
1595          part { name: "elm.swallow.content";
1596             type: SWALLOW;
1597             scale: 1;
1598             description { state: "default" 0.0;
1599                min: 0 0;
1600                max: 0 0;
1601                visible: 0;
1602             }
1603          }
1604          part { name: "background";
1605             mouse_events: 0;
1606             scale: 1;
1607             clip_to: "elm.background.progressbar";
1608             PROCESS_DESCS("Black", "54x54", 54, 54)
1609          }
1610       }
1611       script {
1612          public pulse_state;
1613       }
1614       programs {
1615          program { name: "continue_pulse";
1616             script {
1617                new Float:state;
1618                state = get_float(pulse_state);
1619                set_state(PART:"background", "pulse", state);
1620                state += 0.01;
1621                if( state > 0.30 )
1622                   state = 0.01;
1623                set_float(pulse_state, state);
1624             }
1625                after: "delay";
1626          }
1627          program { name: "delay";
1628             action: STATE_SET "pulse" 0.10;
1629             target: "background";
1630             in: PROGRESSING_DELAY 0.0;
1631             after: "continue_pulse";
1632          }
1633          program { name: "start_pulse";
1634             signal: "elm,state,pulse,start";
1635             source: "elm";
1636             script {
1637                set_float(pulse_state, 0.0);
1638             }
1639             after: "continue_pulse";
1640          }
1641          program { name: "stop_pulse";
1642             signal: "elm,state,pulse,stop";
1643             source: "elm";
1644             action: ACTION_STOP;
1645             target: "continue_pulse";
1646             target: "delay";
1647             target: "start_pulse";
1648             after: "init_pulse";
1649          }
1650          program { name: "init_pulse";
1651             action: STATE_SET "default" 0.0;
1652             target: "background";
1653          }
1654       }
1655    }
1656
1657    group { name: "elm/progressbar/horizontal/list_process_small_black";
1658       alias: "elm/progressbar/horizontal/process_small_black";
1659       PROCESS_IMAGES("Black", "36x36")
1660       parts {
1661          part { name: "access";
1662             type: RECT;
1663             description { state: "default" 0.0;
1664                fixed: 1 1;
1665                color: 0 0 0 0;
1666             }
1667          }
1668          part { name: "elm.background.progressbar";
1669             mouse_events: 0;
1670             scale: 1;
1671             type: RECT;
1672             description {
1673                state: "default" 0.0;
1674             }
1675          }
1676          part { name: "elm.swallow.bar";
1677             mouse_events: 0;
1678             scale: 1;
1679             type: SWALLOW;
1680             description { state: "default" 0.0;
1681                min: 0 0;
1682                max: 0 0;
1683                visible: 0;
1684             }
1685          }
1686          part { name: "elm.swallow.content";
1687             type: SWALLOW;
1688             scale: 1;
1689             description { state: "default" 0.0;
1690                min: 0 0;
1691                max: 0 0;
1692                visible: 0;
1693             }
1694          }
1695          part { name: "background";
1696             mouse_events: 0;
1697             scale: 1;
1698             clip_to: "elm.background.progressbar";
1699             PROCESS_DESCS("Black", "36x36", 36, 36)
1700          }
1701       }
1702       script {
1703          public pulse_state;
1704       }
1705       programs {
1706          program { name: "continue_pulse";
1707             script {
1708                new Float:state;
1709                state = get_float(pulse_state);
1710                set_state(PART:"background", "pulse", state);
1711                state += 0.01;
1712                if( state > 0.30 )
1713                   state = 0.01;
1714                set_float(pulse_state, state);
1715             }
1716                after: "delay";
1717          }
1718          program { name: "delay";
1719             action: STATE_SET "pulse" 0.10;
1720             target: "background";
1721             in: PROGRESSING_DELAY 0.0;
1722             after: "continue_pulse";
1723          }
1724          program { name: "start_pulse";
1725             signal: "elm,state,pulse,start";
1726             source: "elm";
1727             script {
1728                set_float(pulse_state, 0.0);
1729             }
1730             after: "continue_pulse";
1731          }
1732          program { name: "stop_pulse";
1733             signal: "elm,state,pulse,stop";
1734             source: "elm";
1735             action: ACTION_STOP;
1736             target: "continue_pulse";
1737             target: "delay";
1738             target: "start_pulse";
1739             after: "init_pulse";
1740          }
1741          program { name: "init_pulse";
1742             action: STATE_SET "default" 0.0;
1743             target: "background";
1744          }
1745       }
1746    }
1747
1748 #define CIRCLE_PROGRESSING_DELAY       0.03
1749 #define PROGRESS_CIRCLE_TOTAL_STATES   50
1750
1751 #define PROGRESS_CIRCLE_BG_DESC( param_num ) \
1752    description { state: "progress" 0.#param_num; \
1753       inherit: "default" 0.0; \
1754       image { \
1755          normal: "00_progress_circle_bg_"#param_num".png"; \
1756       } \
1757    }
1758
1759    group { name: "elm/progressbar/horizontal/progress_circle";
1760       images {
1761          image: "00_progress_circle_bg.png" COMP;
1762          image: "00_progress_circle_bg_01.png" COMP;
1763          image: "00_progress_circle_bg_02.png" COMP;
1764          image: "00_progress_circle_bg_03.png" COMP;
1765          image: "00_progress_circle_bg_04.png" COMP;
1766          image: "00_progress_circle_bg_05.png" COMP;
1767          image: "00_progress_circle_bg_06.png" COMP;
1768          image: "00_progress_circle_bg_07.png" COMP;
1769          image: "00_progress_circle_bg_08.png" COMP;
1770          image: "00_progress_circle_bg_09.png" COMP;
1771          image: "00_progress_circle_bg_10.png" COMP;
1772          image: "00_progress_circle_bg_11.png" COMP;
1773          image: "00_progress_circle_bg_12.png" COMP;
1774          image: "00_progress_circle_bg_13.png" COMP;
1775          image: "00_progress_circle_bg_14.png" COMP;
1776          image: "00_progress_circle_bg_15.png" COMP;
1777          image: "00_progress_circle_bg_16.png" COMP;
1778          image: "00_progress_circle_bg_17.png" COMP;
1779          image: "00_progress_circle_bg_18.png" COMP;
1780          image: "00_progress_circle_bg_19.png" COMP;
1781          image: "00_progress_circle_bg_20.png" COMP;
1782          image: "00_progress_circle_bg_21.png" COMP;
1783          image: "00_progress_circle_bg_22.png" COMP;
1784          image: "00_progress_circle_bg_23.png" COMP;
1785          image: "00_progress_circle_bg_24.png" COMP;
1786          image: "00_progress_circle_bg_25.png" COMP;
1787          image: "00_progress_circle_bg_26.png" COMP;
1788          image: "00_progress_circle_bg_27.png" COMP;
1789          image: "00_progress_circle_bg_28.png" COMP;
1790          image: "00_progress_circle_bg_29.png" COMP;
1791          image: "00_progress_circle_bg_30.png" COMP;
1792          image: "00_progress_circle_bg_31.png" COMP;
1793          image: "00_progress_circle_bg_32.png" COMP;
1794          image: "00_progress_circle_bg_33.png" COMP;
1795          image: "00_progress_circle_bg_34.png" COMP;
1796          image: "00_progress_circle_bg_35.png" COMP;
1797          image: "00_progress_circle_bg_36.png" COMP;
1798          image: "00_progress_circle_bg_37.png" COMP;
1799          image: "00_progress_circle_bg_38.png" COMP;
1800          image: "00_progress_circle_bg_39.png" COMP;
1801          image: "00_progress_circle_bg_40.png" COMP;
1802          image: "00_progress_circle_bg_41.png" COMP;
1803          image: "00_progress_circle_bg_42.png" COMP;
1804          image: "00_progress_circle_bg_43.png" COMP;
1805          image: "00_progress_circle_bg_44.png" COMP;
1806          image: "00_progress_circle_bg_45.png" COMP;
1807          image: "00_progress_circle_bg_46.png" COMP;
1808          image: "00_progress_circle_bg_47.png" COMP;
1809          image: "00_progress_circle_bg_48.png" COMP;
1810          image: "00_progress_circle_bg_49.png" COMP;
1811          image: "00_progress_circle_bg_50.png" COMP;
1812       }
1813       parts {
1814          part { name: "access";
1815             type: RECT;
1816             description { state: "default" 0.0;
1817                fixed: 1 1;
1818                color: 0 0 0 0;
1819             }
1820          }
1821          part { name: "elm.background.progressbar";
1822             mouse_events: 0;
1823             scale: 1;
1824             type: RECT;
1825             description {
1826                state: "default" 0.0;
1827             }
1828          }
1829          part { name: "elm.swallow.bar";
1830             mouse_events: 0;
1831             scale: 1;
1832             type: SWALLOW;
1833             description { state: "default" 0.0;
1834                min: 0 0;
1835                max: 0 0;
1836                visible: 0;
1837             }
1838          }
1839          part { name: "elm.swallow.content";
1840             type: SWALLOW;
1841             scale: 1;
1842             description { state: "default" 0.0;
1843                min: 0 0;
1844                max: 0 0;
1845                visible: 0;
1846             }
1847          }
1848          part { name: "elm.cur.progressbar";
1849             mouse_events: 0;
1850             scale: 1;
1851             dragable {
1852                confine: "background";
1853                x: 1 1 1;
1854                y: 0 0 0;
1855             }
1856             description { state: "default" 0.0;
1857                min: 1 1;
1858                fixed: 1 1;
1859                visible: 0;
1860                rel1.to: "background";
1861                rel2.to: "background";
1862            }
1863          }
1864          part { name: "background";
1865             mouse_events: 0;
1866             scale: 1;
1867             clip_to: "elm.background.progressbar";
1868             description {
1869                state: "default" 0.0;
1870                min: PROGRESSBAR_PROGRESS_CIRCLE_BG_SIZE_INC;
1871                max: PROGRESSBAR_PROGRESS_CIRCLE_BG_SIZE_INC;
1872                aspect: 1.0 1.0;
1873                aspect_preference: BOTH;
1874                image {
1875                   normal: "00_progress_circle_bg.png";
1876                }
1877             }
1878          }
1879          part { name: "progress_circle_img";
1880             mouse_events: 0;
1881             scale: 1;
1882             clip_to: "elm.background.progressbar";
1883             description {
1884                state: "default" 0.0;
1885                rel1 {
1886                   to: "background";
1887                }
1888                rel2 {
1889                   to: "background";
1890                }
1891                aspect: 1.0 1.0;
1892                aspect_preference: BOTH;
1893                image {
1894                   normal: "00_progress_circle_bg.png";
1895                }
1896             }
1897             description { state: "progress" 0.0;
1898                inherit: "default" 0.0;
1899                image {
1900                   normal: "00_progress_circle_bg.png";
1901                }
1902             }
1903             PROGRESS_CIRCLE_BG_DESC( 01 )
1904             PROGRESS_CIRCLE_BG_DESC( 02 )
1905             PROGRESS_CIRCLE_BG_DESC( 03 )
1906             PROGRESS_CIRCLE_BG_DESC( 04 )
1907             PROGRESS_CIRCLE_BG_DESC( 05 )
1908             PROGRESS_CIRCLE_BG_DESC( 06 )
1909             PROGRESS_CIRCLE_BG_DESC( 07 )
1910             PROGRESS_CIRCLE_BG_DESC( 08 )
1911             PROGRESS_CIRCLE_BG_DESC( 09 )
1912             PROGRESS_CIRCLE_BG_DESC( 10 )
1913             PROGRESS_CIRCLE_BG_DESC( 11 )
1914             PROGRESS_CIRCLE_BG_DESC( 12 )
1915             PROGRESS_CIRCLE_BG_DESC( 13 )
1916             PROGRESS_CIRCLE_BG_DESC( 14 )
1917             PROGRESS_CIRCLE_BG_DESC( 15 )
1918             PROGRESS_CIRCLE_BG_DESC( 16 )
1919             PROGRESS_CIRCLE_BG_DESC( 17 )
1920             PROGRESS_CIRCLE_BG_DESC( 18 )
1921             PROGRESS_CIRCLE_BG_DESC( 19 )
1922             PROGRESS_CIRCLE_BG_DESC( 20 )
1923             PROGRESS_CIRCLE_BG_DESC( 21 )
1924             PROGRESS_CIRCLE_BG_DESC( 22 )
1925             PROGRESS_CIRCLE_BG_DESC( 23 )
1926             PROGRESS_CIRCLE_BG_DESC( 24 )
1927             PROGRESS_CIRCLE_BG_DESC( 25 )
1928             PROGRESS_CIRCLE_BG_DESC( 26 )
1929             PROGRESS_CIRCLE_BG_DESC( 27 )
1930             PROGRESS_CIRCLE_BG_DESC( 28 )
1931             PROGRESS_CIRCLE_BG_DESC( 29 )
1932             PROGRESS_CIRCLE_BG_DESC( 30 )
1933             PROGRESS_CIRCLE_BG_DESC( 31 )
1934             PROGRESS_CIRCLE_BG_DESC( 32 )
1935             PROGRESS_CIRCLE_BG_DESC( 33 )
1936             PROGRESS_CIRCLE_BG_DESC( 34 )
1937             PROGRESS_CIRCLE_BG_DESC( 35 )
1938             PROGRESS_CIRCLE_BG_DESC( 36 )
1939             PROGRESS_CIRCLE_BG_DESC( 37 )
1940             PROGRESS_CIRCLE_BG_DESC( 38 )
1941             PROGRESS_CIRCLE_BG_DESC( 39 )
1942             PROGRESS_CIRCLE_BG_DESC( 40 )
1943             PROGRESS_CIRCLE_BG_DESC( 41 )
1944             PROGRESS_CIRCLE_BG_DESC( 42 )
1945             PROGRESS_CIRCLE_BG_DESC( 43 )
1946             PROGRESS_CIRCLE_BG_DESC( 44 )
1947             PROGRESS_CIRCLE_BG_DESC( 45 )
1948             PROGRESS_CIRCLE_BG_DESC( 46 )
1949             PROGRESS_CIRCLE_BG_DESC( 47 )
1950             PROGRESS_CIRCLE_BG_DESC( 48 )
1951             PROGRESS_CIRCLE_BG_DESC( 49 )
1952             PROGRESS_CIRCLE_BG_DESC( 50 )
1953          }
1954       }
1955       programs {
1956          script {
1957             public curr_state = 0;
1958             public final_state = 0;
1959             public prev_state = 0;
1960             public max_state = 0;    // maximum possible state, a normalized value
1961             public circle_zero_cross = 0;   // whether circle crosses its Zero state or not.
1962
1963             public progress_circle_state_change(){
1964             new Float:x, Float:y, Float:final, Float:max;
1965             max = PROGRESS_CIRCLE_TOTAL_STATES / 100.0;
1966             set_float(max_state, max);
1967             get_drag(PART:"elm.cur.progressbar", x, y);
1968             final = x * max;   // calculate final state as per the set drag value
1969             set_float(final_state, final);
1970             if( final < get_float(prev_state) )
1971                set_int(circle_zero_cross, 1);  // high value to low value, crosses zero state.
1972             else
1973                set_int(circle_zero_cross, 0);  // low value to high value, no need for zero state crossing.
1974             }
1975          }
1976          program { name: "circle_progress";
1977             script {
1978                new Float:curr, Float:final, Float:max;
1979                new zero_cross;
1980                zero_cross = get_int(circle_zero_cross);
1981                max = get_float(max_state);
1982                curr = get_float(curr_state);
1983                set_state(PART:"progress_circle_img", "progress", curr);
1984                curr += 0.01;   // for next immediate state.
1985                if( (curr > max) && (zero_cross == 1) )
1986                {
1987                   curr = 0.00;   // once it crosses Zero state, reset its state.
1988                   set_int(circle_zero_cross, 0);
1989                }
1990                else if( curr > max ) return;
1991
1992                final = get_float(final_state);
1993                zero_cross = get_int(circle_zero_cross);
1994                if( (curr > final) && (zero_cross == 0) )
1995                {
1996                   set_float(prev_state, get_float(curr_state));
1997                   return;
1998                }
1999                set_float(curr_state, curr);
2000             }
2001             after: "delay";
2002          }
2003          program { name: "delay";
2004             action: STATE_SET "progress" 0.10;
2005             target: "progress_circle_img";
2006             in: CIRCLE_PROGRESSING_DELAY 0.0;
2007             after: "circle_progress";
2008          }
2009          program { name: "circle_start";
2010             signal: "elm,state,pulse,start";
2011             source: "elm";
2012             script {
2013                set_float(curr_state, 0.0);
2014             }
2015             after: "circle_progress";
2016          }
2017          program { name: "circle_stop";
2018             signal: "elm,state,pulse,stop";
2019             source: "elm";
2020             action: ACTION_STOP;
2021             target: "circle_progress";
2022             target: "delay";
2023             target: "circle_start";
2024          }
2025          program { name: "circle_state_change";
2026             signal: "elm,state,change";
2027             source: "elm";
2028             script {
2029                progress_circle_state_change()
2030             }
2031             after: "circle_progress";
2032          }
2033       }
2034    }