tizen 2.4 release
[framework/uifw/efl-theme-tizen.git] / mobile / widgets / index.edc
1 /*
2  * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions are met:
8  *
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.
14  *
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.
25  */
26
27    group { name: "elm/index/base/vertical/default";
28       script {
29          public animate = 0;
30       }
31       images {
32          set {
33             name: "core_index_scroll_popup_bg";
34             image {
35                image: SMALL"images/Navigation_elements/core_index_scroll_popup_bg.png" COMP;
36             }
37             image {
38                image: MEDIUM"images/Navigation_elements/core_index_scroll_popup_bg.png" COMP;
39             }
40          }
41       }
42       parts {
43          part { name: "clip";
44             scale: 1;
45             type: RECT;
46             mouse_events:  0;
47             description { state: "default" 0.0;
48                visible:  0;
49                color: 255 255 255 0;
50             }
51             description { state: "active" 0.0;
52                visible:  1;
53                color: 255 255 255 255;
54             }
55          }
56          part { name: "clip2";
57             scale: 1;
58             type: RECT;
59             mouse_events: 0;
60             clip_to: "clip";
61             description { state: "default" 0.0;
62                visible: 0;
63                color: 255 255 255 0;
64             }
65             description { state: "active" 0.0;
66                visible: 1;
67                color: 255 255 255 255;
68             }
69          }
70          part { name: "elm.dragable.index.1";
71             type: SPACER;
72             mouse_events: 0;
73             scale: 1;
74             dragable {
75                x: 0 0 0;
76                y: 1 1 0;
77                confine: "elm.swallow.index.0";
78             }
79             description { state: "default" 0.0;
80                fixed: 1 1;
81                min: INDEX_SCROLL_DRAG_PART_SIZE;
82                rel1 {
83                   relative: 0.0  0.0;
84                   to: "elm.swallow.index.0";
85                }
86                rel2 {
87                   relative: 0.0  1.0;
88                   to: "elm.swallow.index.0";
89                }
90             }
91          }
92          part { name: "index1.top.padding";
93             type: RECT;
94             clip_to: "clip2";
95             scale: 1;
96             description {
97                visible: 0;
98                align: 0.0 1.0;
99                min: 0 INDEX_PADDING_SIZE_INC;
100                fixed: 0 1;
101                color: 255 255 255 255;
102                rel1 {
103                   to: "left.line.index.1";
104                   relative: 0.0 0.0;
105                }
106                rel2 {
107                   to: "elm.swallow.index.1";
108                   relative: 1.0 0.0;
109                }
110             }
111             description { state: "active" 0.0;
112                inherit: "default" 0.0;
113                visible: 1;
114             }
115          }
116          part { name: "index1.bottom.padding";
117             type: RECT;
118             clip_to: "clip2";
119             scale: 1;
120             description {
121                align: 0.0 0.0;
122                visible: 0;
123                min: 0 INDEX_PADDING_SIZE_INC;
124                color: 255 255 255 255;
125                fixed: 0 1;
126                rel1 {
127                   to: "left.line.index.1";
128                   relative: 0.0 1.0;
129                }
130                rel2 {
131                   to: "elm.swallow.index.1";
132                   relative: 1.0 1.0;
133                }
134             }
135             description { state: "active" 0.0;
136                inherit: "default" 0.0;
137                visible: 1;
138             }
139          }
140          part { name: "elm.swallow.index.1";
141             type: SWALLOW;
142             scale: 1;
143             clip_to: "clip2";
144             description { state: "default" 0.0;
145                visible: 0;
146                fixed: 1 1;
147                align: 1.0 0.0;
148                rel1 {
149                   to: "elm.dragable.index.1";
150                   relative: 0.0 0.0;
151                }
152                rel2 {
153                   to: "elm.dragable.index.1";
154                   relative: 0.0 1.0;
155                }
156             }
157             description { state: "active" 0.0;
158                inherit: "default" 0.0;
159                visible: 1;
160             }
161             description { state: "align_bottom" 0.0;
162                inherit: "default" 0.0;
163                visible: 1;
164                align: 1.0 1.0;
165                rel1 {
166                   relative: 0.0 1.0;
167                   to: "elm.swallow.index.0";
168                }
169                rel2 {
170                   relative: 0.0 1.0;
171                   to: "elm.swallow.index.0";
172                }
173             }
174             description { state: "align_top" 0.0;
175                inherit: "default" 0.0;
176                visible: 1;
177                align: 1.0 0.0;
178                rel1 {
179                   relative: 0.0 0.0;
180                   to: "elm.swallow.index.0";
181                }
182                rel2 {
183                   relative: 0.0 0.0;
184                   to: "elm.swallow.index.0";
185                }
186             }
187          }
188          part { name: "left.line.index.1";
189             type: RECT;
190             clip_to: "clip2";
191             scale: 1;
192             description { state: "default" 0.0;
193                align: 0.0 0.0;
194                visible: 0;
195                min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
196                fixed: 1 1;
197                rel1 {
198                   to: "elm.swallow.index.1";
199                   relative: 0.0 0.0;
200                }
201                rel2 {
202                   to: "elm.swallow.index.1";
203                   relative: 0.0 1.0;
204                }
205                color: 61 185 204 77;
206             }
207             description { state: "active" 0.0;
208                inherit: "default" 0.0;
209                visible: 1;
210             }
211          }
212          part { name: "index.top.padding";
213             type: SPACER;
214             scale: 1;
215             description {
216                align: 0.5 0.0;
217                min: 0 INDEX_PADDING_SIZE_INC;
218                fixed: 0 1;
219                rel1 {
220                   to_x: "elm.swallow.index.0";
221                   relative: 0.0 0.0;
222                }
223                rel2 {
224                   to_x: "elm.swallow.index.0";
225                   relative: 1.0 0.0;
226                }
227             }
228          }
229          part { name: "index.bottom.padding";
230             type: SPACER;
231             scale: 1;
232             description {
233                align: 0.5 1.0;
234                min: 0 INDEX_PADDING_SIZE_INC;
235                fixed: 0 1;
236                rel1 {
237                   to_x: "elm.swallow.index.0";
238                   relative: 0.0 1.0;
239                }
240                rel2 {
241                   to_x: "elm.swallow.index.0";
242                   relative: 1.0 1.0;
243                }
244             }
245          }
246          part { name: "bg";
247             type: RECT;
248             clip_to: "clip";
249             scale: 1;
250             description { state: "default" 0.0;
251                rel1.to: "index.top.padding";
252                rel2.to: "index.bottom.padding";
253                color: 255 255 255 255;
254             }
255          }
256          part { name: "left.line";
257             type: RECT;
258             clip_to: "clip";
259             scale: 1;
260             description { state: "default" 0.0;
261                align: 0.0 0.5;
262                min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
263                fixed: 1 1;
264                rel1 {
265                   to: "bg";
266                   relative: 0.0 0.0;
267                }
268                rel2 {
269                   to: "bg";
270                   relative: 0.0 1.0;
271                }
272                color: 61 185 204 77;
273             }
274             description { state: "active" 0.0;
275                inherit: "default" 0.0;
276                color: 61 185 204 77;
277             }
278          }
279          part { name: "elm.swallow.index.0";
280             type: SWALLOW;
281             clip_to: "clip";
282             scale: 1;
283             description { state: "default" 0.0;
284                visible: 1;
285                align: 1.0 0.5;
286                fixed: 1 1;
287                rel1 {
288                   to_y: "index.top.padding";
289                   relative: 1.0 1.0;
290                }
291                rel2 {
292                   to_y: "index.bottom.padding";
293                   relative: 1.0 0.0;
294                }
295                color: 255 255 255 255;
296             }
297          }
298          part { name: "popup_bg";
299             scale: 1;
300             clip_to: "clip2";
301             description { state: "default" 0.0;
302                fixed: 1 1;
303                min: INDEX_SCROLL_POPUP_SIZE;
304                color: 61 185 204 255;
305                image.normal: "core_index_scroll_popup_bg";
306                rel1.to: "text.left.padding";
307                rel2.to_x: "text.right.padding";
308                rel2.to_y: "text.bottom.padding";
309             }
310             description {
311                state: "active" 0.0;
312                inherit: "default" 0.0;
313                min: INDEX_SCROLL_POPUP_ACTIVE_SIZE;
314             }
315          }
316          part {
317             name: "align_prop";
318             type: "SPACER";
319             mouse_events: 0;
320             scale: 1;
321             clip_to: "clip2";
322             description {
323                state: "default" 0.0;
324                min: 1 0;
325                max: 1 -1;
326                fixed: 1 0;
327             }
328          }
329          part {
330             name: "elm.text.1";
331             type: "TEXT";
332             mouse_events: 0;
333             scale: 1;
334             clip_to: "clip2";
335             description {
336                state: "default" 0.0;
337                min: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
338                max: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
339                fixed: 1 1;
340                text {
341                   font: "TizenSans:style=Light";
342                   size: 112;
343                   size_range: 50 112;
344                   fit: 1 0;
345                   min: 0 1;
346                   max: 0 1;
347                }
348                color: 250 250 250 255;
349             }
350             description {
351                state: "active" 0.0;
352                inherit: "default" 0.0;
353                text.align: 0.1 0.5;
354                rel1 {
355                    to: "align_prop";
356                    relative: 1.0 0.0;
357                }
358                rel2.to: "align_prop";
359                align: 0.0 0.5;
360             }
361          }
362          part {
363             name: "elm.text";
364             type: "TEXT";
365             mouse_events: 0;
366             scale: 1;
367             clip_to: "clip2";
368             description {
369                state: "default" 0.0;
370                visible: 0;
371                min: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
372                max: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
373                fixed: 1 1;
374                text {
375                   font: "TizenSans:style=Light";
376                   size: 112;
377                   size_range: 50 112;
378                   fit: 1 0;
379                   min: 0 1;
380                   max: 0 1;
381                }
382                color: 250 250 250 255;
383             }
384             description {
385                state: "active" 0.0;
386                inherit: "default" 0.0;
387                visible: 1;
388                text.align: 0.9 0.5;
389                rel1.to: "align_prop";
390                rel2 {
391                    to: "align_prop";
392                    relative: 0.0 1.0;
393                }
394                align: 1.0 0.5;
395             }
396          }
397          part { name: "text.left.padding";
398             type: SPACER;
399             scale: 1;
400             clip_to: "clip2";
401             description {
402                state: "default" 0.0;
403                min: INDEX_TEXT_LEFT_PADDING_SIZE_INC 0;
404                fixed: 1 0;
405                rel1.to: "elm.text.1";
406                rel2 {
407                   to: "elm.text.1";
408                   relative: 0.0 1.0;
409                }
410             }
411              description {
412                state: "active" 0.0;
413                inherit: "default" 0.0;
414                rel1.to: "elm.text";
415                rel2 {
416                   to: "elm.text";
417                   relative: 0.0 1.0;
418                }
419             }
420          }
421          part { name: "text.right.padding";
422             type: SPACER;
423             scale: 1;
424             clip_to: "clip2";
425             description {
426                state: "default" 0.0;
427                min: INDEX_TEXT_RIGHT_PADDING_SIZE_INC 0;
428                fixed: 1 0;
429                rel1 {
430                   to: "elm.text.1";
431                   relative: 1.0 0.0;
432                }
433                rel2.to: "elm.text.1";
434             }
435          }
436          part { name: "text.bottom.padding";
437             type: SPACER;
438             scale: 1;
439             clip_to: "clip2";
440             description {
441                state: "default" 0.0;
442                min: 0 INDEX_TEXT_BOTTOM_PADDING_SIZE_INC;
443                fixed: 0 1;
444                rel1 {
445                   to: "elm.text.1";
446                   relative: 0.0 1.0;
447                }
448                rel2.to: "elm.text.1";
449             }
450             description {
451                state: "active" 0.0;
452                inherit: "default" 0.0;
453                fixed: 1 1;
454                rel2.to: "elm.text";
455             }
456          }
457          part { name: "elm.swallow.event.0";
458             type: SWALLOW;
459             scale: 1;
460             description { state: "default" 0.0;
461                fixed: 1 1;
462                align: 1.0 0.5;
463                rel1 {
464                   relative: 0.0 0.0;
465                   to: "elm.swallow.index.0";
466                }
467                rel2 {
468                   relative: 1.0 1.0;
469                   to: "elm.swallow.index.0";
470                }
471             }
472          }
473          part { name: "elm.swallow.event.1";
474             type: SWALLOW;
475             scale: 1;
476             description { state: "default" 0.0;
477                align: 1.0 0.5;
478                fixed: 1 1;
479                rel1 {
480                   relative: 0.0 0.0;
481                   to: "elm.swallow.index.1";
482                }
483                rel2 {
484                   relative: 1.0 1.0;
485                   to: "elm.swallow.index.1";
486                }
487             }
488          }
489          part {
490             name: "access";
491             type: RECT;
492             description { state: "default" 0.0;
493                fixed: 1 1;
494                rel1 {
495                   to: "elm.swallow.index.0";
496                   offset: -3 0;
497                }
498                rel2 {
499                   to: "elm.swallow.index.0";
500                }
501                color: 0 0 0 0;
502                visible: 0;
503             }
504             description { state: "active" 0.0;
505                inherit: "default" 0.0;
506                visible: 1;
507             }
508          }
509       }
510       programs {
511          program { name: "drag2";
512             signal: "drag,set";
513             source: "elm.dragable.index.1";
514             script {
515                new Float:dx;
516                new Float:dy;
517                get_drag(PART:"elm.dragable.index.1", dx, dy);
518                custom_state(PART:"elm.dragable.index.1", "default", 0.0);
519                set_state_val(PART:"elm.dragable.index.1", STATE_ALIGNMENT, 0.5, dy);
520             }
521          }
522          program { name: "index0.active";
523             signal: "elm,state,active";
524             source: "elm";
525             action: STATE_SET "active" 0.0;
526             target: "clip";
527          }
528          program { name: "index1.inactive";
529             signal: "elm,state,level,0";
530             source: "elm";
531             action: STATE_SET "default" 0.0;
532             target: "elm.swallow.index.1";
533             target: "elm.text.1";
534             target: "elm.text";
535             target: "left.line.index.1";
536             target: "index1.top.padding";
537             target: "index1.bottom.padding";
538             target: "popup_bg";
539             target: "text.left.padding";
540          }
541          program { name: "index1.active";
542             signal: "elm,state,level,1";
543             source: "elm";
544              script {
545                new x1, x2, y1, y2, w1, w2, h1, h2;
546                new Float:dx;
547                new Float:dy;
548                get_drag(PART:"elm.dragable.index.1", dx, dy);
549                get_geometry(PART:"elm.swallow.index.1", x1, y1, w1, h1);
550                get_geometry(PART:"clip", x2, y2, w2, h2);
551                if ((y1+h1) > (y2+h2)) {
552                   set_state(PART:"elm.swallow.index.1", "align_bottom", 0.0);
553                }
554                else if (dy < 0.02) {
555                   set_state(PART:"elm.swallow.index.1", "align_top", 0.0);
556                }
557                else {
558                   set_state(PART:"elm.swallow.index.1", "active", 0.0);
559                }
560                set_state(PART:"clip2", "active", 0.0);
561                set_state(PART:"left.line.index.1", "active", 0.0);
562                set_state(PART:"index1.top.padding", "active", 0.0);
563                set_state(PART:"index1.bottom.padding", "active", 0.0);
564                set_state(PART:"popup_bg", "active", 0.0);
565                set_state(PART:"text.left.padding", "active", 0.0);
566             }
567          }
568          program { name: "index1.text";
569             signal: "index1.text.enable";
570             source: "";
571             action: STATE_SET "active" 0.0;
572             target: "elm.text.1";
573             target: "elm.text";
574             target: "text.left.padding";
575          }
576          program { name: "index0.hide";
577             signal: "elm,state,inactive";
578             source: "elm";
579             action: STATE_SET "default" 0.0;
580             target: "clip";
581          }
582          program { name: "left.line.active";
583             signal: "mouse,down,1";
584             source: "elm.swallow.event.0";
585             action: STATE_SET "active" 0.0;
586             target: "left.line";
587          }
588          program { name: "left.line.dim";
589             signal: "mouse,up,1";
590             source: "elm.swallow.event.0";
591             action: STATE_SET "default" 0.0;
592             target: "left.line";
593          }
594          program { name: "index.active";
595             signal: "elm,indicator,state,active";
596             source: "elm";
597             script {
598                if (get_int(animate) == 0) {
599                  set_int(animate, 1);
600                  run_program(PROGRAM:"active_effect");
601                }
602                else {
603                  set_state(PART:"clip2", "default", 0.0);
604                  run_program(PROGRAM:"active_effect");
605                }
606             }
607          }
608          program { name: "active_effect";
609             action: STATE_SET "active" 0.0;
610             target: "clip2";
611             transition: GLIDE_EASE_OUT(0.15);
612             after: "animate_finish";
613          }
614          program { name: "index.inactive";
615             signal: "elm,indicator,state,inactive";
616             source: "elm";
617             script {
618                if (get_int(animate) == 0) {
619                  set_int(animate, 1);
620                  run_program(PROGRAM:"inactive_effect");
621                }
622                else {
623                  set_state(PART:"clip2", "active", 0.0);
624                  run_program(PROGRAM:"inactive_effect");
625                }
626             }
627          }
628          program { name: "inactive_effect";
629             action: STATE_SET "default" 0.0;
630             target: "clip2";
631             transition: GLIDE_EASE_OUT(0.45);
632             after: "animate_finish";
633          }
634          program { name: "animate_finish";
635             script {
636                set_int(animate, 0);
637             }
638          }
639          program { name: "event.inactive";
640             signal: "elm,priority,up";
641             source: "elm";
642             action: STATE_SET "inactive" 0.0;
643             target: "elm.swallow.event.0";
644          }
645          program { name: "index.up";
646             signal: "elm,priority,up";
647             source: "elm";
648             action: STATE_SET "up" 0.0;
649             target: "elm.swallow.index.0";
650             after: "index.go.down";
651          }
652          program { name: "index.go.down";
653             action: STATE_SET "default" 0.0;
654             target: "elm.swallow.index.0";
655             after: "event.active";
656          }
657          program { name: "event.inactive2";
658             signal: "elm,priority,down";
659             source: "elm";
660             action: STATE_SET "inactive" 0.0;
661             target: "elm.swallow.event.0";
662          }
663          program { name: "index.down";
664             signal: "elm,priority,down";
665             source: "elm";
666             action: STATE_SET "down" 0.0;
667             target: "elm.swallow.index.0";
668             after: "index.go.up";
669          }
670          program { name: "index.go.up";
671             action: STATE_SET "default" 0.0;
672             target: "elm.swallow.index.0";
673             after: "event.active";
674          }
675          program { name: "event.active";
676             action: STATE_SET "default" 0.0;
677             target: "elm.swallow.event.0";
678          }
679          program {
680             name: "access.active";
681             signal: "elm,access,state,active";
682             source: "elm";
683             action: STATE_SET "active" 0.0;
684             target: "access";
685          }
686          program {
687             name: "access.inactive";
688             signal: "elm,access,state,inactive";
689             source: "elm";
690             action: STATE_SET "default" 0.0;
691             target: "access";
692          }
693       }
694    }
695
696    group { name: "elm/index/item1/vertical/default";
697       alias: "elm/index/item1_odd/vertical/default";
698       data.item: "stacking" "above";
699       data.item: "selectraise" "on";
700       images {
701          image: "core_index_fastscroll_rollover_line_focus.#.png" COMP;
702       }
703       parts {
704          part { name: "scroll.bg";
705             type: RECT;
706             mouse_events: 0;
707             scale: 1;
708             description { state: "default" 0.0;
709                rel1.to: "focus.top";
710                rel2.to: "focus.bottom";
711                color: 255 255 255 255;
712                visible: 0;
713             }
714             description { state: "active" 0.0;
715                inherit: "default" 0.0;
716                visible: 1;
717             }
718          }
719          part { name: "divider";
720             type: RECT;
721             mouse_events: 0;
722             scale: 1;
723             description {
724                state: "default" 0.0;
725                align: 0.5 1.0;
726                min: 0 INDEX_DIVIDER_WIDTH_INC;
727                fixed: 1 1;
728                rel1.to: "focus.bottom";
729                rel2 {
730                   to: "focus.bottom";
731                   relative: 1.0 0.0;
732                }
733                color: 61 185 204 26;
734             }
735             description {
736                state: "inactive" 0.0;
737                inherit: "default" 0.0;
738                visible: 0;
739             }
740          }
741          part { name: "focus.top";
742             type: SPACER;
743             mouse_events: 0;
744             scale: 1;
745             description {
746                state: "default" 0.0;
747                align: 0.5 0.0;
748                fixed: 1 1;
749                rel1.relative: 0.0 0.0;
750                rel2.relative: 1.0 0.0;
751                min: 0 0;
752                fixed: 1 1;
753             }
754          }
755          part { name: "focus.bottom";
756             type: SPACER;
757             mouse_events: 0;
758             scale: 1;
759             description {
760                state: "default" 0.0;
761                align: 0.5 1.0;
762                fixed: 1 1;
763                rel1.relative: 0.0 1.0;
764                rel2.relative: 1.0 1.0;
765                min: 0 0;
766                fixed: 1 1;
767             }
768          }
769          part { name: "elm.text";
770             type: TEXT;
771             mouse_events: 0;
772             scale: 1;
773             description {
774                min: INDEX_ITEM_WIDTH_INC INDEX_ITEM_HEIGHT_INC;
775                align: 0.5 0.5;
776                state: "default" 0.0;
777                rel1.relative: 0.0 0.0;
778                rel2.relative: 1.0 0.0;
779                rel2.to: "divider";
780                color: 61 185 204 204;
781                text {
782                   align: 0.5 0.5;
783                   font: "Tizen:style=Light";
784                   size: 24;
785                   size_range: 18 24;
786                   fit: 1 0;
787                   text_class: "tizen";
788                }
789             }
790             description { state: "active" 0.0;
791                inherit: "default" 0.0;
792             }
793          }
794          part { name: "right.padding";
795             type: SPACER;
796             mouse_events: 0;
797             scale: 1;
798             description {
799                state: "default" 0.0;
800                align: 1.0 0.5;
801                min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
802                fixed: 1 1;
803                rel1.relative: 1.0 0.0;
804                rel2.relative: 1.0 1.0;
805             }
806          }
807          part { name: "item.bg.top.offset";
808             type: SPACER;
809             mouse_events: 0;
810             scale: 1;
811             description {
812                state: "default" 0.0;
813                align: 0.5 1.0;
814                rel1.to: "focus.top";
815                rel2.to: "focus.top";
816                min: 0 INDEX_SCROLL_BG_LINE_WIDTH_INC;
817                fixed: 1 1;
818             }
819          }
820          part { name: "item.bg";
821             type: IMAGE;
822             mouse_events: 0;
823             scale: 1;
824             description {
825                state: "default" 0.0;
826                visible: 0;
827                image {
828                   normal: "core_index_fastscroll_rollover_line_focus.#.png";
829                }
830                color: 61 185 204 77;
831                rel1.to: "item.bg.top.offset";
832                rel2.to_x: "right.padding";
833                rel2.to_y: "focus.bottom";
834                rel2.relative: 0.0 0.0;
835             }
836             description {
837                state: "active" 0.0;
838                inherit: "default" 0.0;
839                visible: 1;
840             }
841          }
842       }
843       programs {
844          program { name: "active";
845             signal: "elm,state,active";
846             source: "elm";
847             action: STATE_SET "active" 0.0;
848             transition: DECELERATE 0.0;
849             target: "elm.text";
850             target: "item.bg";
851             target: "scroll.bg";
852          }
853          program { name: "inactive";
854             signal: "elm,state,inactive";
855             source: "elm";
856             action: STATE_SET "default" 0.0;
857             transition: DECELERATE 0.0;
858             target: "elm.text";
859             target: "item.bg";
860             target: "scroll.bg";
861          }
862          program {
863             signal: "elm,last,item";
864             source: "elm";
865             action: STATE_SET "inactive" 0.0;
866             target: "divider";
867          }
868       }
869    }
870    group { name: "elm/index/item2/vertical/default";
871       inherit: "elm/index/item1/vertical/default";
872       alias: "elm/index/item2_odd/vertical/default";
873       parts {
874          part { name: "scroll.bg";
875             description { state: "default" 0.0;
876                visible: 1;
877             }
878          }
879       }
880    }
881    group {
882       name: "elm/index/base/vertical/pagecontrol";
883       alias: "elm/index/base/horizontal/pagecontrol";
884       parts {
885          part { name: "clip";
886             type: RECT;
887             mouse_events:  0;
888             description { state: "default" 0.0;
889                visible:  0;
890                color: 255 255 255 0;
891             }
892             description { state: "active" 0.0;
893                visible:  1;
894                color: 255 255 255 255;
895             }
896          }
897          part { name: "elm.swallow.index.0";
898             type: SWALLOW;
899             scale: 1;
900             clip_to: "clip";
901             description {
902                state: "default" 0.0;
903                align: 0.5 0.5;
904                rel1.relative: 0.5 0.5;
905                rel2.relative: 0.5 0.5;
906                fixed: 1 1;
907             }
908          }
909          part { name: "elm.swallow.event.0";
910             type: SWALLOW;
911             description { state: "default" 0.0;
912                fixed: 1 1;
913                rel1.to: "elm.swallow.index.0";
914                rel2.to: "elm.swallow.index.0";
915             }
916          }
917       }
918       programs {
919          program { name: "active";
920             signal: "elm,state,active";
921             source: "elm";
922             action: STATE_SET "active" 0.0;
923             transition: DECELERATE 0.5;
924             target: "clip";
925          }
926          program { name: "inactive";
927             signal: "elm,state,inactive";
928             source: "elm";
929             action: STATE_SET "default" 0.0;
930             transition: DECELERATE 0.5;
931             target: "clip";
932          }
933       }
934    }
935    group {
936       name: "elm/index/item/vertical/pagecontrol";
937       alias: "elm/index/item_odd/vertical/pagecontrol";
938       alias: "elm/index/item/horizontal/pagecontrol";
939       alias: "elm/index/item_odd/horizontal/pagecontrol";
940       images {
941          image: "core_page_indicator_on.png" COMP;
942          image: "core_page_indicator_on_ef.png" COMP;
943          image: "core_page_indicator_off.png" COMP;
944          image: "core_page_indicator_off_ef.png" COMP;
945       }
946       parts {
947          part { name:"bg";
948             type : RECT;
949             scale: 1;
950             description { state: "default" 0.0;
951                min: INDEX_PAGECONTROL_IND_INC;
952                max: INDEX_PAGECONTROL_IND_INC;
953                visible: 0;
954                align: 0.5 0.5;
955             }
956          }
957          part { name: "indicator_off";
958             scale: 1;
959             mouse_events: 1;
960             type: IMAGE;
961             description { state: "default" 0.0;
962                align: 0.5 0.5;
963                fixed: 1 1;
964                min: INDEX_PAGECONTROL_IND_MIN_INC;
965                max: INDEX_PAGECONTROL_IND_MIN_INC;
966                image.normal: "core_page_indicator_off.png";
967                color: 250 250 250 128;
968                visible: 1;
969             }
970             description { state: "active" 0.0;
971                inherit: "default" 0.0;
972                visible: 0;
973             }
974          }
975          part { name: "indicator_off_ef";
976             scale: 1;
977             mouse_events: 1;
978             type: IMAGE;
979             description { state: "default" 0.0;
980                fixed: 1 1;
981                image.normal: "core_page_indicator_off_ef.png";
982                rel1.to: "indicator_off";
983                rel2.to: "indicator_off";
984             }
985             description { state: "active" 0.0;
986                inherit: "default" 0.0;
987                visible: 0;
988             }
989          }
990          part { name: "indicator_on";
991             mouse_events: 1;
992             scale: 1;
993             description { state: "default" 0.0;
994                align: 0.5 0.5;
995                fixed: 1 1;
996                min: INDEX_PAGECONTROL_IND_MIN_INC;
997                max: INDEX_PAGECONTROL_IND_MIN_INC;
998                image.normal: "core_page_indicator_on.png";
999                color: 250 250 250 255;
1000                visible: 0;
1001             }
1002             description { state: "active" 0.0;
1003                inherit: "default" 0.0;
1004                visible: 1;
1005             }
1006          }
1007          part { name: "indicator_on_ef";
1008             scale: 1;
1009             mouse_events: 1;
1010             type: IMAGE;
1011             description { state: "default" 0.0;
1012                fixed: 1 1;
1013                image.normal: "core_page_indicator_on_ef.png";
1014                visible: 0;
1015                rel1.to: "indicator_on";
1016                rel2.to: "indicator_on";
1017             }
1018             description { state: "active" 0.0;
1019                inherit: "default" 0.0;
1020                visible: 1;
1021             }
1022          }
1023       }
1024       programs {
1025          program { name: "active";
1026             signal: "elm,state,active";
1027             source: "elm";
1028             action: STATE_SET "active" 0.0;
1029             target: "indicator_off";
1030             target: "indicator_off_ef";
1031             target: "indicator_on";
1032             target: "indicator_on_ef";
1033          }
1034          program { name: "inactive";
1035             signal: "elm,state,inactive";
1036             source: "elm";
1037             action: STATE_SET "default" 0.0;
1038             target: "indicator_off";
1039             target: "indicator_off_ef";
1040             target: "indicator_on";
1041             target: "indicator_on_ef";
1042          }
1043       }
1044    }
1045