2 * Copyright 2012 Samsung Electronics Co., Ltd
4 * Licensed under the Flora License, Version 1.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.tizenopensource.org/license
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #define BUTTON_STATE_ENABLED 0
18 #define BUTTON_STATE_DISABLED 1
20 #define BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC 249 249 249 255
21 #define BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC 249 249 249 255
22 #define BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC 249 249 249 255
23 #define BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC 108 115 118 255
24 #define BUTTON_TEXT_STYLE1_TEXT_DISABLED_COLOR_INC 180 180 1 255
26 #define BUTTON_TEXT_NAVIFRAME_NORMAL_COLOR_INC 211 211 211 255
27 #define BUTTON_TEXT_NAVIFRAME_PRESSED_COLOR_INC 249 249 249 255
28 #define BUTTON_TEXT_NAVIFRAME_FOCUSED_COLOR_INC 249 249 249 255
29 #define BUTTON_TEXT_NAVIFRAME_DISABLED_COLOR_INC 193 193 193 255
31 #define BUTTON_TEXT_STYLE1_BG_MIN_INC 100 74
32 #define BUTTON_TEXT_STYLE1_VISIBLE_BG_MIN_INC 148 74
33 #define BUTTON_TEXT_STYLE1_ICONONLY_BG_MIN_INC 74 74
34 #define BUTTON_TEXT_STYLE1_BG_BORDER_INC 5 5 5 5
35 #define BUTTON_TEXT_STYLE1_PADDING_MIN_INC 20 5
36 #define BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC 38 38
37 #define BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC 10 0
38 #define BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC 38 38
39 #define BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC 38 38
40 #define BUTTON_TEXT_STYLE1_FONT_SIZE_INC 32
42 #define BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC 64 64
43 #define BUTTON_CIRCLE_STYLE_IMAGE_MIN_MAX_INC 64 64
44 #define BUTTON_CIRCLE_STYLE_CONTENT_MIN_MAX_INC 35 35
46 #define BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC 106 74
47 #define BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC 5 5 5 5
48 #define BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC 56 56
50 #define BUTTON_NAVIFRAME_BG_MIN_INC 124 74
51 #define BUTTON_NAVIFRAME_VISIBLE_BG_MIN_INC 124 74
52 #define BUTTON_NAVIFRAME_ICONONLY_BG_MIN_INC 74 74
53 #define BUTTON_NAVIFRAME_BG_BORDER_INC 5 5 5 5
54 #define BUTTON_NAVIFRAME_PADDING_MIN_INC 5 5
55 #define BUTTON_NAVIFRAME_VISIBLE_ICON_RECT_MIN_MAX_INC 38 38
56 #define BUTTON_NAVIFRAME_VISIBLE_PADDING_ICON_TEXT_MIN_INC 10 0
57 #define BUTTON_NAVIFRAME_VISIBLE_ICON_MIN_MAX_INC 38 38
58 #define BUTTON_NAVIFRAME_ICONONLY_ICON_MIN_MAX_INC 38 38
59 #define BUTTON_TEXT_NAVIFRAME_FONT_SIZE_INC 28
60 #define BUTTON_NAVIFRAME_TITLE_BUTTON_MIN_INC 124 74
62 ///////////////////////////////////////////////////////////////////////////////////////
63 group { name: "elm/button/base/style1";
64 alias: "elm/button/base/text_only/style1";
65 alias: "elm/button/base/center";
66 alias: "elm/button/base/icon_and_text/center";
67 alias: "elm/button/base/nocontents/search_button";
69 image: GE_EDC_IMAGE_BTN_01_NORMAL COMP;
70 image: GE_EDC_IMAGE_BTN_01_PRESS COMP;
71 image: GE_EDC_IMAGE_BTN_01_DIM COMP;
74 public button_state = BUTTON_STATE_ENABLED;
77 part { name: "button_image";
79 description { state: "default" 0.0;
81 normal: GE_EDC_IMAGE_BTN_01_NORMAL;
82 border: BUTTON_TEXT_STYLE1_BG_BORDER_INC;
86 description { state: "clicked" 0.0;
87 inherit: "default" 0.0;
88 image.normal: GE_EDC_IMAGE_BTN_01_PRESS;
90 description { state: "disabled" 0.0;
91 inherit: "default" 0.0;
92 image.normal: GE_EDC_IMAGE_BTN_01_DIM;
94 description { state: "focused" 0.0;
95 inherit: "default" 0.0;
96 image.normal: GE_EDC_IMAGE_BTN_01_PRESS;
99 part { name: "padding_left_top";
103 description { state: "default" 0.0;
105 rel2.relative: 0.0 0.0;
106 min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
115 description { state: "default" 0.0;
116 min: BUTTON_TEXT_STYLE1_BG_MIN_INC;
119 description { state: "visible" 0.0;
120 inherit: "default" 0.0;
121 min: BUTTON_TEXT_STYLE1_VISIBLE_BG_MIN_INC;
123 description { state: "icononly" 0.0;
124 inherit: "default" 0.0;
125 min: BUTTON_TEXT_STYLE1_ICONONLY_BG_MIN_INC;
128 part { name: "padding_right_bottom";
132 description { state: "default" 0.0;
134 rel1.relative: 1.0 1.0;
135 min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
140 part { name: "icon_rect";
144 description { state: "default" 0.0;
150 to: "padding_left_top";
154 to_x: "padding_left_top";
155 to_y: "padding_right_bottom";
159 description { state: "visible" 0.0;
161 min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
162 max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
166 to: "padding_left_top";
170 to_x: "padding_left_top";
171 to_y: "padding_right_bottom";
175 description { state: "icononly" 0.0;
176 inherit: "default" 0.0;
179 part { name: "padding_after_icon";
183 description { state: "default" 0.0; //when only icon or no icon is there
189 rel2.to: "icon_rect";
194 description { state: "visible" 0.0;
201 rel2.to: "icon_rect";
203 min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
205 description { state: "icononly" 0.0;
206 inherit: "default" 0.0;
209 part { name: "padding_before_text";
213 description { state: "default" 0.0; //when only icon or no icon is there
218 to_y: "padding_left_top";
223 to_y: "padding_right_bottom";
226 min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
230 part { name: "elm.swallow.content";
234 description { state: "default" 0.0;
239 to: "padding_left_top";
243 to_x: "padding_left_top";
244 to_y: "padding_right_bottom";
248 description { state: "visible" 0.0;
250 min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
251 max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
255 to_x: "padding_before_text";
256 to_y: "padding_left_top";
260 to_x: "padding_before_text";
261 to_y: "padding_right_bottom";
264 description { state: "icononly" 0.0;
265 min: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
266 max: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
269 part { name: "elm.text";
274 description { state: "default" 0.0;
278 to_x: "padding_after_icon";
279 to_y: "padding_left_top";
283 to: "padding_right_bottom";
285 color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
287 font: "HelveticaNeue:style=Medium";
288 size: BUTTON_TEXT_STYLE1_FONT_SIZE_INC;
293 description { state: "visible" 0.0;
294 inherit: "default" 0.0;
297 description { state: "clicked" 0.0;
298 inherit: "default" 0.0;
300 color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
302 description { state: "disabled" 0.0;
303 inherit: "default" 0.0;
306 description { state: "disabled_visible" 0.0;
307 inherit: "default" 0.0;
308 color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
311 description { state: "focused" 0.0;
312 inherit: "default" 0.0;
314 color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
317 part { name: "over2";
320 ignore_flags: ON_HOLD;
321 description { state: "default" 0.0;
325 part { name: "over3";
328 description { state: "default" 0.0;
332 part { name: "clipper";
334 description { state: "default" 0.0;
335 color: 255 255 255 255;
338 part { name: "disabler";
340 description { state: "default" 0.0;
344 description { state: "disabled" 0.0;
345 inherit: "default" 0.0;
351 program { name: "button_click";
352 signal: "mouse,down,1";
354 action: SIGNAL_EMIT "elm,action,press" "";
355 after: "button_click_anim";
357 program { name: "button_click_anim";
358 action: STATE_SET "clicked" 0.0;
359 target: "button_image";
360 after: "text_clicked";
362 program { name: "text_clicked";
366 get_state(PART:"elm.text", st, 30, vl);
367 if (!strcmp(st, "visible"))
368 set_state(PART:"elm.text", "clicked", 0.0);
371 program { name: "button_unpress";
372 action: SIGNAL_EMIT "elm,action,unpress" "";
374 program { name: "button_mouseout_clicked";
375 signal: "mouse,up,1";
380 get_state(PART:"elm.swallow.content", st, 30, vl);
381 if (strcmp(st, "icononly"))
383 emit("elm,action,default,text,set", "");
384 set_state(PART:"elm.text", "visible", 0.0);
386 if (get_int(button_state) != BUTTON_STATE_DISABLED)
387 set_state(PART:"button_image", "default", 0.0);
389 after: button_unpress;
391 program { name: "button_unclick3";
392 signal: "mouse,clicked,1";
394 action: SIGNAL_EMIT "elm,action,click" "";
396 program { name: "text_show";
397 signal: "elm,state,text,visible";
402 get_state(PART:"elm.swallow.content", st, 30, vl);
403 if (!strcmp(st, "icononly"))
405 set_state(PART:"elm.swallow.content", "visible", 0.0);
406 set_state(PART:"icon_rect", "visible", 0.0);
407 set_state(PART:"padding_after_icon", "visible", 0.0);
408 set_state(PART:"bg", "visible", 0.0);
410 if (get_int(button_state) != BUTTON_STATE_DISABLED)
411 set_state(PART:"elm.text", "visible", 0.0);
413 set_state(PART:"elm.text", "disabled_visible", 0.0);
416 program { name: "text_hide";
417 signal: "elm,state,text,hidden";
422 get_state(PART:"elm.swallow.content", st, 30, vl);
423 if (!strcmp(st, "visible"))
425 set_state(PART:"elm.swallow.content", "icononly", 0.0);
426 set_state(PART:"icon_rect", "icononly", 0.0);
427 set_state(PART:"padding_after_icon", "icononly", 0.0);
428 set_state(PART:"bg", "icononly", 0.0);
430 set_state(PART:"elm.text", "default", 0.0);
433 program { name: "icon_show";
434 signal: "elm,state,icon,visible";
439 get_state(PART:"elm.text", st, 30, vl);
440 if (!strcmp(st, "visible"))
442 set_state(PART:"elm.swallow.content", "visible", 0.0);
443 set_state(PART:"icon_rect", "visible", 0.0);
444 set_state(PART:"padding_after_icon", "visible", 0.0);
445 set_state(PART:"bg", "visible", 0.0);
449 set_state(PART:"elm.swallow.content", "icononly", 0.0);
450 set_state(PART:"icon_rect", "icononly", 0.0);
451 set_state(PART:"padding_after_icon", "icononly", 0.0);
452 set_state(PART:"bg", "icononly", 0.0);
456 program { name: "icon_hide";
457 signal: "elm,state,icon,hidden";
459 action: STATE_SET "default" 0.0;
460 target: "elm.swallow.content";
461 target: "padding_after_icon";
465 program { name: "disable";
466 signal: "elm,state,disabled";
468 action: STATE_SET "disabled" 0.0;
469 target: "button_image";
471 after: "disable_text";
473 program { name: "disable_text";
477 get_state(PART:"elm.text", st, 30, vl);
478 if (!strcmp(st, "visible"))
479 set_state(PART:"elm.text", "disabled_visible", 0.0);
481 set_state(PART:"elm.text", "disabled", 0.0);
482 set_int(button_state, BUTTON_STATE_DISABLED);
485 program { name: "enable";
486 signal: "elm,state,enabled";
488 action: STATE_SET "default" 0.0;
489 target: "button_image";
491 after: "enable_text";
493 program { name: "enable_text";
497 get_state(PART:"elm.text", st, 30, vl);
498 if (!strcmp(st, "disabled_visible"))
499 set_state(PART:"elm.text", "visible", 0.0);
501 set_state(PART:"elm.text", "default", 0.0);
502 set_int(button_state, BUTTON_STATE_ENABLED);
505 program { name: "focused";
506 //signal: "elm,action,focus";
508 action: STATE_SET "focused" 0.0;
509 target: "button_image";
512 program { name: "unfocused";
513 //signal: "elm,action,unfocus";
515 action: STATE_SET "default" 0.0;
516 target: "button_image";
517 after: "unfocus_text";
519 program { name: "unfocus_text";
520 action: STATE_SET "visible" 0.0;
525 ///////////////////////////////////////////////////////////////////////////////////////
526 group { name: "elm/button/base/naviframe/back_btn/gallery_efl";
527 alias: "elm/button/base/naviframe/back_btn/default";
528 alias: "elm/button/base/naviframe/prev_btn/default";
529 alias: "elm/button/base/naviframe/end_btn/default";
531 image: GE_EDC_IMAGE_BTN_PREV COMP;
532 image: GE_EDC_IMAGE_BTN_PREV_PRESS COMP;
533 image: GE_EDC_IMAGE_PREV COMP;
536 public button_state = BUTTON_STATE_ENABLED;
539 part { name: "button_image";
541 description { state: "default" 0.0;
542 min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
543 max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
545 normal: GE_EDC_IMAGE_BTN_PREV;
546 border: BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC;
550 description { state: "clicked" 0.0;
551 inherit: "default" 0.0;
552 image.normal: GE_EDC_IMAGE_BTN_PREV_PRESS;
554 description { state: "disabled" 0.0;
555 inherit: "default" 0.0;
557 description { state: "focused" 0.0;
558 inherit: "default" 0.0;
559 image.normal: GE_EDC_IMAGE_BTN_PREV_PRESS;
562 part { name: "back_button";
565 description { state: "default" 0.0;
566 min: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
567 max: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
568 rel1.to: "button_image";
569 rel2.to: "button_image";
570 image.normal: GE_EDC_IMAGE_PREV;
572 description { state: "clicked" 0.0;
573 inherit: "default" 0.0;
576 part { name: "over2";
579 ignore_flags: ON_HOLD;
580 description { state: "default" 0.0;
584 part { name: "over3";
587 description { state: "default" 0.0;
591 part { name: "disabler";
593 description { state: "default" 0.0;
597 description { state: "disabled" 0.0;
598 inherit: "default" 0.0;
604 program { name: "button_click";
605 signal: "mouse,down,1";
607 action: SIGNAL_EMIT "elm,action,press" "";
608 after: "button_click_anim";
610 program { name: "button_click_anim";
611 action: STATE_SET "clicked" 0.0;
612 target: "button_image";
614 program { name: "button_unpress";
615 action: SIGNAL_EMIT "elm,action,unpress" "";
617 program { name: "button_mouseout_clicked";
618 signal: "mouse,up,1";
621 if (get_int(button_state) != BUTTON_STATE_DISABLED)
622 set_state(PART:"button_image", "default", 0.0);
624 after: button_unpress;
626 program { name: "button_unclick3";
627 signal: "mouse,clicked,1";
629 action: SIGNAL_EMIT "elm,action,click" "";
631 program { name: "disable";
632 signal: "elm,state,disabled";
634 action: STATE_SET "disabled" 0.0;
635 target: "button_image";
637 after: "disable_button";
639 program { name: "disable_button";
641 set_int(button_state, BUTTON_STATE_DISABLED);
644 program { name: "enable";
645 signal: "elm,state,enabled";
647 action: STATE_SET "default" 0.0;
648 target: "button_image";
650 after: "enable_button";
652 program { name: "enable_button";
654 set_int(button_state, BUTTON_STATE_ENABLED);
660 ///////////////////////////////////////////////////////////////////////////////////////
661 group { name: "elm/button/base/naviframe/title/gallery_efl";
662 alias: "elm/button/base/naviframe/title/default";
665 image: GE_EDC_IMAGE_TITLE_BTN COMP;
666 image: GE_EDC_IMAGE_TITLE_BTN_PRESS COMP;
669 public button_state = BUTTON_STATE_ENABLED;
672 part { name: "button_image";
674 description { state: "default" 0.0;
675 min: BUTTON_NAVIFRAME_TITLE_BUTTON_MIN_INC;
676 max: BUTTON_NAVIFRAME_TITLE_BUTTON_MIN_INC;
678 normal: GE_EDC_IMAGE_TITLE_BTN;
679 border: BUTTON_NAVIFRAME_BG_BORDER_INC;
683 description { state: "clicked" 0.0;
684 inherit: "default" 0.0;
685 image.normal: GE_EDC_IMAGE_TITLE_BTN_PRESS;
687 description { state: "disabled" 0.0;
688 inherit: "default" 0.0;
691 description { state: "focused" 0.0;
692 inherit: "default" 0.0;
693 image.normal: GE_EDC_IMAGE_TITLE_BTN_PRESS;
696 part { name: "padding_left_top";
700 description { state: "default" 0.0;
702 rel2.relative: 0.0 0.0;
703 min: BUTTON_NAVIFRAME_PADDING_MIN_INC;
712 description { state: "default" 0.0;
713 min: BUTTON_NAVIFRAME_BG_MIN_INC;
716 description { state: "visible" 0.0;
717 inherit: "default" 0.0;
718 min: BUTTON_NAVIFRAME_VISIBLE_BG_MIN_INC;
720 description { state: "icononly" 0.0;
721 inherit: "default" 0.0;
722 min: BUTTON_NAVIFRAME_ICONONLY_BG_MIN_INC;
725 part { name: "padding_right_bottom";
729 description { state: "default" 0.0;
731 rel1.relative: 1.0 1.0;
732 min: BUTTON_NAVIFRAME_PADDING_MIN_INC;
737 part { name: "icon_rect";
741 description { state: "default" 0.0;
747 to: "padding_left_top";
751 to_x: "padding_left_top";
752 to_y: "padding_right_bottom";
756 description { state: "visible" 0.0;
758 min: BUTTON_NAVIFRAME_VISIBLE_ICON_RECT_MIN_MAX_INC;
759 max: BUTTON_NAVIFRAME_VISIBLE_ICON_RECT_MIN_MAX_INC;
763 to: "padding_left_top";
767 to_x: "padding_left_top";
768 to_y: "padding_right_bottom";
772 description { state: "icononly" 0.0;
773 inherit: "default" 0.0;
776 part { name: "padding_after_icon";
780 description { state: "default" 0.0; //when only icon or no icon is there
786 rel2.to: "icon_rect";
791 description { state: "visible" 0.0;
798 rel2.to: "icon_rect";
800 min: BUTTON_NAVIFRAME_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
802 description { state: "icononly" 0.0;
803 inherit: "default" 0.0;
806 part { name: "padding_before_text";
810 description { state: "default" 0.0; //when only icon or no icon is there
815 to_y: "padding_left_top";
820 to_y: "padding_right_bottom";
823 min: BUTTON_NAVIFRAME_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
827 part { name: "elm.swallow.content";
831 description { state: "default" 0.0;
836 to: "padding_left_top";
840 to_x: "padding_left_top";
841 to_y: "padding_right_bottom";
845 description { state: "visible" 0.0;
847 min: BUTTON_NAVIFRAME_VISIBLE_ICON_MIN_MAX_INC;
848 max: BUTTON_NAVIFRAME_VISIBLE_ICON_MIN_MAX_INC;
852 to_x: "padding_before_text";
853 to_y: "padding_left_top";
857 to_x: "padding_before_text";
858 to_y: "padding_right_bottom";
861 description { state: "icononly" 0.0;
862 min: BUTTON_NAVIFRAME_ICONONLY_ICON_MIN_MAX_INC;
863 max: BUTTON_NAVIFRAME_ICONONLY_ICON_MIN_MAX_INC;
866 part { name: "elm.text";
871 description { state: "default" 0.0;
875 to_x: "padding_after_icon";
876 to_y: "padding_left_top";
880 to: "padding_right_bottom";
882 color: BUTTON_TEXT_NAVIFRAME_NORMAL_COLOR_INC;
884 font: "HelveticaNeue:style=Medium";
885 size: BUTTON_TEXT_NAVIFRAME_FONT_SIZE_INC;
890 description { state: "visible" 0.0;
891 inherit: "default" 0.0;
894 description { state: "clicked" 0.0;
895 inherit: "default" 0.0;
897 color: BUTTON_TEXT_NAVIFRAME_PRESSED_COLOR_INC;
899 description { state: "disabled" 0.0;
900 inherit: "default" 0.0;
903 description { state: "disabled_visible" 0.0;
904 inherit: "default" 0.0;
905 color: BUTTON_TEXT_NAVIFRAME_DISABLED_COLOR_INC;
908 description { state: "focused" 0.0;
909 inherit: "default" 0.0;
911 color: BUTTON_TEXT_NAVIFRAME_FOCUSED_COLOR_INC;
914 part { name: "over2";
917 ignore_flags: ON_HOLD;
918 description { state: "default" 0.0;
922 part { name: "over3";
925 description { state: "default" 0.0;
929 part { name: "clipper";
931 description { state: "default" 0.0;
932 color: 255 255 255 255;
935 part { name: "disabler";
937 description { state: "default" 0.0;
941 description { state: "disabled" 0.0;
942 inherit: "default" 0.0;
948 program { name: "button_click";
949 signal: "mouse,down,1";
951 action: SIGNAL_EMIT "elm,action,press" "";
952 after: "button_click_anim";
954 program { name: "button_click_anim";
955 action: STATE_SET "clicked" 0.0;
956 target: "button_image";
957 after: "text_clicked";
959 program { name: "text_clicked";
963 get_state(PART:"elm.text", st, 30, vl);
964 if (!strcmp(st, "visible"))
965 set_state(PART:"elm.text", "clicked", 0.0);
968 program { name: "button_unpress";
969 action: SIGNAL_EMIT "elm,action,unpress" "";
971 program { name: "button_mouseout_clicked";
972 signal: "mouse,up,1";
977 get_state(PART:"elm.swallow.content", st, 30, vl);
978 if (strcmp(st, "icononly"))
980 emit("elm,action,default,text,set", "");
981 set_state(PART:"elm.text", "visible", 0.0);
983 if (get_int(button_state) != BUTTON_STATE_DISABLED)
984 set_state(PART:"button_image", "default", 0.0);
986 after: button_unpress;
988 program { name: "button_unclick3";
989 signal: "mouse,clicked,1";
991 action: SIGNAL_EMIT "elm,action,click" "";
993 program { name: "text_show";
994 signal: "elm,state,text,visible";
999 get_state(PART:"elm.swallow.content", st, 30, vl);
1000 if (!strcmp(st, "icononly"))
1002 set_state(PART:"elm.swallow.content", "visible", 0.0);
1003 set_state(PART:"icon_rect", "visible", 0.0);
1004 set_state(PART:"padding_after_icon", "visible", 0.0);
1005 set_state(PART:"bg", "visible", 0.0);
1007 if (get_int(button_state) != BUTTON_STATE_DISABLED)
1008 set_state(PART:"elm.text", "visible", 0.0);
1010 set_state(PART:"elm.text", "disabled_visible", 0.0);
1013 program { name: "text_hide";
1014 signal: "elm,state,text,hidden";
1019 get_state(PART:"elm.swallow.content", st, 30, vl);
1020 if (!strcmp(st, "visible"))
1022 set_state(PART:"elm.swallow.content", "icononly", 0.0);
1023 set_state(PART:"icon_rect", "icononly", 0.0);
1024 set_state(PART:"padding_after_icon", "icononly", 0.0);
1025 set_state(PART:"bg", "icononly", 0.0);
1027 set_state(PART:"elm.text", "default", 0.0);
1030 program { name: "icon_show";
1031 signal: "elm,state,icon,visible";
1036 get_state(PART:"elm.text", st, 30, vl);
1037 if (!strcmp(st, "visible"))
1039 set_state(PART:"elm.swallow.content", "visible", 0.0);
1040 set_state(PART:"icon_rect", "visible", 0.0);
1041 set_state(PART:"padding_after_icon", "visible", 0.0);
1042 set_state(PART:"bg", "visible", 0.0);
1046 set_state(PART:"elm.swallow.content", "icononly", 0.0);
1047 set_state(PART:"icon_rect", "icononly", 0.0);
1048 set_state(PART:"padding_after_icon", "icononly", 0.0);
1049 set_state(PART:"bg", "icononly", 0.0);
1053 program { name: "icon_hide";
1054 signal: "elm,state,icon,hidden";
1056 action: STATE_SET "default" 0.0;
1057 target: "elm.swallow.content";
1058 target: "padding_after_icon";
1059 target: "icon_rect";
1062 program { name: "disable";
1063 signal: "elm,state,disabled";
1065 action: STATE_SET "disabled" 0.0;
1066 target: "button_image";
1068 after: "disable_text";
1070 program { name: "disable_text";
1074 get_state(PART:"elm.text", st, 30, vl);
1075 if (!strcmp(st, "visible"))
1076 set_state(PART:"elm.text", "disabled_visible", 0.0);
1078 set_state(PART:"elm.text", "disabled", 0.0);
1079 set_int(button_state, BUTTON_STATE_DISABLED);
1082 program { name: "enable";
1083 signal: "elm,state,enabled";
1085 action: STATE_SET "default" 0.0;
1086 target: "button_image";
1088 after: "enable_text";
1090 program { name: "enable_text";
1094 get_state(PART:"elm.text", st, 30, vl);
1095 if (!strcmp(st, "disabled_visible"))
1096 set_state(PART:"elm.text", "visible", 0.0);
1098 set_state(PART:"elm.text", "default", 0.0);
1099 set_int(button_state, BUTTON_STATE_ENABLED);
1102 program { name: "focused";
1103 //signal: "elm,action,focus";
1105 action: STATE_SET "focused" 0.0;
1106 target: "button_image";
1109 program { name: "unfocused";
1110 //signal: "elm,action,unfocus";
1112 action: STATE_SET "default" 0.0;
1113 target: "button_image";
1114 after: "unfocus_text";
1116 program { name: "unfocus_text";
1117 action: STATE_SET "visible" 0.0;
1122 #undef BUTTON_STATE_ENABLED
1123 #undef BUTTON_STATE_DISABLED