3 * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
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
9 * http://www.apache.org/licenses/LICENSE-2.0
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.
20 #define ITEM_STATE_ENABLED 0
21 #define ITEM_STATE_DISABLED 1
22 #define TOOLBAR_SLIDING_PER_FPS 2
23 #define TOOLBAR_SLIDING_FPS 40.0
24 #define TOOLBAR_SLIDING_TEXT_GAP 40
25 #define TOOLBAR_SLIDING_TEXT_OFFSET 5
27 #define TOOLBAR_TEXT_STYLE(_font_size) \
28 style { name: "toolbar_text_style_"_font_size; \
29 base: "font=Tizen:style=Bold style=far_shadow,bottom shadow_color=#000000be font_size="_font_size" align=center color="TOOLBAR_ITEM_TEXTBLOCK_COLOR_INC" wrap=word ellipsis=1 text_class=tizen linegap=0"; \
32 tag: "hilight" "+ font=Tizen:style=Bold"; \
33 tag: "b" "+ font=Tizen:style=Bold"; \
37 #define TABBAR_TEXT_STYLE(_font_size) \
38 style { name: "tabbar_text_style_"_font_size; \
39 base: "font=Tizen:style=Bold style=far_shadow,bottom shadow_color=#000000ff font_size="_font_size" align=center color="TABBAR_ITEM_TEXTBLOCK_COLOR_INC" wrap=word ellipsis=1 text_class=tizen linegap=0"; \
42 tag: "hilight" "+ font=Tizen:style=Bold"; \
43 tag: "b" "+ font=Tizen:style=Bold"; \
47 #define TOOLBAR_SELECTED_TEXT_STYLE(_font_size) \
48 style { name: "toolbar_selected_text_style_"_font_size; \
49 base: "font=Tizen:style=Bold style=far_shadow,bottom shadow_color=#000000ff font_size="_font_size" align=center color="TABBAR_ITEM_SELECTED_TEXTBLOCK_COLOR_INC" wrap=word ellipsis=1 text_class=tizen linegap=0"; \
52 tag: "hilight" "+ font=Tizen:style=Bold"; \
53 tag: "b" "+ font=Tizen:style=Bold"; \
59 TOOLBAR_TEXT_STYLE(36)
62 group { name: "elm/toolbar/base/default";
64 item: "focus_highlight" "on";
67 image: "00_toolbar_bg.png" COMP;
73 description { state: "default" 0.0;
76 part { name: "base_bg";
90 normal: "00_toolbar_bg.png";
91 border: TOOLBAR_ITEM_BG_DEFAULT_BORDER_INC;
96 part { name: "clipper";
100 state: "default" 0.0;
111 part { name: "elm.swallow.content";
115 state: "default" 0.0;
120 part { name: "event";
124 description { state: "default" 0.0;
131 group { name: "elm/toolbar/item/default";
133 image: "00_toolbar_press.png" COMP;
134 image: "00_tab_focus.png" COMP;
137 data.item: "transition_animation_on" "1";
139 public item_state = ITEM_STATE_ENABLED;
140 public items_number = 0;
147 description { state: "default" 0.0;
150 normal: "00_toolbar_press.png";
151 border: TOOLBAR_ITEM_BG_SELECTED_BORDER_INC;
155 description { state: "selected" 0.0;
156 inherit: "default" 0.0;
159 description { state: "disabled" 0.0;
160 inherit: "default" 0.0;
164 part { name: "padding_left_top";
168 description { state: "default" 0.0;
170 rel2.relative: 0.0 0.0;
176 description { state: "1_item" 0.0;
177 inherit: "default" 0.0;
180 description { state: "2_items" 0.0;
181 inherit: "default" 0.0;
184 description { state: "3_items" 0.0;
185 inherit: "default" 0.0;
189 part { name: "padding_right_bottom";
193 description { state: "default" 0.0;
195 rel1.relative: 1.0 1.0;
201 description { state: "1_item" 0.0;
202 inherit: "default" 0.0;
205 description { state: "2_items" 0.0;
206 inherit: "default" 0.0;
209 description { state: "3_items" 0.0;
210 inherit: "default" 0.0;
214 part { name: "elm.text";
218 clip_to: "elm.text.clipper";
219 description { state: "default" 0.0;
223 to: "padding_left_top";
227 to: "padding_right_bottom";
232 style: "toolbar_text_style_36";
236 description { state: "visible" 0.0;
237 inherit: "default" 0.0;
241 part { name: "elm.text_new";
245 clip_to: "elm.text_new.clipper";
246 description { state: "default" 0.0;
250 to: "padding_left_top";
254 to: "padding_right_bottom";
256 color: BUTTON_NAVIFRAME_DEFAULT_TEXT_COLOR_INC;
259 style: "toolbar_text_style_36";
263 description { state: "visible" 0.0;
264 inherit: "default" 0.0;
268 part { name: "elm.text.clipper";
270 description { state: "default" 0.0;
271 color: 255 255 255 255;
273 description { state: "animation" 0.0;
274 color: 255 255 255 0;
276 description { state: "disabled" 0.0;
277 color: 255 255 255 153;
280 part { name: "elm.text_new.clipper";
282 description { state: "default" 0.0;
283 color: 255 255 255 0;
285 description { state: "animation" 0.0;
286 color: 255 255 255 255;
288 description { state: "disabled" 0.0;
289 color: 255 255 255 153;
292 part { name: "divider";
295 description { state: "default" 0.0;
306 description { state: "hidden" 0.0;
307 inherit: "default" 0.0;
311 part { name: "divider_left";
314 description { state: "default" 0.0;
315 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
326 part { name: "divider_right";
329 description { state: "default" 0.0;
330 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;
341 part { name: "event";
344 ignore_flags: ON_HOLD;
345 description { state: "default" 0.0;
349 part { name: "event2";
353 description { state: "default" 0.0;
357 part { name: "highlight";
360 description { state: "default" 0.0;
363 normal: "00_tab_focus.png";
368 description { state: "highlighted" 0.0;
369 inherit: "default" 0.0;
375 program { name: "pressed";
376 signal: "mouse,down,1";
379 if (get_int(item_state) != ITEM_STATE_DISABLED)
380 set_state(PART:"bg", "selected", 0.0);
382 transition: LINEAR 0.2;
384 program { name: "unpressed";
385 signal: "mouse,up,1";
387 action: STATE_SET "default" 0.0;
389 transition: LINEAR 0.1;
391 program { name: "go";
392 signal: "mouse,clicked,1";
394 action: SIGNAL_EMIT "elm,action,click" "elm";
396 program { name: "mouse,in";
399 action: SIGNAL_EMIT "elm,mouse,in" "elm";
401 program { name: "mouse,out";
404 action: SIGNAL_EMIT "elm,mouse,out" "elm";
406 program { name: "disable";
407 signal: "elm,state,disabled";
410 set_int(item_state, ITEM_STATE_DISABLED);
411 set_state(PART:"bg", "disabled", 0.0);
412 set_state(PART:"elm.text.clipper", "disabled", 0.0);
413 run_program(PROGRAM:"label_set,animation,done");
416 program { name: "enable";
417 signal: "elm,state,enabled";
420 set_int(item_state, ITEM_STATE_ENABLED);
421 set_state(PART:"bg", "default", 0.0);
422 set_state(PART:"elm.text.clipper", "default", 0.0);
423 run_program(PROGRAM:"label_set,animation,done");
426 program { name: "label_set,animation,forward";
427 signal: "elm,state,label_set,forward";
429 after: "label_set,sync";
431 program { name: "label_set,animation,backward";
432 signal: "elm,state,label_set,backward";
434 after: "label_set,sync";
436 program { name: "label_set,sync";
437 signal: "elm,state,label_set";
442 get_state(PART:"elm.text", st, 30, vl);
443 set_state(PART:"elm.text_new", st, vl);
445 after: "label_set,animation";
447 program { name: "label_set,animation";
448 action: STATE_SET "animation" 0.0;
449 target: "elm.text.clipper";
450 target: "elm.text_new.clipper";
451 transition: LINEAR 0.2;
452 after: "label_set,animation,done";
454 program { name: "label_set,animation,done";
455 action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
457 program { name: "label,reset";
458 signal: "elm,state,label,reset";
461 set_state(PART:"elm.text_new.clipper", "default", 0.0);
462 if (get_int(item_state) != ITEM_STATE_DISABLED)
463 set_state(PART:"elm.text.clipper", "default", 0.0);
465 set_state(PART:"elm.text.clipper", "disabled", 0.0);
468 program { name: "text_show";
469 signal: "elm,state,text,visible";
472 set_state(PART:"elm.text", "visible", 0.0);
475 program { name: "text_hide";
476 signal: "elm,state,text,hidden";
479 set_state(PART:"elm.text", "default", 0.0);
482 program { name: "text_only_item_1";
483 signal: "elm,number,item,1";
486 set_int(items_number, 1);
487 set_state(PART:"padding_left_top", "1_item", 0.0);
488 set_state(PART:"padding_right_bottom", "1_item", 0.0);
491 program { name: "text_only_item_2";
492 signal: "elm,number,item,2";
495 set_int(items_number, 2);
496 set_state(PART:"padding_left_top", "2_items", 0.0);
497 set_state(PART:"padding_right_bottom", "2_items", 0.0);
500 program { name: "text_only_item_3";
501 signal: "elm,number,item,3";
504 set_int(items_number, 3);
505 set_state(PART:"padding_left_top", "3_items", 0.0);
506 set_state(PART:"padding_right_bottom", "3_items", 0.0);
509 program { name: "divider_visible";
510 signal: "elm,order,first,item";
511 signal: "elm,order,default,item";
513 action: STATE_SET "default" 0.0;
516 program { name: "divider_hidden";
517 signal: "elm,order,last,item";
519 action: STATE_SET "hidden" 0.0;
522 program { name: "highlight_on";
523 signal: "elm,highlight,on";
525 action: STATE_SET "highlighted" 0.0;
528 program { name: "highlight_off";
529 signal: "elm,highlight,off";
531 action: STATE_SET "default" 0.0;
537 group { name: "elm/toolbar/separator/default";
539 part { name: "divider";
542 description { state: "default" 0.0;
554 part { name: "divider_left";
557 description { state: "default" 0.0;
558 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
569 part { name: "divider_right";
572 description { state: "default" 0.0;
573 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;
587 group { name: "elm/toolbar/object/default";
589 part { name: "elm.swallow.object"; // object group
592 state: "default" 0.0;
598 group { name: "elm/toolbar/base/tabbar";
600 item: "focus_highlight" "on";
603 image: "00_effect_tab_bounce_left.png" COMP;
604 image: "00_effect_tab_bounce_right.png" COMP;
605 image: "00_title_bg.png" COMP;
608 public left_timer, right_timer;
609 public l_timer(val) {
610 emit("do-hide-left-shadow", "");
611 set_int(left_timer, 0);
614 public r_timer(val) {
615 emit("do-hide-right-shadow", "");
616 set_int(right_timer, 0);
624 description { state: "default" 0.0;
627 part { name: "base_bg";
631 state: "default" 0.0;
641 normal: "00_title_bg.png";
645 part { name: "left_padding";
650 state: "default" 0.0;
657 rel1.relative: 0.0 0.0;
658 rel2.relative: 0.0 1.0;
661 part { name: "right_padding";
666 state: "default" 0.0;
673 rel1.relative: 1.0 0.0;
674 rel2.relative: 1.0 1.0;
677 part { name: "clipper";
682 state: "default" 0.0;
683 rel1.to: "left_padding";
684 rel1.relative: 1.0 0.0;
685 rel2.to: "right_padding";
686 rel2.relative: 0.0 1.0;
689 part { name: "elm.swallow.content";
694 state: "default" 0.0;
699 part { name: "left_shadow_clip";
703 description { state: "default" 0.0;
705 color: 255 255 255 0;
707 description { state: "show" 0.0;
710 part { name: "right_shadow_clip";
714 description { state: "default" 0.0;
716 color: 255 255 255 0;
718 description { state: "show" 0.0;
721 part { name: "shadow_left";
722 clip_to: "left_shadow_clip";
726 description { state: "default" 0.0;
730 color: 255 255 255 255;
731 rel1.relative: 0.0 0.0;
732 rel2.relative: 0.0 1.0;
733 image.normal: "00_effect_tab_bounce_left.png";
736 part { name: "shadow_right";
737 clip_to: "right_shadow_clip";
741 description { state: "default" 0.0;
745 color: 255 255 255 255;
746 rel1.relative: 1.0 0.0;
747 rel2.relative: 1.0 1.0;
748 image.normal: "00_effect_tab_bounce_right.png";
753 program { name: "load";
755 set_int(left_timer, 0);
756 set_int(right_timer, 0);
759 program { name: "left_shadow_show";
760 signal: "do-show-left-shadow";
762 action: STATE_SET "show" 0.0;
763 transition: LINEAR 0.3;
764 target: "left_shadow_clip";
766 program { name: "left_shadow_hide";
767 signal: "do-hide-left-shadow";
769 action: STATE_SET "default" 0.0;
770 transition: LINEAR 0.3;
771 target: "left_shadow_clip";
773 program { name: "right_shadow_show";
774 signal: "do-show-right-shadow";
776 action: STATE_SET "show" 0.0;
777 transition: LINEAR 0.3;
778 target: "right_shadow_clip";
780 program { name: "right_shadow_hide";
781 signal: "do-hide-right-shadow";
783 action: STATE_SET "default" 0.0;
784 transition: LINEAR 0.3;
785 target: "right_shadow_clip";
787 program { name: "edge_left";
788 signal: "elm,edge,left";
792 v = get_int(left_timer);
794 emit("do-show-left-shadow", "");
796 if (v > 0) cancel_timer(v);
797 v = timer(0.5, "l_timer", 0);
798 set_int(left_timer, v);
801 program { name: "edge_right";
802 signal: "elm,edge,right";
806 v = get_int(right_timer);
808 emit("do-show-right-shadow", "");
810 if (v > 0) cancel_timer(v);
811 v = timer(0.5, "r_timer", 0);
812 set_int(right_timer, v);
818 group { name: "elm/toolbar/item/tabbar";
820 image: "00_tab_press.png" COMP;
821 image: "00_badge_bg.png" COMP;
822 image: "00_tab_focus.png" COMP;
823 image: "00_tab_select_bar.png" COMP;
824 image: "00_effect_tab_text_dim_left.png" COMP;
825 image: "00_effect_tab_text_dim_right.png" COMP;
828 data.item: "transition_animation_on" "1";
830 public item_state = ITEM_STATE_ENABLED;
831 public items_number = 0;
832 public sliding_timer;
836 public loop_count = 0;
840 set_state(PART:"elm.text", "visible", 0.0);
841 get_geometry(PART:"elm.text", x, y, w, h);
842 set_int(org_text_w, w);
844 set_state(PART:"elm.text", "sliding", 0.0);
845 get_geometry(PART:"elm.text", x, y, w, h);
849 set_int(loop_count, 0);
850 if (get_int(sliding_timer)) cancel_timer(get_int(sliding_timer));
851 set_int(sliding_timer, 0);
852 if (get_int(end_timer)) cancel_timer(get_int(end_timer));
853 set_int(end_timer, 0);
854 set_state(PART:"elm.text.dim.left", "default", 0.0);
855 set_state(PART:"elm.text_new.clipper", "default", 0.0);
857 custom_state(PART:"elm.text", "sliding", 0.0);
858 set_state_val(PART:"elm.text", STATE_REL1_OFFSET, TOOLBAR_SLIDING_TEXT_OFFSET, 0);
859 set_state_val(PART:"elm.text", STATE_REL2_OFFSET, TOOLBAR_SLIDING_TEXT_OFFSET, 0);
860 set_state(PART:"elm.text", "custom", 0.0);
862 set_state(PART:"elm.text", "visible", 0.0);
863 set_state(PART:"elm.text.dim.right", "default", 0.0);
866 public sliding(val) {
868 if (val == TOOLBAR_SLIDING_TEXT_OFFSET) {
869 set_int(loop_count, get_int(loop_count) + 1);
871 if (get_int(text_w) <= get_int(org_text_w)) {
876 val -= TOOLBAR_SLIDING_PER_FPS;
877 // for debuging //////////////////////////////
878 /* snprintf(buf, 127, "%d:%d:%d",
879 val, get_int(org_text_w), get_int(text_w));
880 set_text(PART:"dbg", buf);*/
882 if (val <= -get_int(text_w) - TOOLBAR_SLIDING_TEXT_GAP + TOOLBAR_SLIDING_TEXT_OFFSET)
883 val = TOOLBAR_SLIDING_TEXT_OFFSET;
884 custom_state(PART:"elm.text", "sliding", 0.0);
885 set_state_val(PART:"elm.text", STATE_REL1_OFFSET, val, 0);
886 set_state_val(PART:"elm.text", STATE_REL2_OFFSET, val, 0);
887 set_state(PART:"elm.text", "custom", 0.0);
889 set_state(PART:"elm.text_new.clipper", "animation", 0.0);
890 get_text(PART:"elm.text", buf, 128);
891 set_text(PART:"elm.text_new", buf);
892 custom_state(PART:"elm.text_new", "sliding", 0.0);
893 set_state_val(PART:"elm.text_new", STATE_REL1_OFFSET,
894 val + get_int(text_w) + TOOLBAR_SLIDING_TEXT_GAP, 0);
895 set_state_val(PART:"elm.text_new", STATE_REL2_OFFSET,
896 val + get_int(text_w) + TOOLBAR_SLIDING_TEXT_GAP, 0);
897 set_state(PART:"elm.text_new", "custom", 0.0);
899 set_state(PART:"elm.text.dim.left", "show", 0.0);
900 set_state(PART:"elm.text.dim.right", "show", 0.0);
902 if (val == TOOLBAR_SLIDING_TEXT_OFFSET || val <= -get_int(text_w))
903 set_state(PART:"elm.text.dim.left", "default", 0.0);
905 if (val == TOOLBAR_SLIDING_TEXT_OFFSET) {
906 if (get_int(loop_count) < 3)
907 set_int(sliding_timer, timer(2.0, "sliding", TOOLBAR_SLIDING_TEXT_OFFSET));
909 set_int(end_timer, timer(0.5, "ender", 1));
911 set_int(sliding_timer, timer(1.0/TOOLBAR_SLIDING_FPS, "sliding", val));
919 description { state: "default" 0.0;
923 description { state: "icon_text" 0.0;
924 inherit: "default" 0.0;
928 part { name: "selected_line";
932 description { state: "default" 0.0;
940 normal: "00_tab_select_bar.png";
949 description { state: "selected" 0.0;
950 inherit: "default" 0.0;
954 part { name: "bg_cover";
958 description { state: "default" 0.0;
961 normal: "00_tab_press.png";
966 description { state: "pressed" 0.0;
967 inherit: "default" 0.0;
970 description { state: "moving" 0.0;
971 inherit: "default" 0.0;
975 part { name: "padding_left_top";
979 description { state: "default" 0.0;
981 rel2.relative: 0.0 0.0;
988 part { name: "padding_right_bottom";
992 description { state: "default" 0.0;
994 rel1.relative: 1.0 1.0;
1006 description { state: "default" 0.0;
1011 to: "padding_left_top";
1015 to_x: "padding_right_bottom";
1016 to_y: "padding_left_top";
1021 description { state: "visible" 0.0;
1022 inherit: "default" 0.0;
1023 min: TABBAR_ITEM_ICON_SIZE_INC;
1025 description { state: "icononly" 0.0;
1026 inherit: "default" 0.0;
1029 part { name: "padding_after_icon";
1033 description { state: "default" 0.0; //when only icon or no icon is there
1039 rel2.to: "icon_rect";
1044 description { state: "visible" 0.0;
1045 inherit: "default" 0.0;
1048 description { state: "icononly" 0.0;
1049 inherit: "default" 0.0;
1052 part { name: "padding_before_text";
1056 description { state: "default" 0.0; //when only icon or no icon is there
1060 to_x: "padding_left_top";
1065 to_x: "padding_right_bottom";
1073 part { name: "elm.swallow.icon.proxy";
1076 clip_to: "elm.icon.proxy.clipper";
1077 description { state: "default" 0.0;
1078 source: "elm.swallow.icon";
1079 proxy.source_clip: 0;
1080 rel1.to: "elm.swallow.icon";
1082 rel2.to: "elm.swallow.icon";
1086 part { name: "elm.swallow.icon_new.proxy";
1089 clip_to: "elm.icon_new.proxy.clipper";
1090 description { state: "default" 0.0;
1091 source: "elm.swallow.icon_new";
1092 proxy.source_clip: 0;
1093 rel1.to: "elm.swallow.icon_new";
1095 rel2.to: "elm.swallow.icon_new";
1099 part { name: "elm.swallow.icon";
1102 clip_to: "elm.icon.clipper";
1103 description { state: "default" 0.0;
1105 min: TABBAR_ITEM_ICON_SIZE_INC;
1106 max: TABBAR_ITEM_ICON_SIZE_INC;
1108 to: "padding_left_top";
1111 to: "padding_right_bottom";
1114 aspect_preference: HORIZONTAL;
1116 description { state: "visible" 0.0;
1118 min: TABBAR_ITEM_ICON_SIZE_INC;
1119 max: TABBAR_ITEM_ICON_SIZE_INC;
1123 to_x: "padding_left_top";
1124 to_y: "padding_before_text";
1128 to_x: "padding_right_bottom";
1129 to_y: "padding_before_text";
1132 aspect_preference: HORIZONTAL;
1134 description { state: "icononly" 0.0;
1135 inherit: "default" 0.0;
1139 part { name: "elm.swallow.icon_new";
1142 clip_to: "elm.icon_new.clipper";
1143 description { state: "default" 0.0;
1145 min: TABBAR_ITEM_ICON_SIZE_INC;
1146 max: TABBAR_ITEM_ICON_SIZE_INC;
1147 rel1.to: "padding_left_top";
1148 rel2.to: "padding_right_bottom";
1150 aspect_preference: HORIZONTAL;
1152 description { state: "visible" 0.0;
1154 min: TABBAR_ITEM_ICON_SIZE_INC;
1155 max: TABBAR_ITEM_ICON_SIZE_INC;
1158 to_x: "padding_left_top";
1159 to_y: "padding_before_text";
1163 to_x: "padding_right_bottom";
1164 to_y: "padding_before_text";
1167 aspect_preference: HORIZONTAL;
1169 description { state: "icononly" 0.0;
1170 inherit: "default" 0.0;
1174 part { name: "elm.text";
1178 clip_to: "elm.text.clipper";
1179 description { state: "default" 0.0;
1183 to_x: "padding_left_top";
1184 to_y: "padding_after_icon";
1188 to: "padding_right_bottom";
1193 style: "tabbar_text_style_30";
1198 description { state: "visible" 0.0;
1199 inherit: "default" 0.0;
1202 description { state: "sliding" 0.0;
1203 inherit: "visible" 0.0;
1204 rel1.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1205 rel2.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1210 part { name: "elm.text_new";
1214 clip_to: "elm.text_new.clipper";
1215 description { state: "default" 0.0;
1219 to_x: "padding_left_top";
1220 to_y: "padding_after_icon";
1224 to: "padding_right_bottom";
1229 style: "tabbar_text_style_30";
1234 description { state: "visible" 0.0;
1235 inherit: "default" 0.0;
1238 description { state: "sliding" 0.0;
1239 inherit: "visible" 0.0;
1240 rel1.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1241 rel2.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1246 part { name: "padding.badge";
1250 description { state: "default" 0.0;
1262 description { state: "default" 0.10;
1263 inherit: "default" 0.0;
1266 description { state: "default" 0.06;
1267 inherit: "default" 0.0;
1270 description { state: "default" 0.04;
1271 inherit: "default" 0.0;
1275 part { name: "elm.image.badge";
1278 description { state: "default" 0.0;
1283 to: "left.padding.text";
1287 to: "right.padding.text";
1291 normal: "00_badge_bg.png";
1296 description { state: "visible" 0.0;
1297 inherit: "default" 0.0;
1301 part { name: "left.padding.text";
1305 state: "default" 0.0;
1310 to: "elm.text.badge";
1314 to: "elm.text.badge";
1320 part { name: "right.padding.text";
1324 state: "default" 0.0;
1329 to: "padding.badge";
1333 to: "padding.badge";
1339 part { name: "elm.text.badge";
1344 state: "default" 0.0;
1347 to: "right.padding.text";
1351 to: "right.padding.text";
1357 color: 250 250 250 255;
1359 font: "Tizen:style=Bold";
1362 text_class: "tizen";
1365 description { state: "visible" 0.0;
1366 inherit: "default" 0.0;
1370 part { name: "elm.text.clipper";
1372 description { state: "default" 0.0;
1375 to: "padding_left_top";
1379 to: "padding_right_bottom";
1381 color: 255 255 255 255;
1383 description { state: "animation" 0.0;
1384 inherit: "default" 0.0;
1385 color: 255 255 255 0;
1387 description { state: "disabled" 0.0;
1388 inherit: "default" 0.0;
1389 color: 255 255 255 153;
1392 part { name: "elm.text_new.clipper";
1394 description { state: "default" 0.0;
1397 to: "padding_left_top";
1401 to: "padding_right_bottom";
1403 color: 255 255 255 0;
1405 description { state: "animation" 0.0;
1406 inherit: "default" 0.0;
1407 color: 255 255 255 255;
1409 description { state: "disabled" 0.0;
1410 inherit: "default" 0.0;
1411 color: 255 255 255 153;
1414 part { name: "elm.icon.proxy.clipper";
1416 description { state: "default" 0.0;
1419 to: "padding_left_top";
1423 to: "padding_right_bottom";
1427 description { state: "animation" 0.0;
1428 inherit: "default" 0.0;
1431 description { state: "selected" 0.0;
1432 inherit: "default" 0.0;
1435 description { state: "disabled" 0.0;
1436 inherit: "default" 0.0;
1440 part { name: "elm.icon_new.proxy.clipper";
1442 description { state: "default" 0.0;
1445 to: "padding_left_top";
1449 to: "padding_right_bottom";
1453 description { state: "animation" 0.0;
1454 inherit: "default" 0.0;
1457 description { state: "selected" 0.0;
1458 inherit: "default" 0.0;
1461 description { state: "disabled" 0.0;
1462 inherit: "default" 0.0;
1467 part { name: "elm.icon.clipper";
1469 description { state: "default" 0.0;
1472 to: "padding_left_top";
1476 to: "padding_right_bottom";
1478 color: 255 255 255 255;
1480 description { state: "animation" 0.0;
1481 inherit: "default" 0.0;
1482 color: 255 255 255 255;
1484 description { state: "selected" 0.0;
1485 inherit: "default" 0.0;
1486 color: 255 255 255 255;
1488 description { state: "disabled" 0.0;
1489 inherit: "default" 0.0;
1490 color: 255 255 255 255;
1493 part { name: "elm.icon_new.clipper";
1495 description { state: "default" 0.0;
1498 to: "padding_left_top";
1502 to: "padding_right_bottom";
1504 color: 255 255 255 255;
1506 description { state: "animation" 0.0;
1507 inherit: "default" 0.0;
1508 color: 255 255 255 255;
1510 description { state: "selected" 0.0;
1511 inherit: "default" 0.0;
1512 color: 255 255 255 255;
1514 description { state: "disabled" 0.0;
1515 inherit: "default" 0.0;
1516 color: 255 255 255 255;
1519 part { name: "elm.text.dim.left";
1523 description { state: "default" 0.0;
1530 to_x: "elm.text.clipper";
1535 to_x: "elm.text.clipper";
1538 image.normal: "00_effect_tab_text_dim_left.png";
1540 description { state: "show" 0.0;
1541 inherit: "default" 0.0;
1545 part { name: "elm.text.dim.right";
1549 description { state: "default" 0.0;
1556 to_x: "elm.text.clipper";
1561 to_x: "elm.text.clipper";
1564 image.normal: "00_effect_tab_text_dim_right.png";
1566 description { state: "show" 0.0;
1567 inherit: "default" 0.0;
1571 part { name: "divider";
1574 description { state: "default" 0.0;
1585 description { state: "hidden" 0.0;
1586 inherit: "default" 0.0;
1590 part { name: "divider_left";
1593 description { state: "default" 0.0;
1594 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
1605 part { name: "divider_right";
1608 description { state: "default" 0.0;
1609 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;
1620 part { name: "highlight";
1623 description { state: "default" 0.0;
1626 normal: "00_tab_focus.png";
1631 description { state: "highlighted" 0.0;
1632 inherit: "default" 0.0;
1636 part { name: "event";
1643 description { state: "default" 0.0;
1647 // for debuging //////////////////////////////
1648 /* part { name: "dbg";
1652 description { state: "default" 0.0;
1653 rel1.relative: 1.0 0.0;
1654 rel2.relative: 1.0 0.0;
1658 style: "tabbar_text_style_30";
1666 program { name: "go_active";
1667 signal: "elm,state,selected";
1669 action: STATE_SET "selected" 0.0;
1670 target: "elm.icon.clipper";
1671 target: "elm.icon.proxy.clipper";
1672 target: "selected_line";
1673 after: "selected_text";
1675 program { name: "selected_text";
1679 get_state(PART:"elm.text", st, 30, vl);
1680 if (strcmp(st, "default"))
1681 run_program(PROGRAM:"slide_start");
1684 program { name: "go_passive";
1685 signal: "elm,state,unselected";
1687 action: STATE_SET "default" 0.0;
1688 target: "elm.icon.clipper";
1689 target: "elm.icon.proxy.clipper";
1690 target: "selected_line";
1691 after: "unselected_text";
1693 program { name: "unselected_text";
1697 get_state(PART:"elm.text", st, 30, vl);
1698 if (strcmp(st, "default"))
1699 run_program(PROGRAM:"slide_stop");
1702 program { name: "moving";
1703 signal: "elm,state,moving";
1705 action: STATE_SET "moving" 0.0;
1708 program { name: "pressed";
1709 signal: "mouse,down,1";
1711 action: STATE_SET "pressed" 0.0;
1721 new Float:dx, Float:dy;
1722 get_state(PART:"bg_cover", st, 30, vl);
1723 if (strcmp(st, "moving"))
1725 get_drag(PART:"event", dx, dy);
1726 if ((abs(dx)*abs(dx))+(abs(dy)*abs(dy)) > 400)
1728 set_drag(PART:"event", 0.0, 0.0);
1729 set_state(PART:"bg_cover", "default", 0.0);
1731 set_drag(PART:"event", 0.0, 0.0);
1735 program { name: "unpressed";
1736 signal: "mouse,up,1";
1739 set_drag(PART:"event", 0.0, 0.0);
1740 set_state(PART:"bg_cover", "default", 0.0);
1743 program { name: "go";
1744 signal: "mouse,clicked,1";
1746 action: SIGNAL_EMIT "elm,action,click" "elm";
1747 after: "play_sound";
1749 program { name: "play_sound";
1750 action: PLAY_SAMPLE "touch_sound" 1.0;
1752 program { name: "mouse,in";
1755 action: SIGNAL_EMIT "elm,mouse,in" "elm";
1757 program { name: "mouse,out";
1758 signal: "mouse,out";
1760 action: SIGNAL_EMIT "elm,mouse,out" "elm";
1762 program { name: "disable";
1763 signal: "elm,state,disabled";
1766 set_int(item_state, ITEM_STATE_DISABLED);
1767 set_state(PART:"bg", "disabled", 0.0);
1768 set_state(PART:"elm.text.clipper", "disabled", 0.0);
1769 set_state(PART:"elm.icon.clipper", "disabled", 0.0);
1770 set_state(PART:"elm.icon.proxy.clipper", "disabled", 0.0);
1771 run_program(PROGRAM:"label_set,animation,done");
1772 run_program(PROGRAM:"icon_set,animation,done");
1775 program { name: "enable";
1776 signal: "elm,state,enabled";
1779 set_int(item_state, ITEM_STATE_ENABLED);
1780 set_state(PART:"bg", "default", 0.0);
1781 set_state(PART:"elm.text.clipper", "default", 0.0);
1782 set_state(PART:"elm.icon.clipper", "default", 0.0);
1783 set_state(PART:"elm.icon.proxy.clipper", "default", 0.0);
1784 run_program(PROGRAM:"label_set,animation,done");
1785 run_program(PROGRAM:"icon_set,animation,done");
1788 program { name: "label_set,animation,forward";
1789 signal: "elm,state,label_set,forward";
1791 after: "label_set,sync";
1793 program { name: "label_set,animation,backward";
1794 signal: "elm,state,label_set,backward";
1796 after: "label_set,sync";
1798 program { name: "label_set,sync";
1799 signal: "elm,state,label_set";
1804 get_state(PART:"elm.text", st, 30, vl);
1805 set_state(PART:"elm.text_new", st, vl);
1807 after: "label_set,animation";
1809 program { name: "label_set,animation";
1810 action: STATE_SET "animation" 0.0;
1811 target: "elm.text.clipper";
1812 target: "elm.text_new.clipper";
1813 after: "label_set,animation,done";
1815 program { name: "label_set,animation,done";
1816 action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
1818 program { name: "label,reset";
1819 signal: "elm,state,label,reset";
1822 set_state(PART:"elm.text_new.clipper", "default", 0.0);
1823 if (get_int(item_state) != ITEM_STATE_DISABLED)
1824 set_state(PART:"elm.text.clipper", "default", 0.0);
1826 set_state(PART:"elm.text.clipper", "disabled", 0.0);
1829 program { name: "icon_set,animation,forward";
1830 signal: "elm,state,icon_set,forward";
1832 after: "icon_set,animation";
1834 program { name: "icon_set,animation,backward";
1835 signal: "elm,state,icon_set,backward";
1837 after: "icon_set,animation";
1839 program { name: "icon_set,animation";
1840 signal: "elm,state,icon_set";
1842 action: STATE_SET "animation" 0.0;
1843 target: "elm.icon.clipper";
1844 target: "elm.icon_new.clipper";
1845 target: "elm.icon.proxy.clipper";
1846 target: "elm.icon_new.proxy.clipper";
1847 after: "icon_set,animation,done";
1849 program { name: "icon_set,animation,done";
1850 action: SIGNAL_EMIT "elm,state,icon_set,done" "elm";
1852 program { name: "icon,reset";
1853 signal: "elm,state,icon,reset";
1856 set_state(PART:"elm.icon_new.clipper", "default", 0.0);
1857 if (get_int(item_state) != ITEM_STATE_DISABLED)
1859 set_state(PART:"elm.icon.clipper", "default", 0.0);
1860 set_state(PART:"elm.icon.proxy.clipper", "default", 0.0);
1864 set_state(PART:"elm.icon.clipper", "disabled", 0.0);
1865 set_state(PART:"elm.icon.proxy.clipper", "disabled", 0.0);
1869 program { name: "text_show";
1870 signal: "elm,state,text,visible";
1875 get_state(PART:"elm.swallow.icon", st, 30, vl);
1876 if (!strcmp(st, "icononly"))
1878 set_state(PART:"elm.swallow.icon", "visible", 0.0);
1879 set_state(PART:"icon_rect", "visible", 0.0);
1880 set_state(PART:"padding_after_icon", "visible", 0.0);
1881 set_state(PART:"bg", "icon_text", 0.0);
1883 set_state(PART:"elm.text", "visible", 0.0);
1886 program { name: "text_hide";
1887 signal: "elm,state,text,hidden";
1892 get_state(PART:"elm.swallow.icon", st, 30, vl);
1893 if (strcmp(st, "default"))
1895 set_state(PART:"elm.swallow.icon", "icononly", 0.0);
1896 set_state(PART:"icon_rect", "icononly", 0.0);
1897 set_state(PART:"padding_after_icon", "icononly", 0.0);
1899 set_state(PART:"elm.text", "default", 0.0);
1900 set_state(PART:"bg", "default", 0.0);
1903 program { name: "icon_show";
1904 signal: "elm,state,icon,visible";
1909 get_state(PART:"elm.text", st, 30, vl);
1910 if (strncmp(st, "default", 7))
1912 set_state(PART:"elm.swallow.icon", "visible", 0.0);
1913 set_state(PART:"icon_rect", "visible", 0.0);
1914 set_state(PART:"padding_after_icon", "visible", 0.0);
1915 set_state(PART:"bg", "icon_text", 0.0);
1919 set_state(PART:"elm.swallow.icon", "icononly", 0.0);
1920 set_state(PART:"icon_rect", "icononly", 0.0);
1921 set_state(PART:"padding_after_icon", "icononly", 0.0);
1925 program { name: "icon_hide";
1926 signal: "elm,state,icon,hidden";
1929 set_state(PART:"elm.swallow.icon", "default", 0.0);
1930 set_state(PART:"icon_rect", "default", 0.0);
1931 set_state(PART:"padding_after_icon", "default", 0.0);
1932 set_state(PART:"bg", "default", 0.0);
1935 program { name: "badge_show";
1936 signal: "elm,state,elm.text.badge,visible";
1938 action: STATE_SET "visible" 0.0;
1939 target: "elm.text.badge";
1940 target: "elm.image.badge";
1942 program { name: "badge_hide";
1943 signal: "elm,state,elm.text.badge,hidden";
1945 action: STATE_SET "default" 0.0;
1946 target: "elm.text.badge";
1947 target: "elm.image.badge";
1949 program { name: "divider_visible_1";
1950 signal: "elm,order,first,item";
1952 action: STATE_SET "default" 0.0;
1955 program { name: "divider_visible_2";
1956 signal: "elm,order,default,item";
1958 action: STATE_SET "default" 0.0;
1961 program { name: "divider_hidden";
1962 signal: "elm,order,last,item";
1964 action: STATE_SET "hidden" 0.0;
1967 program { name: "highlight_on";
1968 signal: "elm,highlight,on";
1970 action: STATE_SET "highlighted" 0.0;
1971 target: "highlight";
1973 program { name: "highlight_off";
1974 signal: "elm,highlight,off";
1976 action: STATE_SET "default" 0.0;
1977 target: "highlight";
1979 program { name: "tab_item_2";
1980 signal: "elm,number,item,2";
1983 set_int(items_number, 2);
1984 set_state(PART:"padding.badge", "default", 0.10);
1987 program { name: "tab_item_3";
1988 signal: "elm,number,item,3";
1991 set_int(items_number, 3);
1992 set_state(PART:"padding.badge", "default", 0.06);
1995 program { name: "tab_item_4";
1996 signal: "elm,number,item,4";
1999 set_int(items_number, 4);
2001 after: "tab_item_upper_4";
2003 program { name: "tab_item_5";
2004 signal: "elm,number,item,5";
2007 set_int(items_number, 5);
2009 after: "tab_item_upper_4";
2011 program { name: "tab_item_6";
2012 signal: "elm,number,item,6";
2015 set_int(items_number, 6);
2017 after: "tab_item_upper_4";
2019 program { name: "tab_item_7";
2020 signal: "elm,number,item,7";
2023 set_int(items_number, 7);
2025 after: "tab_item_upper_4";
2027 program { name: "tab_item_8";
2028 signal: "elm,number,item,8";
2031 set_int(items_number, 8);
2033 after: "tab_item_upper_4";
2035 program { name: "tab_item_9";
2036 signal: "elm,number,item,9";
2039 set_int(items_number, 9);
2041 after: "tab_item_upper_4";
2043 program { name: "tab_item_10";
2044 signal: "elm,number,item,10";
2047 set_int(items_number, 10);
2049 after: "tab_item_upper_4";
2051 program { name: "tab_item_upper_4";
2053 set_state(PART:"padding.badge", "default", 0.04);
2056 program { name: "slide_start";
2058 if (!get_int(sliding_timer) && !get_int(end_timer)) {
2059 set_int(sliding_timer, timer(1.5, "sliding", TOOLBAR_SLIDING_TEXT_OFFSET));
2063 program { name: "slide_stop";
2071 group { name: "elm/toolbar/base/tabbar/item_with_title";
2072 inherit: "elm/toolbar/base/tabbar";
2074 image: "00_sub_title_bg.png" COMP;
2077 part { name: "base_bg";
2081 state: "default" 0.0;
2091 normal: "00_sub_title_bg.png";
2100 group { name: "elm/toolbar/item/tabbar/item_with_title";
2101 inherit: "elm/toolbar/item/tabbar";
2103 image: "00_effect_tab_text_dim_left_02.png" COMP;
2104 image: "00_effect_tab_text_dim_right_02.png" COMP;
2107 part { name: "elm.text.dim.left";
2108 description { state: "default" 0.0;
2109 image.normal: "00_effect_tab_text_dim_left_02.png";
2111 description { state: "show" 0.0;
2112 inherit: "default" 0.0;
2116 part { name: "elm.text.dim.right";
2117 description { state: "default" 0.0;
2118 image.normal: "00_effect_tab_text_dim_right_02.png";
2120 description { state: "show" 0.0;
2121 inherit: "default" 0.0;
2125 part { name: "divider";
2128 description { state: "default" 0.0;
2139 description { state: "hidden" 0.0;
2140 inherit: "default" 0.0;
2144 part { name: "divider_left";
2147 description { state: "default" 0.0;
2148 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
2159 part { name: "divider_right";
2162 description { state: "default" 0.0;
2163 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;