2 * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved
4 * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are met:
9 * 1. Redistributions of source code must retain the above copyright notice, this
10 * list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright notice,
12 * this list of conditions and the following disclaimer in the documentation
13 * and/or other materials provided with the distribution.
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
16 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
19 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 group { name: "elm/index/base/vertical/default";
33 name: "core_index_scroll_popup_bg";
35 image: SMALL"images/Navigation_elements/core_index_scroll_popup_bg.png" COMP;
38 image: MEDIUM"images/Navigation_elements/core_index_scroll_popup_bg.png" COMP;
47 description { state: "default" 0.0;
51 description { state: "active" 0.0;
53 color: 255 255 255 255;
61 description { state: "default" 0.0;
65 description { state: "active" 0.0;
67 color: 255 255 255 255;
70 part { name: "elm.dragable.index.1";
77 confine: "elm.swallow.index.0";
79 description { state: "default" 0.0;
81 min: INDEX_SCROLL_DRAG_PART_SIZE;
84 to: "elm.swallow.index.0";
88 to: "elm.swallow.index.0";
92 part { name: "index1.top.padding";
99 min: 0 INDEX_PADDING_SIZE_INC;
101 color: 255 255 255 255;
103 to: "left.line.index.1";
107 to: "elm.swallow.index.1";
111 description { state: "active" 0.0;
112 inherit: "default" 0.0;
116 part { name: "index1.bottom.padding";
123 min: 0 INDEX_PADDING_SIZE_INC;
124 color: 255 255 255 255;
127 to: "left.line.index.1";
131 to: "elm.swallow.index.1";
135 description { state: "active" 0.0;
136 inherit: "default" 0.0;
140 part { name: "elm.swallow.index.1";
144 description { state: "default" 0.0;
149 to: "elm.dragable.index.1";
153 to: "elm.dragable.index.1";
157 description { state: "active" 0.0;
158 inherit: "default" 0.0;
161 description { state: "align_bottom" 0.0;
162 inherit: "default" 0.0;
167 to: "elm.swallow.index.0";
171 to: "elm.swallow.index.0";
174 description { state: "align_top" 0.0;
175 inherit: "default" 0.0;
180 to: "elm.swallow.index.0";
184 to: "elm.swallow.index.0";
188 part { name: "left.line.index.1";
192 description { state: "default" 0.0;
195 min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
198 to: "elm.swallow.index.1";
202 to: "elm.swallow.index.1";
205 color: 61 185 204 77;
207 description { state: "active" 0.0;
208 inherit: "default" 0.0;
212 part { name: "index.top.padding";
217 min: 0 INDEX_PADDING_SIZE_INC;
220 to_x: "elm.swallow.index.0";
224 to_x: "elm.swallow.index.0";
229 part { name: "index.bottom.padding";
234 min: 0 INDEX_PADDING_SIZE_INC;
237 to_x: "elm.swallow.index.0";
241 to_x: "elm.swallow.index.0";
250 description { state: "default" 0.0;
251 rel1.to: "index.top.padding";
252 rel2.to: "index.bottom.padding";
253 color: 255 255 255 255;
256 part { name: "left.line";
260 description { state: "default" 0.0;
262 min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
272 color: 61 185 204 77;
274 description { state: "active" 0.0;
275 inherit: "default" 0.0;
276 color: 61 185 204 77;
279 part { name: "elm.swallow.index.0";
283 description { state: "default" 0.0;
288 to_y: "index.top.padding";
292 to_y: "index.bottom.padding";
295 color: 255 255 255 255;
298 part { name: "popup_bg";
301 description { state: "default" 0.0;
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";
312 inherit: "default" 0.0;
313 min: INDEX_SCROLL_POPUP_ACTIVE_SIZE;
323 state: "default" 0.0;
336 state: "default" 0.0;
337 min: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
338 max: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
341 font: "TizenSans:style=Light";
348 color: 250 250 250 255;
352 inherit: "default" 0.0;
358 rel2.to: "align_prop";
369 state: "default" 0.0;
371 min: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
372 max: INDEX_SCROLL_TEXT1_DEFAULT_SIZE;
375 font: "TizenSans:style=Light";
382 color: 250 250 250 255;
386 inherit: "default" 0.0;
389 rel1.to: "align_prop";
397 part { name: "text.left.padding";
402 state: "default" 0.0;
403 min: INDEX_TEXT_LEFT_PADDING_SIZE_INC 0;
405 rel1.to: "elm.text.1";
413 inherit: "default" 0.0;
421 part { name: "text.right.padding";
426 state: "default" 0.0;
427 min: INDEX_TEXT_RIGHT_PADDING_SIZE_INC 0;
433 rel2.to: "elm.text.1";
436 part { name: "text.bottom.padding";
441 state: "default" 0.0;
442 min: 0 INDEX_TEXT_BOTTOM_PADDING_SIZE_INC;
448 rel2.to: "elm.text.1";
452 inherit: "default" 0.0;
457 part { name: "elm.swallow.event.0";
460 description { state: "default" 0.0;
465 to: "elm.swallow.index.0";
469 to: "elm.swallow.index.0";
473 part { name: "elm.swallow.event.1";
476 description { state: "default" 0.0;
481 to: "elm.swallow.index.1";
485 to: "elm.swallow.index.1";
492 description { state: "default" 0.0;
495 to: "elm.swallow.index.0";
499 to: "elm.swallow.index.0";
504 description { state: "active" 0.0;
505 inherit: "default" 0.0;
511 program { name: "drag2";
513 source: "elm.dragable.index.1";
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);
522 program { name: "index0.active";
523 signal: "elm,state,active";
525 action: STATE_SET "active" 0.0;
528 program { name: "index1.inactive";
529 signal: "elm,state,level,0";
531 action: STATE_SET "default" 0.0;
532 target: "elm.swallow.index.1";
533 target: "elm.text.1";
535 target: "left.line.index.1";
536 target: "index1.top.padding";
537 target: "index1.bottom.padding";
539 target: "text.left.padding";
541 program { name: "index1.active";
542 signal: "elm,state,level,1";
545 new x1, x2, y1, y2, w1, w2, h1, h2;
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);
554 else if (dy < 0.02) {
555 set_state(PART:"elm.swallow.index.1", "align_top", 0.0);
558 set_state(PART:"elm.swallow.index.1", "active", 0.0);
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);
568 program { name: "index1.text";
569 signal: "index1.text.enable";
571 action: STATE_SET "active" 0.0;
572 target: "elm.text.1";
574 target: "text.left.padding";
576 program { name: "index0.hide";
577 signal: "elm,state,inactive";
579 action: STATE_SET "default" 0.0;
582 program { name: "left.line.active";
583 signal: "mouse,down,1";
584 source: "elm.swallow.event.0";
585 action: STATE_SET "active" 0.0;
588 program { name: "left.line.dim";
589 signal: "mouse,up,1";
590 source: "elm.swallow.event.0";
591 action: STATE_SET "default" 0.0;
594 program { name: "index.active";
595 signal: "elm,indicator,state,active";
598 if (get_int(animate) == 0) {
600 run_program(PROGRAM:"active_effect");
603 set_state(PART:"clip2", "default", 0.0);
604 run_program(PROGRAM:"active_effect");
608 program { name: "active_effect";
609 action: STATE_SET "active" 0.0;
611 transition: GLIDE_EASE_OUT(0.15);
612 after: "animate_finish";
614 program { name: "index.inactive";
615 signal: "elm,indicator,state,inactive";
618 if (get_int(animate) == 0) {
620 run_program(PROGRAM:"inactive_effect");
623 set_state(PART:"clip2", "active", 0.0);
624 run_program(PROGRAM:"inactive_effect");
628 program { name: "inactive_effect";
629 action: STATE_SET "default" 0.0;
631 transition: GLIDE_EASE_OUT(0.45);
632 after: "animate_finish";
634 program { name: "animate_finish";
639 program { name: "event.inactive";
640 signal: "elm,priority,up";
642 action: STATE_SET "inactive" 0.0;
643 target: "elm.swallow.event.0";
645 program { name: "index.up";
646 signal: "elm,priority,up";
648 action: STATE_SET "up" 0.0;
649 target: "elm.swallow.index.0";
650 after: "index.go.down";
652 program { name: "index.go.down";
653 action: STATE_SET "default" 0.0;
654 target: "elm.swallow.index.0";
655 after: "event.active";
657 program { name: "event.inactive2";
658 signal: "elm,priority,down";
660 action: STATE_SET "inactive" 0.0;
661 target: "elm.swallow.event.0";
663 program { name: "index.down";
664 signal: "elm,priority,down";
666 action: STATE_SET "down" 0.0;
667 target: "elm.swallow.index.0";
668 after: "index.go.up";
670 program { name: "index.go.up";
671 action: STATE_SET "default" 0.0;
672 target: "elm.swallow.index.0";
673 after: "event.active";
675 program { name: "event.active";
676 action: STATE_SET "default" 0.0;
677 target: "elm.swallow.event.0";
680 name: "access.active";
681 signal: "elm,access,state,active";
683 action: STATE_SET "active" 0.0;
687 name: "access.inactive";
688 signal: "elm,access,state,inactive";
690 action: STATE_SET "default" 0.0;
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";
701 image: "core_index_fastscroll_rollover_line_focus.#.png" COMP;
704 part { name: "scroll.bg";
708 description { state: "default" 0.0;
709 rel1.to: "focus.top";
710 rel2.to: "focus.bottom";
711 color: 255 255 255 255;
714 description { state: "active" 0.0;
715 inherit: "default" 0.0;
719 part { name: "divider";
724 state: "default" 0.0;
726 min: 0 INDEX_DIVIDER_WIDTH_INC;
728 rel1.to: "focus.bottom";
733 color: 61 185 204 26;
736 state: "inactive" 0.0;
737 inherit: "default" 0.0;
741 part { name: "focus.top";
746 state: "default" 0.0;
749 rel1.relative: 0.0 0.0;
750 rel2.relative: 1.0 0.0;
755 part { name: "focus.bottom";
760 state: "default" 0.0;
763 rel1.relative: 0.0 1.0;
764 rel2.relative: 1.0 1.0;
769 part { name: "elm.text";
774 min: INDEX_ITEM_WIDTH_INC INDEX_ITEM_HEIGHT_INC;
776 state: "default" 0.0;
777 rel1.relative: 0.0 0.0;
778 rel2.relative: 1.0 0.0;
780 color: 61 185 204 204;
783 font: "Tizen:style=Light";
790 description { state: "active" 0.0;
791 inherit: "default" 0.0;
794 part { name: "right.padding";
799 state: "default" 0.0;
801 min: INDEX_SCROLL_BG_LINE_WIDTH_INC 0;
803 rel1.relative: 1.0 0.0;
804 rel2.relative: 1.0 1.0;
807 part { name: "item.bg.top.offset";
812 state: "default" 0.0;
814 rel1.to: "focus.top";
815 rel2.to: "focus.top";
816 min: 0 INDEX_SCROLL_BG_LINE_WIDTH_INC;
820 part { name: "item.bg";
825 state: "default" 0.0;
828 normal: "core_index_fastscroll_rollover_line_focus.#.png";
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;
838 inherit: "default" 0.0;
844 program { name: "active";
845 signal: "elm,state,active";
847 action: STATE_SET "active" 0.0;
848 transition: DECELERATE 0.0;
853 program { name: "inactive";
854 signal: "elm,state,inactive";
856 action: STATE_SET "default" 0.0;
857 transition: DECELERATE 0.0;
863 signal: "elm,last,item";
865 action: STATE_SET "inactive" 0.0;
870 group { name: "elm/index/item2/vertical/default";
871 inherit: "elm/index/item1/vertical/default";
872 alias: "elm/index/item2_odd/vertical/default";
874 part { name: "scroll.bg";
875 description { state: "default" 0.0;
882 name: "elm/index/base/vertical/pagecontrol";
883 alias: "elm/index/base/horizontal/pagecontrol";
888 description { state: "default" 0.0;
890 color: 255 255 255 0;
892 description { state: "active" 0.0;
894 color: 255 255 255 255;
897 part { name: "elm.swallow.index.0";
902 state: "default" 0.0;
904 rel1.relative: 0.5 0.5;
905 rel2.relative: 0.5 0.5;
909 part { name: "elm.swallow.event.0";
911 description { state: "default" 0.0;
913 rel1.to: "elm.swallow.index.0";
914 rel2.to: "elm.swallow.index.0";
919 program { name: "active";
920 signal: "elm,state,active";
922 action: STATE_SET "active" 0.0;
923 transition: DECELERATE 0.5;
926 program { name: "inactive";
927 signal: "elm,state,inactive";
929 action: STATE_SET "default" 0.0;
930 transition: DECELERATE 0.5;
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";
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;
950 description { state: "default" 0.0;
951 min: INDEX_PAGECONTROL_IND_INC;
952 max: INDEX_PAGECONTROL_IND_INC;
957 part { name: "indicator_off";
961 description { state: "default" 0.0;
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;
970 description { state: "active" 0.0;
971 inherit: "default" 0.0;
975 part { name: "indicator_off_ef";
979 description { state: "default" 0.0;
981 image.normal: "core_page_indicator_off_ef.png";
982 rel1.to: "indicator_off";
983 rel2.to: "indicator_off";
985 description { state: "active" 0.0;
986 inherit: "default" 0.0;
990 part { name: "indicator_on";
993 description { state: "default" 0.0;
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;
1002 description { state: "active" 0.0;
1003 inherit: "default" 0.0;
1007 part { name: "indicator_on_ef";
1011 description { state: "default" 0.0;
1013 image.normal: "core_page_indicator_on_ef.png";
1015 rel1.to: "indicator_on";
1016 rel2.to: "indicator_on";
1018 description { state: "active" 0.0;
1019 inherit: "default" 0.0;
1025 program { name: "active";
1026 signal: "elm,state,active";
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";
1034 program { name: "inactive";
1035 signal: "elm,state,inactive";
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";