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";
397 program { name: "play_sound";
398 action: PLAY_SAMPLE "touch_sound" 1.0;
400 program { name: "mouse,in";
403 action: SIGNAL_EMIT "elm,mouse,in" "elm";
405 program { name: "mouse,out";
408 action: SIGNAL_EMIT "elm,mouse,out" "elm";
410 program { name: "disable";
411 signal: "elm,state,disabled";
414 set_int(item_state, ITEM_STATE_DISABLED);
415 set_state(PART:"bg", "disabled", 0.0);
416 set_state(PART:"elm.text.clipper", "disabled", 0.0);
417 run_program(PROGRAM:"label_set,animation,done");
420 program { name: "enable";
421 signal: "elm,state,enabled";
424 set_int(item_state, ITEM_STATE_ENABLED);
425 set_state(PART:"bg", "default", 0.0);
426 set_state(PART:"elm.text.clipper", "default", 0.0);
427 run_program(PROGRAM:"label_set,animation,done");
430 program { name: "label_set,animation,forward";
431 signal: "elm,state,label_set,forward";
433 after: "label_set,sync";
435 program { name: "label_set,animation,backward";
436 signal: "elm,state,label_set,backward";
438 after: "label_set,sync";
440 program { name: "label_set,sync";
441 signal: "elm,state,label_set";
446 get_state(PART:"elm.text", st, 30, vl);
447 set_state(PART:"elm.text_new", st, vl);
449 after: "label_set,animation";
451 program { name: "label_set,animation";
452 action: STATE_SET "animation" 0.0;
453 target: "elm.text.clipper";
454 target: "elm.text_new.clipper";
455 transition: LINEAR 0.2;
456 after: "label_set,animation,done";
458 program { name: "label_set,animation,done";
459 action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
461 program { name: "label,reset";
462 signal: "elm,state,label,reset";
465 set_state(PART:"elm.text_new.clipper", "default", 0.0);
466 if (get_int(item_state) != ITEM_STATE_DISABLED)
467 set_state(PART:"elm.text.clipper", "default", 0.0);
469 set_state(PART:"elm.text.clipper", "disabled", 0.0);
472 program { name: "text_show";
473 signal: "elm,state,text,visible";
476 set_state(PART:"elm.text", "visible", 0.0);
479 program { name: "text_hide";
480 signal: "elm,state,text,hidden";
483 set_state(PART:"elm.text", "default", 0.0);
486 program { name: "text_only_item_1";
487 signal: "elm,number,item,1";
490 set_int(items_number, 1);
491 set_state(PART:"padding_left_top", "1_item", 0.0);
492 set_state(PART:"padding_right_bottom", "1_item", 0.0);
495 program { name: "text_only_item_2";
496 signal: "elm,number,item,2";
499 set_int(items_number, 2);
500 set_state(PART:"padding_left_top", "2_items", 0.0);
501 set_state(PART:"padding_right_bottom", "2_items", 0.0);
504 program { name: "text_only_item_3";
505 signal: "elm,number,item,3";
508 set_int(items_number, 3);
509 set_state(PART:"padding_left_top", "3_items", 0.0);
510 set_state(PART:"padding_right_bottom", "3_items", 0.0);
513 program { name: "divider_visible";
514 signal: "elm,order,first,item";
515 signal: "elm,order,default,item";
517 action: STATE_SET "default" 0.0;
520 program { name: "divider_hidden";
521 signal: "elm,order,last,item";
523 action: STATE_SET "hidden" 0.0;
526 program { name: "highlight_on";
527 signal: "elm,highlight,on";
529 action: STATE_SET "highlighted" 0.0;
532 program { name: "highlight_off";
533 signal: "elm,highlight,off";
535 action: STATE_SET "default" 0.0;
541 group { name: "elm/toolbar/separator/default";
543 part { name: "divider";
546 description { state: "default" 0.0;
558 part { name: "divider_left";
561 description { state: "default" 0.0;
562 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
573 part { name: "divider_right";
576 description { state: "default" 0.0;
577 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;
591 group { name: "elm/toolbar/object/default";
593 part { name: "elm.swallow.object"; // object group
596 state: "default" 0.0;
602 group { name: "elm/toolbar/base/tabbar";
604 item: "focus_highlight" "on";
607 image: "00_effect_tab_bounce_left.png" COMP;
608 image: "00_effect_tab_bounce_right.png" COMP;
609 image: "00_title_bg.png" COMP;
612 public left_timer, right_timer;
613 public l_timer(val) {
614 emit("do-hide-left-shadow", "");
615 set_int(left_timer, 0);
618 public r_timer(val) {
619 emit("do-hide-right-shadow", "");
620 set_int(right_timer, 0);
628 description { state: "default" 0.0;
631 part { name: "base_bg";
635 state: "default" 0.0;
645 normal: "00_title_bg.png";
649 part { name: "left_padding";
654 state: "default" 0.0;
661 rel1.relative: 0.0 0.0;
662 rel2.relative: 0.0 1.0;
665 part { name: "right_padding";
670 state: "default" 0.0;
677 rel1.relative: 1.0 0.0;
678 rel2.relative: 1.0 1.0;
681 part { name: "clipper";
686 state: "default" 0.0;
687 rel1.to: "left_padding";
688 rel1.relative: 1.0 0.0;
689 rel2.to: "right_padding";
690 rel2.relative: 0.0 1.0;
693 part { name: "elm.swallow.content";
698 state: "default" 0.0;
703 part { name: "left_shadow_clip";
707 description { state: "default" 0.0;
709 color: 255 255 255 0;
711 description { state: "show" 0.0;
714 part { name: "right_shadow_clip";
718 description { state: "default" 0.0;
720 color: 255 255 255 0;
722 description { state: "show" 0.0;
725 part { name: "shadow_left";
726 clip_to: "left_shadow_clip";
730 description { state: "default" 0.0;
734 color: 255 255 255 255;
735 rel1.relative: 0.0 0.0;
736 rel2.relative: 0.0 1.0;
737 image.normal: "00_effect_tab_bounce_left.png";
740 part { name: "shadow_right";
741 clip_to: "right_shadow_clip";
745 description { state: "default" 0.0;
749 color: 255 255 255 255;
750 rel1.relative: 1.0 0.0;
751 rel2.relative: 1.0 1.0;
752 image.normal: "00_effect_tab_bounce_right.png";
757 program { name: "load";
759 set_int(left_timer, 0);
760 set_int(right_timer, 0);
763 program { name: "left_shadow_show";
764 signal: "do-show-left-shadow";
766 action: STATE_SET "show" 0.0;
767 transition: LINEAR 0.3;
768 target: "left_shadow_clip";
770 program { name: "left_shadow_hide";
771 signal: "do-hide-left-shadow";
773 action: STATE_SET "default" 0.0;
774 transition: LINEAR 0.3;
775 target: "left_shadow_clip";
777 program { name: "right_shadow_show";
778 signal: "do-show-right-shadow";
780 action: STATE_SET "show" 0.0;
781 transition: LINEAR 0.3;
782 target: "right_shadow_clip";
784 program { name: "right_shadow_hide";
785 signal: "do-hide-right-shadow";
787 action: STATE_SET "default" 0.0;
788 transition: LINEAR 0.3;
789 target: "right_shadow_clip";
791 program { name: "edge_left";
792 signal: "elm,edge,left";
796 v = get_int(left_timer);
798 emit("do-show-left-shadow", "");
800 if (v > 0) cancel_timer(v);
801 v = timer(0.5, "l_timer", 0);
802 set_int(left_timer, v);
805 program { name: "edge_right";
806 signal: "elm,edge,right";
810 v = get_int(right_timer);
812 emit("do-show-right-shadow", "");
814 if (v > 0) cancel_timer(v);
815 v = timer(0.5, "r_timer", 0);
816 set_int(right_timer, v);
822 group { name: "elm/toolbar/item/tabbar";
824 image: "00_tab_press.png" COMP;
825 image: "00_badge_bg.png" COMP;
826 image: "00_tab_focus.png" COMP;
827 image: "00_tab_select_bar.png" COMP;
828 image: "00_effect_tab_text_dim_left.png" COMP;
829 image: "00_effect_tab_text_dim_right.png" COMP;
832 data.item: "transition_animation_on" "1";
834 public item_state = ITEM_STATE_ENABLED;
835 public items_number = 0;
836 public sliding_timer;
840 public loop_count = 0;
844 set_state(PART:"elm.text", "visible", 0.0);
845 get_geometry(PART:"elm.text", x, y, w, h);
846 set_int(org_text_w, w);
848 set_state(PART:"elm.text", "sliding", 0.0);
849 get_geometry(PART:"elm.text", x, y, w, h);
853 set_int(loop_count, 0);
854 if (get_int(sliding_timer)) cancel_timer(get_int(sliding_timer));
855 set_int(sliding_timer, 0);
856 if (get_int(end_timer)) cancel_timer(get_int(end_timer));
857 set_int(end_timer, 0);
858 set_state(PART:"elm.text.dim.left", "default", 0.0);
859 set_state(PART:"elm.text_new.clipper", "default", 0.0);
861 custom_state(PART:"elm.text", "sliding", 0.0);
862 set_state_val(PART:"elm.text", STATE_REL1_OFFSET, TOOLBAR_SLIDING_TEXT_OFFSET, 0);
863 set_state_val(PART:"elm.text", STATE_REL2_OFFSET, TOOLBAR_SLIDING_TEXT_OFFSET, 0);
864 set_state(PART:"elm.text", "custom", 0.0);
866 set_state(PART:"elm.text", "visible", 0.0);
867 set_state(PART:"elm.text.dim.right", "default", 0.0);
870 public sliding(val) {
872 if (val == TOOLBAR_SLIDING_TEXT_OFFSET) {
873 set_int(loop_count, get_int(loop_count) + 1);
875 if (get_int(text_w) <= get_int(org_text_w)) {
880 val -= TOOLBAR_SLIDING_PER_FPS;
881 // for debuging //////////////////////////////
882 /* snprintf(buf, 127, "%d:%d:%d",
883 val, get_int(org_text_w), get_int(text_w));
884 set_text(PART:"dbg", buf);*/
886 if (val <= -get_int(text_w) - TOOLBAR_SLIDING_TEXT_GAP + TOOLBAR_SLIDING_TEXT_OFFSET)
887 val = TOOLBAR_SLIDING_TEXT_OFFSET;
888 custom_state(PART:"elm.text", "sliding", 0.0);
889 set_state_val(PART:"elm.text", STATE_REL1_OFFSET, val, 0);
890 set_state_val(PART:"elm.text", STATE_REL2_OFFSET, val, 0);
891 set_state(PART:"elm.text", "custom", 0.0);
893 set_state(PART:"elm.text_new.clipper", "animation", 0.0);
894 get_text(PART:"elm.text", buf, 128);
895 set_text(PART:"elm.text_new", buf);
896 custom_state(PART:"elm.text_new", "sliding", 0.0);
897 set_state_val(PART:"elm.text_new", STATE_REL1_OFFSET,
898 val + get_int(text_w) + TOOLBAR_SLIDING_TEXT_GAP, 0);
899 set_state_val(PART:"elm.text_new", STATE_REL2_OFFSET,
900 val + get_int(text_w) + TOOLBAR_SLIDING_TEXT_GAP, 0);
901 set_state(PART:"elm.text_new", "custom", 0.0);
903 set_state(PART:"elm.text.dim.left", "show", 0.0);
904 set_state(PART:"elm.text.dim.right", "show", 0.0);
906 if (val == TOOLBAR_SLIDING_TEXT_OFFSET || val <= -get_int(text_w))
907 set_state(PART:"elm.text.dim.left", "default", 0.0);
909 if (val == TOOLBAR_SLIDING_TEXT_OFFSET) {
910 if (get_int(loop_count) < 3)
911 set_int(sliding_timer, timer(2.0, "sliding", TOOLBAR_SLIDING_TEXT_OFFSET));
913 set_int(end_timer, timer(0.5, "ender", 1));
915 set_int(sliding_timer, timer(1.0/TOOLBAR_SLIDING_FPS, "sliding", val));
923 description { state: "default" 0.0;
927 description { state: "icon_text" 0.0;
928 inherit: "default" 0.0;
932 part { name: "selected_line";
936 description { state: "default" 0.0;
944 normal: "00_tab_select_bar.png";
953 description { state: "selected" 0.0;
954 inherit: "default" 0.0;
958 part { name: "bg_cover";
962 description { state: "default" 0.0;
965 normal: "00_tab_press.png";
970 description { state: "pressed" 0.0;
971 inherit: "default" 0.0;
974 description { state: "moving" 0.0;
975 inherit: "default" 0.0;
979 part { name: "padding_left_top";
983 description { state: "default" 0.0;
985 rel2.relative: 0.0 0.0;
992 part { name: "padding_right_bottom";
996 description { state: "default" 0.0;
998 rel1.relative: 1.0 1.0;
1010 description { state: "default" 0.0;
1015 to: "padding_left_top";
1019 to_x: "padding_right_bottom";
1020 to_y: "padding_left_top";
1025 description { state: "visible" 0.0;
1026 inherit: "default" 0.0;
1027 min: TABBAR_ITEM_ICON_SIZE_INC;
1029 description { state: "icononly" 0.0;
1030 inherit: "default" 0.0;
1033 part { name: "padding_after_icon";
1037 description { state: "default" 0.0; //when only icon or no icon is there
1043 rel2.to: "icon_rect";
1048 description { state: "visible" 0.0;
1049 inherit: "default" 0.0;
1052 description { state: "icononly" 0.0;
1053 inherit: "default" 0.0;
1056 part { name: "padding_before_text";
1060 description { state: "default" 0.0; //when only icon or no icon is there
1064 to_x: "padding_left_top";
1069 to_x: "padding_right_bottom";
1077 part { name: "elm.swallow.icon.proxy";
1080 clip_to: "elm.icon.proxy.clipper";
1081 description { state: "default" 0.0;
1082 source: "elm.swallow.icon";
1083 proxy.source_clip: 0;
1084 rel1.to: "elm.swallow.icon";
1086 rel2.to: "elm.swallow.icon";
1090 part { name: "elm.swallow.icon_new.proxy";
1093 clip_to: "elm.icon_new.proxy.clipper";
1094 description { state: "default" 0.0;
1095 source: "elm.swallow.icon_new";
1096 proxy.source_clip: 0;
1097 rel1.to: "elm.swallow.icon_new";
1099 rel2.to: "elm.swallow.icon_new";
1103 part { name: "elm.swallow.icon";
1106 clip_to: "elm.icon.clipper";
1107 description { state: "default" 0.0;
1109 min: TABBAR_ITEM_ICON_SIZE_INC;
1110 max: TABBAR_ITEM_ICON_SIZE_INC;
1112 to: "padding_left_top";
1115 to: "padding_right_bottom";
1118 aspect_preference: HORIZONTAL;
1120 description { state: "visible" 0.0;
1122 min: TABBAR_ITEM_ICON_SIZE_INC;
1123 max: TABBAR_ITEM_ICON_SIZE_INC;
1127 to_x: "padding_left_top";
1128 to_y: "padding_before_text";
1132 to_x: "padding_right_bottom";
1133 to_y: "padding_before_text";
1136 aspect_preference: HORIZONTAL;
1138 description { state: "icononly" 0.0;
1139 inherit: "default" 0.0;
1143 part { name: "elm.swallow.icon_new";
1146 clip_to: "elm.icon_new.clipper";
1147 description { state: "default" 0.0;
1149 min: TABBAR_ITEM_ICON_SIZE_INC;
1150 max: TABBAR_ITEM_ICON_SIZE_INC;
1151 rel1.to: "padding_left_top";
1152 rel2.to: "padding_right_bottom";
1154 aspect_preference: HORIZONTAL;
1156 description { state: "visible" 0.0;
1158 min: TABBAR_ITEM_ICON_SIZE_INC;
1159 max: TABBAR_ITEM_ICON_SIZE_INC;
1162 to_x: "padding_left_top";
1163 to_y: "padding_before_text";
1167 to_x: "padding_right_bottom";
1168 to_y: "padding_before_text";
1171 aspect_preference: HORIZONTAL;
1173 description { state: "icononly" 0.0;
1174 inherit: "default" 0.0;
1178 part { name: "elm.text";
1182 clip_to: "elm.text.clipper";
1183 description { state: "default" 0.0;
1187 to_x: "padding_left_top";
1188 to_y: "padding_after_icon";
1192 to: "padding_right_bottom";
1197 style: "tabbar_text_style_30";
1202 description { state: "visible" 0.0;
1203 inherit: "default" 0.0;
1206 description { state: "sliding" 0.0;
1207 inherit: "visible" 0.0;
1208 rel1.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1209 rel2.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1214 part { name: "elm.text_new";
1218 clip_to: "elm.text_new.clipper";
1219 description { state: "default" 0.0;
1223 to_x: "padding_left_top";
1224 to_y: "padding_after_icon";
1228 to: "padding_right_bottom";
1233 style: "tabbar_text_style_30";
1238 description { state: "visible" 0.0;
1239 inherit: "default" 0.0;
1242 description { state: "sliding" 0.0;
1243 inherit: "visible" 0.0;
1244 rel1.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1245 rel2.offset: TOOLBAR_SLIDING_TEXT_OFFSET 0;
1250 part { name: "padding.badge";
1254 description { state: "default" 0.0;
1266 description { state: "default" 0.10;
1267 inherit: "default" 0.0;
1270 description { state: "default" 0.06;
1271 inherit: "default" 0.0;
1274 description { state: "default" 0.04;
1275 inherit: "default" 0.0;
1279 part { name: "elm.image.badge";
1282 description { state: "default" 0.0;
1287 to: "left.padding.text";
1291 to: "right.padding.text";
1295 normal: "00_badge_bg.png";
1300 description { state: "visible" 0.0;
1301 inherit: "default" 0.0;
1305 part { name: "left.padding.text";
1309 state: "default" 0.0;
1314 to: "elm.text.badge";
1318 to: "elm.text.badge";
1324 part { name: "right.padding.text";
1328 state: "default" 0.0;
1333 to: "padding.badge";
1337 to: "padding.badge";
1343 part { name: "elm.text.badge";
1348 state: "default" 0.0;
1351 to: "right.padding.text";
1355 to: "right.padding.text";
1361 color: 250 250 250 255;
1363 font: "Tizen:style=Bold";
1366 text_class: "tizen";
1369 description { state: "visible" 0.0;
1370 inherit: "default" 0.0;
1374 part { name: "elm.text.clipper";
1376 description { state: "default" 0.0;
1379 to: "padding_left_top";
1383 to: "padding_right_bottom";
1385 color: 255 255 255 255;
1387 description { state: "animation" 0.0;
1388 inherit: "default" 0.0;
1389 color: 255 255 255 0;
1391 description { state: "disabled" 0.0;
1392 inherit: "default" 0.0;
1393 color: 255 255 255 153;
1396 part { name: "elm.text_new.clipper";
1398 description { state: "default" 0.0;
1401 to: "padding_left_top";
1405 to: "padding_right_bottom";
1407 color: 255 255 255 0;
1409 description { state: "animation" 0.0;
1410 inherit: "default" 0.0;
1411 color: 255 255 255 255;
1413 description { state: "disabled" 0.0;
1414 inherit: "default" 0.0;
1415 color: 255 255 255 153;
1418 part { name: "elm.icon.proxy.clipper";
1420 description { state: "default" 0.0;
1423 to: "padding_left_top";
1427 to: "padding_right_bottom";
1431 description { state: "animation" 0.0;
1432 inherit: "default" 0.0;
1435 description { state: "selected" 0.0;
1436 inherit: "default" 0.0;
1439 description { state: "disabled" 0.0;
1440 inherit: "default" 0.0;
1444 part { name: "elm.icon_new.proxy.clipper";
1446 description { state: "default" 0.0;
1449 to: "padding_left_top";
1453 to: "padding_right_bottom";
1457 description { state: "animation" 0.0;
1458 inherit: "default" 0.0;
1461 description { state: "selected" 0.0;
1462 inherit: "default" 0.0;
1465 description { state: "disabled" 0.0;
1466 inherit: "default" 0.0;
1471 part { name: "elm.icon.clipper";
1473 description { state: "default" 0.0;
1476 to: "padding_left_top";
1480 to: "padding_right_bottom";
1482 color: 255 255 255 255;
1484 description { state: "animation" 0.0;
1485 inherit: "default" 0.0;
1486 color: 255 255 255 255;
1488 description { state: "selected" 0.0;
1489 inherit: "default" 0.0;
1490 color: 255 255 255 255;
1492 description { state: "disabled" 0.0;
1493 inherit: "default" 0.0;
1494 color: 255 255 255 255;
1497 part { name: "elm.icon_new.clipper";
1499 description { state: "default" 0.0;
1502 to: "padding_left_top";
1506 to: "padding_right_bottom";
1508 color: 255 255 255 255;
1510 description { state: "animation" 0.0;
1511 inherit: "default" 0.0;
1512 color: 255 255 255 255;
1514 description { state: "selected" 0.0;
1515 inherit: "default" 0.0;
1516 color: 255 255 255 255;
1518 description { state: "disabled" 0.0;
1519 inherit: "default" 0.0;
1520 color: 255 255 255 255;
1523 part { name: "elm.text.dim.left";
1527 description { state: "default" 0.0;
1534 to_x: "elm.text.clipper";
1539 to_x: "elm.text.clipper";
1542 image.normal: "00_effect_tab_text_dim_left.png";
1544 description { state: "show" 0.0;
1545 inherit: "default" 0.0;
1549 part { name: "elm.text.dim.right";
1553 description { state: "default" 0.0;
1560 to_x: "elm.text.clipper";
1565 to_x: "elm.text.clipper";
1568 image.normal: "00_effect_tab_text_dim_right.png";
1570 description { state: "show" 0.0;
1571 inherit: "default" 0.0;
1575 part { name: "divider";
1578 description { state: "default" 0.0;
1589 description { state: "hidden" 0.0;
1590 inherit: "default" 0.0;
1594 part { name: "divider_left";
1597 description { state: "default" 0.0;
1598 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
1609 part { name: "divider_right";
1612 description { state: "default" 0.0;
1613 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;
1624 part { name: "highlight";
1627 description { state: "default" 0.0;
1630 normal: "00_tab_focus.png";
1635 description { state: "highlighted" 0.0;
1636 inherit: "default" 0.0;
1640 part { name: "event";
1647 description { state: "default" 0.0;
1651 // for debuging //////////////////////////////
1652 /* part { name: "dbg";
1656 description { state: "default" 0.0;
1657 rel1.relative: 1.0 0.0;
1658 rel2.relative: 1.0 0.0;
1662 style: "tabbar_text_style_30";
1670 program { name: "go_active";
1671 signal: "elm,state,selected";
1673 action: STATE_SET "selected" 0.0;
1674 target: "elm.icon.clipper";
1675 target: "elm.icon.proxy.clipper";
1676 target: "selected_line";
1677 after: "selected_text";
1679 program { name: "selected_text";
1683 get_state(PART:"elm.text", st, 30, vl);
1684 if (strcmp(st, "default"))
1685 run_program(PROGRAM:"slide_start");
1688 program { name: "go_passive";
1689 signal: "elm,state,unselected";
1691 action: STATE_SET "default" 0.0;
1692 target: "elm.icon.clipper";
1693 target: "elm.icon.proxy.clipper";
1694 target: "selected_line";
1695 after: "unselected_text";
1697 program { name: "unselected_text";
1701 get_state(PART:"elm.text", st, 30, vl);
1702 if (strcmp(st, "default"))
1703 run_program(PROGRAM:"slide_stop");
1706 program { name: "moving";
1707 signal: "elm,state,moving";
1709 action: STATE_SET "moving" 0.0;
1712 program { name: "pressed";
1713 signal: "mouse,down,1";
1715 action: STATE_SET "pressed" 0.0;
1725 new Float:dx, Float:dy;
1726 get_state(PART:"bg_cover", st, 30, vl);
1727 if (strcmp(st, "moving"))
1729 get_drag(PART:"event", dx, dy);
1730 if ((abs(dx)*abs(dx))+(abs(dy)*abs(dy)) > 400)
1732 set_drag(PART:"event", 0.0, 0.0);
1733 set_state(PART:"bg_cover", "default", 0.0);
1735 set_drag(PART:"event", 0.0, 0.0);
1739 program { name: "unpressed";
1740 signal: "mouse,up,1";
1743 set_drag(PART:"event", 0.0, 0.0);
1744 set_state(PART:"bg_cover", "default", 0.0);
1747 program { name: "go";
1748 signal: "mouse,clicked,1";
1750 action: SIGNAL_EMIT "elm,action,click" "elm";
1751 after: "play_sound";
1753 program { name: "play_sound";
1754 action: PLAY_SAMPLE "touch_sound" 1.0;
1756 program { name: "mouse,in";
1759 action: SIGNAL_EMIT "elm,mouse,in" "elm";
1761 program { name: "mouse,out";
1762 signal: "mouse,out";
1764 action: SIGNAL_EMIT "elm,mouse,out" "elm";
1766 program { name: "disable";
1767 signal: "elm,state,disabled";
1770 set_int(item_state, ITEM_STATE_DISABLED);
1771 set_state(PART:"bg", "disabled", 0.0);
1772 set_state(PART:"elm.text.clipper", "disabled", 0.0);
1773 set_state(PART:"elm.icon.clipper", "disabled", 0.0);
1774 set_state(PART:"elm.icon.proxy.clipper", "disabled", 0.0);
1775 run_program(PROGRAM:"label_set,animation,done");
1776 run_program(PROGRAM:"icon_set,animation,done");
1779 program { name: "enable";
1780 signal: "elm,state,enabled";
1783 set_int(item_state, ITEM_STATE_ENABLED);
1784 set_state(PART:"bg", "default", 0.0);
1785 set_state(PART:"elm.text.clipper", "default", 0.0);
1786 set_state(PART:"elm.icon.clipper", "default", 0.0);
1787 set_state(PART:"elm.icon.proxy.clipper", "default", 0.0);
1788 run_program(PROGRAM:"label_set,animation,done");
1789 run_program(PROGRAM:"icon_set,animation,done");
1792 program { name: "label_set,animation,forward";
1793 signal: "elm,state,label_set,forward";
1795 after: "label_set,sync";
1797 program { name: "label_set,animation,backward";
1798 signal: "elm,state,label_set,backward";
1800 after: "label_set,sync";
1802 program { name: "label_set,sync";
1803 signal: "elm,state,label_set";
1808 get_state(PART:"elm.text", st, 30, vl);
1809 set_state(PART:"elm.text_new", st, vl);
1811 after: "label_set,animation";
1813 program { name: "label_set,animation";
1814 action: STATE_SET "animation" 0.0;
1815 target: "elm.text.clipper";
1816 target: "elm.text_new.clipper";
1817 after: "label_set,animation,done";
1819 program { name: "label_set,animation,done";
1820 action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
1822 program { name: "label,reset";
1823 signal: "elm,state,label,reset";
1826 set_state(PART:"elm.text_new.clipper", "default", 0.0);
1827 if (get_int(item_state) != ITEM_STATE_DISABLED)
1828 set_state(PART:"elm.text.clipper", "default", 0.0);
1830 set_state(PART:"elm.text.clipper", "disabled", 0.0);
1833 program { name: "icon_set,animation,forward";
1834 signal: "elm,state,icon_set,forward";
1836 after: "icon_set,animation";
1838 program { name: "icon_set,animation,backward";
1839 signal: "elm,state,icon_set,backward";
1841 after: "icon_set,animation";
1843 program { name: "icon_set,animation";
1844 signal: "elm,state,icon_set";
1846 action: STATE_SET "animation" 0.0;
1847 target: "elm.icon.clipper";
1848 target: "elm.icon_new.clipper";
1849 target: "elm.icon.proxy.clipper";
1850 target: "elm.icon_new.proxy.clipper";
1851 after: "icon_set,animation,done";
1853 program { name: "icon_set,animation,done";
1854 action: SIGNAL_EMIT "elm,state,icon_set,done" "elm";
1856 program { name: "icon,reset";
1857 signal: "elm,state,icon,reset";
1860 set_state(PART:"elm.icon_new.clipper", "default", 0.0);
1861 if (get_int(item_state) != ITEM_STATE_DISABLED)
1863 set_state(PART:"elm.icon.clipper", "default", 0.0);
1864 set_state(PART:"elm.icon.proxy.clipper", "default", 0.0);
1868 set_state(PART:"elm.icon.clipper", "disabled", 0.0);
1869 set_state(PART:"elm.icon.proxy.clipper", "disabled", 0.0);
1873 program { name: "text_show";
1874 signal: "elm,state,text,visible";
1879 get_state(PART:"elm.swallow.icon", st, 30, vl);
1880 if (!strcmp(st, "icononly"))
1882 set_state(PART:"elm.swallow.icon", "visible", 0.0);
1883 set_state(PART:"icon_rect", "visible", 0.0);
1884 set_state(PART:"padding_after_icon", "visible", 0.0);
1885 set_state(PART:"bg", "icon_text", 0.0);
1887 set_state(PART:"elm.text", "visible", 0.0);
1890 program { name: "text_hide";
1891 signal: "elm,state,text,hidden";
1896 get_state(PART:"elm.swallow.icon", st, 30, vl);
1897 if (strcmp(st, "default"))
1899 set_state(PART:"elm.swallow.icon", "icononly", 0.0);
1900 set_state(PART:"icon_rect", "icononly", 0.0);
1901 set_state(PART:"padding_after_icon", "icononly", 0.0);
1903 set_state(PART:"elm.text", "default", 0.0);
1904 set_state(PART:"bg", "default", 0.0);
1907 program { name: "icon_show";
1908 signal: "elm,state,icon,visible";
1913 get_state(PART:"elm.text", st, 30, vl);
1914 if (strncmp(st, "default", 7))
1916 set_state(PART:"elm.swallow.icon", "visible", 0.0);
1917 set_state(PART:"icon_rect", "visible", 0.0);
1918 set_state(PART:"padding_after_icon", "visible", 0.0);
1919 set_state(PART:"bg", "icon_text", 0.0);
1923 set_state(PART:"elm.swallow.icon", "icononly", 0.0);
1924 set_state(PART:"icon_rect", "icononly", 0.0);
1925 set_state(PART:"padding_after_icon", "icononly", 0.0);
1929 program { name: "icon_hide";
1930 signal: "elm,state,icon,hidden";
1933 set_state(PART:"elm.swallow.icon", "default", 0.0);
1934 set_state(PART:"icon_rect", "default", 0.0);
1935 set_state(PART:"padding_after_icon", "default", 0.0);
1936 set_state(PART:"bg", "default", 0.0);
1939 program { name: "badge_show";
1940 signal: "elm,state,elm.text.badge,visible";
1942 action: STATE_SET "visible" 0.0;
1943 target: "elm.text.badge";
1944 target: "elm.image.badge";
1946 program { name: "badge_hide";
1947 signal: "elm,state,elm.text.badge,hidden";
1949 action: STATE_SET "default" 0.0;
1950 target: "elm.text.badge";
1951 target: "elm.image.badge";
1953 program { name: "divider_visible_1";
1954 signal: "elm,order,first,item";
1956 action: STATE_SET "default" 0.0;
1959 program { name: "divider_visible_2";
1960 signal: "elm,order,default,item";
1962 action: STATE_SET "default" 0.0;
1965 program { name: "divider_hidden";
1966 signal: "elm,order,last,item";
1968 action: STATE_SET "hidden" 0.0;
1971 program { name: "highlight_on";
1972 signal: "elm,highlight,on";
1974 action: STATE_SET "highlighted" 0.0;
1975 target: "highlight";
1977 program { name: "highlight_off";
1978 signal: "elm,highlight,off";
1980 action: STATE_SET "default" 0.0;
1981 target: "highlight";
1983 program { name: "tab_item_2";
1984 signal: "elm,number,item,2";
1987 set_int(items_number, 2);
1988 set_state(PART:"padding.badge", "default", 0.10);
1991 program { name: "tab_item_3";
1992 signal: "elm,number,item,3";
1995 set_int(items_number, 3);
1996 set_state(PART:"padding.badge", "default", 0.06);
1999 program { name: "tab_item_4";
2000 signal: "elm,number,item,4";
2003 set_int(items_number, 4);
2005 after: "tab_item_upper_4";
2007 program { name: "tab_item_5";
2008 signal: "elm,number,item,5";
2011 set_int(items_number, 5);
2013 after: "tab_item_upper_4";
2015 program { name: "tab_item_6";
2016 signal: "elm,number,item,6";
2019 set_int(items_number, 6);
2021 after: "tab_item_upper_4";
2023 program { name: "tab_item_7";
2024 signal: "elm,number,item,7";
2027 set_int(items_number, 7);
2029 after: "tab_item_upper_4";
2031 program { name: "tab_item_8";
2032 signal: "elm,number,item,8";
2035 set_int(items_number, 8);
2037 after: "tab_item_upper_4";
2039 program { name: "tab_item_9";
2040 signal: "elm,number,item,9";
2043 set_int(items_number, 9);
2045 after: "tab_item_upper_4";
2047 program { name: "tab_item_10";
2048 signal: "elm,number,item,10";
2051 set_int(items_number, 10);
2053 after: "tab_item_upper_4";
2055 program { name: "tab_item_upper_4";
2057 set_state(PART:"padding.badge", "default", 0.04);
2060 program { name: "slide_start";
2062 if (!get_int(sliding_timer) && !get_int(end_timer)) {
2063 set_int(sliding_timer, timer(1.5, "sliding", TOOLBAR_SLIDING_TEXT_OFFSET));
2067 program { name: "slide_stop";
2075 group { name: "elm/toolbar/base/tabbar/item_with_title";
2076 inherit: "elm/toolbar/base/tabbar";
2078 image: "00_sub_title_bg.png" COMP;
2081 part { name: "base_bg";
2085 state: "default" 0.0;
2095 normal: "00_sub_title_bg.png";
2104 group { name: "elm/toolbar/item/tabbar/item_with_title";
2105 inherit: "elm/toolbar/item/tabbar";
2107 image: "00_effect_tab_text_dim_left_02.png" COMP;
2108 image: "00_effect_tab_text_dim_right_02.png" COMP;
2111 part { name: "elm.text.dim.left";
2112 description { state: "default" 0.0;
2113 image.normal: "00_effect_tab_text_dim_left_02.png";
2115 description { state: "show" 0.0;
2116 inherit: "default" 0.0;
2120 part { name: "elm.text.dim.right";
2121 description { state: "default" 0.0;
2122 image.normal: "00_effect_tab_text_dim_right_02.png";
2124 description { state: "show" 0.0;
2125 inherit: "default" 0.0;
2129 part { name: "divider";
2132 description { state: "default" 0.0;
2143 description { state: "hidden" 0.0;
2144 inherit: "default" 0.0;
2148 part { name: "divider_left";
2151 description { state: "default" 0.0;
2152 color: TABBAR_ITEM_DIVIDER_LEFT_COLOR_INC;
2163 part { name: "divider_right";
2166 description { state: "default" 0.0;
2167 color: TABBAR_ITEM_DIVIDER_RIGHT_COLOR_INC;