e7b19ee20844bc6dd9cdfd8c7ab6d1eccd643e27
[profile/ivi/efl-theme-tizen.git] / themes / widgets / button.edc
1 /*
2  * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved 
3  *
4  * PROPRIETARY/CONFIDENTIAL
5  *
6  * This software is the confidential and proprietary information of SAMSUNG
7  * ELECTRONICS ("Confidential Information"). You agree and acknowledge that this
8  * software is owned by Samsung and you shall not disclose such Confidential
9  * Information and shall use it only in accordance with the terms of the license
10  * agreement you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
11  * representations or warranties about the suitability of the software, either
12  * express or implied, including but not limited to the implied warranties of
13  * merchantability, fitness for a particular purpose, or non-infringement.
14  * SAMSUNG shall not be liable for any damages suffered by licensee arising out
15  * of or releated to this software.
16  *
17  */
18
19 #define BUTTON_STATE_ENABLED 0
20 #define BUTTON_STATE_DISABLED 1
21
22    sounds {
23       sample {
24          name: "touch_sound" AS_IS;
25          source: "S_Touch_30ms.wav";
26       }
27    }
28
29 ///////////////////////////////////////////////////////////////////////////////////////
30    group { name: "elm/button/base/style1";
31       alias: "elm/button/base/text_only/style1";
32       alias: "elm/button/base/center";
33       alias: "elm/button/base/icon_and_text/center";
34       alias: "elm/button/base/nocontents/search_button";
35       images {
36          image: "00_button_01_normal.png" COMP;
37          image: "00_button_01_normal_press.png" COMP;
38          image: "00_button_01_normal_dim.png" COMP;
39          image: "00_button_01_normal_Focus.png" COMP;
40       }
41       script {
42          public button_state = BUTTON_STATE_ENABLED;
43       }
44       parts {
45          part { name: "button_image";
46             scale: 1;
47             description { state: "default" 0.0;
48                image {
49                   normal: "00_button_01_normal.png";
50                   border: BUTTON_TEXT_STYLE1_BG_BORDER_INC;
51                   border_scale: 1;
52                }
53             }
54             description { state: "clicked" 0.0;
55                inherit: "default" 0.0;
56                image.normal: "00_button_01_normal_press.png";
57             }
58             description { state: "disabled" 0.0;
59                inherit: "default" 0.0;
60                image.normal: "00_button_01_normal_dim.png";
61             }
62             description { state: "focused" 0.0;
63                inherit: "default" 0.0;
64                image.normal: "00_button_01_normal_Focus.png";
65             }
66          }
67          part { name: "padding_left_top";
68             type: RECT;
69             scale: 1;
70             mouse_events: 0;
71             description { state: "default" 0.0;
72                align: 0.0 0.0;
73                rel2.relative: 0.0 0.0;
74                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
75                fixed: 1 1;
76                visible: 0;
77             }
78          }
79          part { name: "bg";
80             type: RECT;
81             scale: 1;
82             mouse_events: 0;
83             description { state: "default" 0.0;
84                min: BUTTON_TEXT_STYLE1_BG_MIN_INC;
85                visible: 0;
86             }
87             description { state: "visible" 0.0;
88                inherit: "default" 0.0;
89                min: BUTTON_TEXT_STYLE1_VISIBLE_BG_MIN_INC;
90             }
91             description { state: "icononly" 0.0;
92                inherit: "default" 0.0;
93                min: BUTTON_TEXT_STYLE1_ICONONLY_BG_MIN_INC;
94             }
95          }
96          part { name: "padding_right_bottom";
97             type: RECT;
98             scale: 1;
99             mouse_events: 0;
100             description { state: "default" 0.0;
101                align: 1.0 1.0;
102                rel1.relative: 1.0 1.0;
103                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
104                fixed: 1 1;
105                visible: 0;
106             }
107          }
108          part { name: "icon_rect";
109             type: RECT;
110             scale: 1;
111             mouse_events: 0;
112             description { state: "default" 0.0;
113                visible: 0;
114                min: 0 0;
115                fixed: 1 0;
116                rel1 {
117                   relative: 1.0 1.0;
118                   to: "padding_left_top";
119                }
120                rel2 {
121                   relative: 1.0 0.0;
122                   to_x: "padding_left_top";
123                   to_y: "padding_right_bottom";
124                }
125                align: 0.0 0.5;
126             }
127             description { state: "visible" 0.0;
128                visible: 0;
129                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
130                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
131                fixed: 1 0;
132                rel1 {
133                   relative: 1.0 1.0;
134                   to: "padding_left_top";
135                }
136                rel2 {
137                   relative: 1.0 0.0;
138                   to_x: "padding_left_top";
139                   to_y: "padding_right_bottom";
140                }
141                align: 0.0 0.5;
142             }
143             description { state: "icononly" 0.0;
144                inherit: "default" 0.0;
145             }
146          }
147          part { name: "padding_after_icon";
148             type: RECT;
149             scale: 1;
150             mouse_events: 0;
151             description { state: "default" 0.0; //when only icon or no icon is there
152                align: 0.0 0.0;
153                rel1 {
154                   relative: 1.0 0.0;
155                   to: "icon_rect";
156                }
157                rel2.to: "icon_rect";
158                fixed: 1 0;
159                min: 0 0;
160                visible: 0;
161             }
162             description { state: "visible" 0.0;
163                visible: 0;
164                align: 0.0 0.0;
165                rel1 {
166                   relative: 1.0 0.0;
167                   to: "icon_rect";
168                }
169                rel2.to: "icon_rect";
170                fixed: 1 0;
171                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
172             }
173             description { state: "icononly" 0.0;
174                inherit: "default" 0.0;
175             }
176          }
177          part { name: "padding_before_text";
178             type: RECT;
179             scale: 1;
180             mouse_events: 0;
181             description { state: "default" 0.0; //when only icon or no icon is there
182                align: 1.0 0.5;
183                rel1 {
184                   relative: 0.0 1.0;
185                   to_x: "elm.text";
186                   to_y: "padding_left_top";
187                }
188                rel2 {
189                   relative: 0.0 0.0;
190                   to_x: "elm.text";
191                   to_y: "padding_right_bottom";
192                }
193                fixed: 1 0;
194                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
195                visible: 0;
196             }
197          }
198          part { name: "elm.swallow.content";
199             type: SWALLOW;
200             scale: 1;
201             clip_to: "clipper";
202             description { state: "default" 0.0;
203                visible: 0;
204                align: 0.0 0.5;
205                rel1 {
206                   relative: 1.0 1.0;
207                   to: "padding_left_top";
208                }
209                rel2 {
210                   relative: 1.0 0.0;
211                   to_x: "padding_left_top";
212                   to_y: "padding_right_bottom";
213                }
214                fixed: 1 0;
215             }
216             description { state: "visible" 0.0;
217                fixed: 1 0;
218                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
219                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
220                align: 1.0 0.5;
221                rel1 {
222                   relative: 0.0 1.0;
223                   to_x: "padding_before_text";
224                   to_y: "padding_left_top";
225                }
226                rel2 {
227                   relative: 0.0 0.0;
228                   to_x: "padding_before_text";
229                   to_y: "padding_right_bottom";
230                }
231             }
232             description { state: "icononly" 0.0;
233                min: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
234                max: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
235             }
236          }
237          part { name: "elm.text";
238             type: TEXT;
239             mouse_events: 0;
240             scale: 1;
241             clip_to: "clipper";
242             description { state: "default" 0.0;
243                visible: 0;
244                rel1 {
245                   relative: 1.0 1.0;
246                   to_x: "padding_after_icon";
247                   to_y: "padding_left_top";
248                }
249                rel2 {
250                   relative: 0.0 0.0;
251                   to: "padding_right_bottom";
252                }
253                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
254                text {
255                   font: "SLP:style=Medium";
256                   size: BUTTON_TEXT_STYLE1_FONT_SIZE_INC;
257                   min: 0 0;
258                   max: 1 0;
259                   text_class: "slp_medium";
260                }
261             }
262             description { state: "visible" 0.0;
263                inherit: "default" 0.0;
264                visible: 1;
265             }
266             description { state: "clicked" 0.0;
267                inherit: "default" 0.0;
268                visible: 1;
269                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
270             }
271             description { state: "disabled" 0.0;
272                inherit: "default" 0.0;
273                color: 0 0 0 128;
274             }
275             description { state: "disabled_visible" 0.0;
276                inherit: "default" 0.0;
277                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
278                visible: 1;
279             }
280             description { state: "focused" 0.0;
281                inherit: "default" 0.0;
282                visible: 1;
283                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
284             }
285          }
286          part { name: "over2";
287             type: RECT;
288             repeat_events: 1;
289             ignore_flags: ON_HOLD;
290             description { state: "default" 0.0;
291                color: 0 0 0 0;
292             }
293          }
294          part { name: "over3";
295             type: RECT;
296             repeat_events: 1;
297             description { state: "default" 0.0;
298                color: 0 0 0 0;
299             }
300          }
301          part { name: "clipper";
302             type: RECT;
303             description { state: "default" 0.0;
304                color: 255 255 255 255;
305             }
306          }
307          part { name: "disabler";
308             type: RECT;
309             description { state: "default" 0.0;
310                color: 0 0 0 0;
311                visible: 0;
312             }
313             description { state: "disabled" 0.0;
314                inherit: "default" 0.0;
315                visible: 1;
316             }
317          }
318       }
319       programs {
320          program { name: "button_click";
321             signal: "mouse,down,1";
322             source: "over2";
323             action: SIGNAL_EMIT "elm,action,press" "";
324             after: "button_click_anim";
325          }
326          program { name: "button_click_anim";
327             action: STATE_SET "clicked" 0.0;
328             target: "button_image";
329             after: "text_clicked";
330          }
331          program { name: "text_clicked";
332             script {
333                new st[31];
334                new Float:vl;
335                get_state(PART:"elm.text", st, 30, vl);
336                if (!strcmp(st, "visible"))
337                  set_state(PART:"elm.text", "clicked", 0.0);
338             }
339          }
340          program { name: "button_unpress";
341             action: SIGNAL_EMIT "elm,action,unpress" "";
342          }
343          program { name: "button_mouseout_clicked";
344             signal: "mouse,up,1";
345             source: "over3";
346             script {
347                new st[31];
348                new Float:vl;
349                get_state(PART:"elm.swallow.content", st, 30, vl);
350                if (strcmp(st, "icononly"))
351                  {
352                     emit("elm,action,default,text,set", "");
353                     set_state(PART:"elm.text", "visible", 0.0);
354                  }
355                if (get_int(button_state) != BUTTON_STATE_DISABLED)
356                  set_state(PART:"button_image", "default", 0.0);
357             }
358             after: button_unpress;
359          }
360          program { name: "touch_snd";
361             signal: "mouse,clicked,1";
362             source: "over2";
363             action: PLAY_SAMPLE "touch_sound" 1.0;
364             after: button_unclick3;
365          }
366          program { name: "button_unclick3";
367             action: SIGNAL_EMIT "elm,action,click" "";
368          }
369          program { name: "text_show";
370             signal: "elm,state,text,visible";
371             source: "elm";
372             script {
373                new st[31];
374                new Float:vl;
375                get_state(PART:"elm.swallow.content", st, 30, vl);
376                if (!strcmp(st, "icononly"))
377                  {
378                     set_state(PART:"elm.swallow.content", "visible", 0.0);
379                     set_state(PART:"icon_rect", "visible", 0.0);
380                     set_state(PART:"padding_after_icon", "visible", 0.0);
381                     set_state(PART:"bg", "visible", 0.0);
382                  }
383                if (get_int(button_state) != BUTTON_STATE_DISABLED)
384                  set_state(PART:"elm.text", "visible", 0.0);
385                else
386                  set_state(PART:"elm.text", "disabled_visible", 0.0);
387             }
388          }
389          program { name: "text_hide";
390             signal: "elm,state,text,hidden";
391             source: "elm";
392             script {
393                new st[31];
394                new Float:vl;
395                get_state(PART:"elm.swallow.content", st, 30, vl);
396                if (!strcmp(st, "visible"))
397                  {
398                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
399                     set_state(PART:"icon_rect", "icononly", 0.0);
400                     set_state(PART:"padding_after_icon", "icononly", 0.0);
401                     set_state(PART:"bg", "icononly", 0.0);
402                  }
403                set_state(PART:"elm.text", "default", 0.0);
404             }
405          }
406          program { name: "icon_show";
407             signal: "elm,state,icon,visible";
408             source: "elm";
409             script {
410                new st[31];
411                new Float:vl;
412                get_state(PART:"elm.text", st, 30, vl);
413                if (!strcmp(st, "visible"))
414                  {
415                     set_state(PART:"elm.swallow.content", "visible", 0.0);
416                     set_state(PART:"icon_rect", "visible", 0.0);
417                     set_state(PART:"padding_after_icon", "visible", 0.0);
418                     set_state(PART:"bg", "visible", 0.0);
419                  }
420                else
421                  {
422                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
423                     set_state(PART:"icon_rect", "icononly", 0.0);
424                     set_state(PART:"padding_after_icon", "icononly", 0.0);
425                     set_state(PART:"bg", "icononly", 0.0);
426                  }
427             }
428          }
429          program { name: "icon_hide";
430             signal: "elm,state,icon,hidden";
431             source: "elm";
432             action: STATE_SET "default" 0.0;
433             target: "elm.swallow.content";
434             target: "padding_after_icon";
435             target: "icon_rect";
436             target: "bg";
437          }
438          program { name: "disable";
439             signal: "elm,state,disabled";
440             source: "elm";
441             action: STATE_SET "disabled" 0.0;
442             target: "button_image";
443             target: "disabler";
444             after: "disable_text";
445          }
446          program { name: "disable_text";
447             script {
448                new st[31];
449                new Float:vl;
450                get_state(PART:"elm.text", st, 30, vl);
451                if (!strcmp(st, "visible"))
452                  set_state(PART:"elm.text", "disabled_visible", 0.0);
453                else
454                  set_state(PART:"elm.text", "disabled", 0.0);
455                set_int(button_state, BUTTON_STATE_DISABLED);
456             }
457          }
458          program { name: "enable";
459             signal: "elm,state,enabled";
460             source: "elm";
461             action: STATE_SET "default" 0.0;
462             target: "button_image";
463             target: "disabler";
464             after: "enable_text";
465          }
466          program { name: "enable_text";
467             script {
468                new st[31];
469                new Float:vl;
470                get_state(PART:"elm.text", st, 30, vl);
471                if (!strcmp(st, "disabled_visible"))
472                  set_state(PART:"elm.text", "visible", 0.0);
473                else
474                  set_state(PART:"elm.text", "default", 0.0);
475                set_int(button_state, BUTTON_STATE_ENABLED);
476             }
477          }
478          program { name: "focused";
479             //signal: "elm,action,focus";
480             //source: "elm";
481             action: STATE_SET "focused" 0.0;
482             target: "button_image";
483             target: "elm.text";
484          }
485          program { name: "unfocused";
486             //signal: "elm,action,unfocus";
487             //source: "elm";
488             action: STATE_SET "default" 0.0;
489             target: "button_image";
490             after: "unfocus_text";
491          }
492          program { name: "unfocus_text";
493             action: STATE_SET "visible" 0.0;
494             target: "elm.text";
495          }
496       }
497    }
498
499 //////////////////////////////////////////////////////////////
500    group { name: "elm/button/base/style1/auto_expand";
501       alias: "elm/button/base/datetime_ampm/default";
502       images {
503          image: "00_button_01_normal.png" COMP;
504          image: "00_button_01_normal_press.png" COMP;
505          image: "00_button_01_normal_dim.png" COMP;
506          image: "00_button_01_normal_Focus.png" COMP;
507       }
508       script {
509          public button_state = BUTTON_STATE_ENABLED;
510       }
511       parts {
512          part { name: "button_image";
513             scale: 1;
514             description { state: "default" 0.0;
515                image {
516                   normal: "00_button_01_normal.png";
517                   border: BUTTON_TEXT_STYLE1_BG_BORDER_INC;
518                   border_scale: 1;
519                }
520             }
521             description { state: "clicked" 0.0;
522                inherit: "default" 0.0;
523                image.normal: "00_button_01_normal_press.png";
524             }
525             description { state: "disabled" 0.0;
526                inherit: "default" 0.0;
527                image.normal: "00_button_01_normal_dim.png";
528             }
529             description { state: "focused" 0.0;
530                inherit: "default" 0.0;
531                image.normal: "00_button_01_normal_Focus.png";
532             }
533          }
534          part { name: "padding_left_top";
535             type: RECT;
536             scale: 1;
537             mouse_events: 0;
538             description { state: "default" 0.0;
539                align: 0.0 0.0;
540                rel2.relative: 0.0 0.0;
541                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
542                fixed: 1 1;
543                visible: 0;
544             }
545          }
546          part { name: "bg";
547             type: RECT;
548             scale: 1;
549             mouse_events: 0;
550             description { state: "default" 0.0;
551                min: BUTTON_TEXT_STYLE1_BG_MIN_INC;
552                visible: 0;
553             }
554             description { state: "visible" 0.0;
555                inherit: "default" 0.0;
556                min: BUTTON_TEXT_STYLE1_VISIBLE_BG_MIN_INC;
557             }
558             description { state: "icononly" 0.0;
559                inherit: "default" 0.0;
560                min: BUTTON_TEXT_STYLE1_ICONONLY_BG_MIN_INC;
561             }
562          }
563          part { name: "padding_right_bottom";
564             type: RECT;
565             scale: 1;
566             mouse_events: 0;
567             description { state: "default" 0.0;
568                align: 1.0 1.0;
569                rel1.relative: 1.0 1.0;
570                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
571                fixed: 1 1;
572                visible: 0;
573             }
574          }
575          part { name: "icon_rect";
576             type: RECT;
577             scale: 1;
578             mouse_events: 0;
579             description { state: "default" 0.0;
580                visible: 0;
581                min: 0 0;
582                fixed: 1 0;
583                rel1 {
584                   relative: 1.0 1.0;
585                   to: "padding_left_top";
586                }
587                rel2 {
588                   relative: 1.0 0.0;
589                   to_x: "padding_left_top";
590                   to_y: "padding_right_bottom";
591                }
592                align: 0.0 0.5;
593             }
594             description { state: "visible" 0.0;
595                visible: 0;
596                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
597                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
598                fixed: 1 0;
599                rel1 {
600                   relative: 1.0 1.0;
601                   to: "padding_left_top";
602                }
603                rel2 {
604                   relative: 1.0 0.0;
605                   to_x: "padding_left_top";
606                   to_y: "padding_right_bottom";
607                }
608                align: 0.0 0.5;
609             }
610             description { state: "icononly" 0.0;
611                inherit: "default" 0.0;
612             }
613          }
614          part { name: "padding_after_icon";
615             type: RECT;
616             scale: 1;
617             mouse_events: 0;
618             description { state: "default" 0.0; //when only icon or no icon is there
619                align: 0.0 0.0;
620                rel1 {
621                   relative: 1.0 0.0;
622                   to: "icon_rect";
623                }
624                rel2.to: "icon_rect";
625                fixed: 1 0;
626                min: 0 0;
627                visible: 0;
628             }
629             description { state: "visible" 0.0;
630                visible: 0;
631                align: 0.0 0.0;
632                rel1 {
633                   relative: 1.0 0.0;
634                   to: "icon_rect";
635                }
636                rel2.to: "icon_rect";
637                fixed: 1 0;
638                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
639             }
640             description { state: "icononly" 0.0;
641                inherit: "default" 0.0;
642             }
643          }
644          part { name: "padding_before_text";
645             type: RECT;
646             scale: 1;
647             mouse_events: 0;
648             description { state: "default" 0.0; //when only icon or no icon is there
649                align: 1.0 0.5;
650                rel1 {
651                   relative: 0.0 1.0;
652                   to_x: "elm.text";
653                   to_y: "padding_left_top";
654                }
655                rel2 {
656                   relative: 0.0 0.0;
657                   to_x: "elm.text";
658                   to_y: "padding_right_bottom";
659                }
660                fixed: 1 0;
661                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
662                visible: 0;
663             }
664          }
665          part { name: "elm.swallow.content";
666             type: SWALLOW;
667             scale: 1;
668             clip_to: "clipper";
669             description { state: "default" 0.0;
670                visible: 0;
671                align: 0.0 0.5;
672                rel1 {
673                   relative: 1.0 1.0;
674                   to: "padding_left_top";
675                }
676                rel2 {
677                   relative: 1.0 0.0;
678                   to_x: "padding_left_top";
679                   to_y: "padding_right_bottom";
680                }
681                fixed: 1 0;
682             }
683             description { state: "visible" 0.0;
684                fixed: 1 0;
685                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
686                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
687                align: 1.0 0.5;
688                rel1 {
689                   relative: 0.0 1.0;
690                   to_x: "padding_before_text";
691                   to_y: "padding_left_top";
692                }
693                rel2 {
694                   relative: 0.0 0.0;
695                   to_x: "padding_before_text";
696                   to_y: "padding_right_bottom";
697                }
698             }
699             description { state: "icononly" 0.0;
700                min: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
701                max: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
702             }
703          }
704          part { name: "elm.text";
705             type: TEXT;
706             mouse_events: 0;
707             scale: 1;
708             clip_to: "clipper";
709             description { state: "default" 0.0;
710                visible: 0;
711                rel1 {
712                   relative: 1.0 1.0;
713                   to_x: "padding_after_icon";
714                   to_y: "padding_left_top";
715                }
716                rel2 {
717                   relative: 0.0 0.0;
718                   to: "padding_right_bottom";
719                }
720                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
721                text {
722                   font: "SLP:style=Medium";
723                   size: BUTTON_TEXT_STYLE1_FONT_SIZE_INC;
724                   min: 1 0;
725                   max: 1 0;
726                   text_class: "slp_medium";
727                }
728             }
729             description { state: "visible" 0.0;
730                inherit: "default" 0.0;
731                visible: 1;
732             }
733             description { state: "clicked" 0.0;
734                inherit: "default" 0.0;
735                visible: 1;
736                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
737             }
738             description { state: "disabled" 0.0;
739                inherit: "default" 0.0;
740                color: 0 0 0 128;
741             }
742             description { state: "disabled_visible" 0.0;
743                inherit: "default" 0.0;
744                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
745                visible: 1;
746             }
747             description { state: "focused" 0.0;
748                inherit: "default" 0.0;
749                visible: 1;
750                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
751             }
752          }
753          part { name: "over2";
754             type: RECT;
755             repeat_events: 1;
756             ignore_flags: ON_HOLD;
757             description { state: "default" 0.0;
758                color: 0 0 0 0;
759             }
760          }
761          part { name: "over3";
762             type: RECT;
763             repeat_events: 1;
764             description { state: "default" 0.0;
765                color: 0 0 0 0;
766             }
767          }
768          part { name: "clipper";
769             type: RECT;
770             description { state: "default" 0.0;
771                color: 255 255 255 255;
772             }
773          }
774          part { name: "disabler";
775             type: RECT;
776             description { state: "default" 0.0;
777                color: 0 0 0 0;
778                visible: 0;
779             }
780             description { state: "disabled" 0.0;
781                inherit: "default" 0.0;
782                visible: 1;
783             }
784          }
785       }
786       programs {
787          program { name: "button_click";
788             signal: "mouse,down,1";
789             source: "over2";
790             action: SIGNAL_EMIT "elm,action,press" "";
791             after: "button_click_anim";
792          }
793          program { name: "button_click_anim";
794             action: STATE_SET "clicked" 0.0;
795             target: "button_image";
796             after: "text_clicked";
797          }
798          program { name: "text_clicked";
799             script {
800                new st[31];
801                new Float:vl;
802                get_state(PART:"elm.text", st, 30, vl);
803                if (!strcmp(st, "visible"))
804                  set_state(PART:"elm.text", "clicked", 0.0);
805             }
806          }
807          program { name: "button_unpress";
808             action: SIGNAL_EMIT "elm,action,unpress" "";
809          }
810          program { name: "button_mouseout_clicked";
811             signal: "mouse,up,1";
812             source: "over3";
813             script {
814                new st[31];
815                new Float:vl;
816                get_state(PART:"elm.swallow.content", st, 30, vl);
817                if (strcmp(st, "icononly"))
818                  {
819                     emit("elm,action,default,text,set", "");
820                     set_state(PART:"elm.text", "visible", 0.0);
821                  }
822                if (get_int(button_state) != BUTTON_STATE_DISABLED)
823                  set_state(PART:"button_image", "default", 0.0);
824             }
825             after: button_unpress;
826          }
827          program { name: "touch_snd";
828             signal: "mouse,clicked,1";
829             source: "over2";
830             action: PLAY_SAMPLE "touch_sound" 1.0;
831             after: button_unclick3;
832          }
833          program { name: "button_unclick3";
834             action: SIGNAL_EMIT "elm,action,click" "";
835          }
836          program { name: "text_show";
837             signal: "elm,state,text,visible";
838             source: "elm";
839             script {
840                new st[31];
841                new Float:vl;
842                get_state(PART:"elm.swallow.content", st, 30, vl);
843                if (!strcmp(st, "icononly"))
844                  {
845                     set_state(PART:"elm.swallow.content", "visible", 0.0);
846                     set_state(PART:"icon_rect", "visible", 0.0);
847                     set_state(PART:"padding_after_icon", "visible", 0.0);
848                     set_state(PART:"bg", "visible", 0.0);
849                  }
850                if (get_int(button_state) != BUTTON_STATE_DISABLED)
851                  set_state(PART:"elm.text", "visible", 0.0);
852                else
853                  set_state(PART:"elm.text", "disabled_visible", 0.0);
854             }
855          }
856          program { name: "text_hide";
857             signal: "elm,state,text,hidden";
858             source: "elm";
859             script {
860                new st[31];
861                new Float:vl;
862                get_state(PART:"elm.swallow.content", st, 30, vl);
863                if (!strcmp(st, "visible"))
864                  {
865                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
866                     set_state(PART:"icon_rect", "icononly", 0.0);
867                     set_state(PART:"padding_after_icon", "icononly", 0.0);
868                     set_state(PART:"bg", "icononly", 0.0);
869                  }
870                set_state(PART:"elm.text", "default", 0.0);
871             }
872          }
873          program { name: "icon_show";
874             signal: "elm,state,icon,visible";
875             source: "elm";
876             script {
877                new st[31];
878                new Float:vl;
879                get_state(PART:"elm.text", st, 30, vl);
880                if (!strcmp(st, "visible"))
881                  {
882                     set_state(PART:"elm.swallow.content", "visible", 0.0);
883                     set_state(PART:"icon_rect", "visible", 0.0);
884                     set_state(PART:"padding_after_icon", "visible", 0.0);
885                     set_state(PART:"bg", "visible", 0.0);
886                  }
887                else
888                  {
889                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
890                     set_state(PART:"icon_rect", "icononly", 0.0);
891                     set_state(PART:"padding_after_icon", "icononly", 0.0);
892                     set_state(PART:"bg", "icononly", 0.0);
893                  }
894             }
895          }
896          program { name: "icon_hide";
897             signal: "elm,state,icon,hidden";
898             source: "elm";
899             action: STATE_SET "default" 0.0;
900             target: "elm.swallow.content";
901             target: "padding_after_icon";
902             target: "icon_rect";
903             target: "bg";
904          }
905          program { name: "disable";
906             signal: "elm,state,disabled";
907             source: "elm";
908             action: STATE_SET "disabled" 0.0;
909             target: "button_image";
910             target: "disabler";
911             after: "disable_text";
912          }
913          program { name: "disable_text";
914             script {
915                new st[31];
916                new Float:vl;
917                get_state(PART:"elm.text", st, 30, vl);
918                if (!strcmp(st, "visible"))
919                  set_state(PART:"elm.text", "disabled_visible", 0.0);
920                else
921                  set_state(PART:"elm.text", "disabled", 0.0);
922                set_int(button_state, BUTTON_STATE_DISABLED);
923             }
924          }
925          program { name: "enable";
926             signal: "elm,state,enabled";
927             source: "elm";
928             action: STATE_SET "default" 0.0;
929             target: "button_image";
930             target: "disabler";
931             after: "enable_text";
932          }
933          program { name: "enable_text";
934             script {
935                new st[31];
936                new Float:vl;
937                get_state(PART:"elm.text", st, 30, vl);
938                if (!strcmp(st, "disabled_visible"))
939                  set_state(PART:"elm.text", "visible", 0.0);
940                else
941                  set_state(PART:"elm.text", "default", 0.0);
942                set_int(button_state, BUTTON_STATE_ENABLED);
943             }
944          }
945          program { name: "focused";
946             //signal: "elm,action,focus";
947             //source: "elm";
948             action: STATE_SET "focused" 0.0;
949             target: "button_image";
950             target: "elm.text";
951          }
952          program { name: "unfocused";
953             //signal: "elm,action,unfocus";
954             //source: "elm";
955             action: STATE_SET "default" 0.0;
956             target: "button_image";
957             after: "unfocus_text";
958          }
959          program { name: "unfocus_text";
960             action: STATE_SET "visible" 0.0;
961             target: "elm.text";
962          }
963       }
964    }
965
966 //////////////////////////////////////////////////////////////////////////////////////
967    group { name: "elm/button/base/style1/multiline";
968       images {
969          image: "00_button_01_normal.png" COMP;
970          image: "00_button_01_normal_press.png" COMP;
971          image: "00_button_01_normal_dim.png" COMP;
972          image: "00_button_01_normal_Focus.png" COMP;
973       }
974       styles{
975          style { name: "btn_style1_multiline";
976             base: "font=SLP:style=Roman font_size="BUTTON_TEXT_STYLE1_MULTILINE_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed ellipise=1.0 text_class=slp_roman";
977             tag: "br" "\n";
978             tag: "ps" "ps";
979             tag: "tab" "\t";
980          }
981       }
982       script {
983          public button_state = BUTTON_STATE_ENABLED;
984       }
985       parts {
986          part { name: "button_image";
987             scale: 1;
988             description { state: "default" 0.0;
989                image {
990                   normal: "00_button_01_normal.png";
991                   border: BUTTON_TEXT_STYLE1_BG_BORDER_INC;
992                   border_scale: 1;
993                }
994             }
995             description { state: "clicked" 0.0;
996                inherit: "default" 0.0;
997                image.normal: "00_button_01_normal_press.png";
998             }
999             description { state: "disabled" 0.0;
1000                inherit: "default" 0.0;
1001                image.normal: "00_button_01_normal_dim.png";
1002             }
1003             description { state: "focused" 0.0;
1004                inherit: "default" 0.0;
1005                image.normal: "00_button_01_normal_Focus.png";
1006             }
1007          }
1008          part { name: "padding_left_top";
1009             type: RECT;
1010             scale: 1;
1011             mouse_events: 0;
1012             description { state: "default" 0.0;
1013                align: 0.0 0.0;
1014                rel2.relative: 0.0 0.0;
1015                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
1016                fixed: 1 1;
1017                visible: 0;
1018             }
1019          }
1020          part { name: "bg";
1021             type: RECT;
1022             scale: 1;
1023             mouse_events: 0;
1024             description { state: "default" 0.0;
1025                min: BUTTON_TEXT_STYLE1_BG_MIN_INC;
1026                visible: 0;
1027             }
1028             description { state: "visible" 0.0;
1029                inherit: "default" 0.0;
1030                min: BUTTON_TEXT_STYLE1_VISIBLE_BG_MIN_INC;
1031             }
1032             description { state: "icononly" 0.0;
1033                inherit: "default" 0.0;
1034                min: BUTTON_TEXT_STYLE1_ICONONLY_BG_MIN_INC;
1035             }
1036          }
1037          part { name: "padding_right_bottom";
1038             type: RECT;
1039             scale: 1;
1040             mouse_events: 0;
1041             description { state: "default" 0.0;
1042                align: 1.0 1.0;
1043                rel1.relative: 1.0 1.0;
1044                min: BUTTON_TEXT_STYLE1_PADDING_MIN_INC;
1045                fixed: 1 1;
1046                visible: 0;
1047             }
1048          }
1049          part { name: "icon_rect";
1050             type: RECT;
1051             scale: 1;
1052             mouse_events: 0;
1053             description { state: "default" 0.0;
1054                visible: 0;
1055                min: 0 0;
1056                fixed: 1 0;
1057                rel1 {
1058                   relative: 1.0 1.0;
1059                   to: "padding_left_top";
1060                }
1061                rel2 {
1062                   relative: 1.0 0.0;
1063                   to_x: "padding_left_top";
1064                   to_y: "padding_right_bottom";
1065                }
1066                align: 0.0 0.5;
1067             }
1068             description { state: "visible" 0.0;
1069                visible: 0;
1070                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
1071                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
1072                fixed: 1 0;
1073                rel1 {
1074                   relative: 1.0 1.0;
1075                   to: "padding_left_top";
1076                }
1077                rel2 {
1078                   relative: 1.0 0.0;
1079                   to_x: "padding_left_top";
1080                   to_y: "padding_right_bottom";
1081                }
1082                align: 0.0 0.5;
1083             }
1084             description { state: "icononly" 0.0;
1085                inherit: "default" 0.0;
1086             }
1087          }
1088          part { name: "padding_after_icon";
1089             type: RECT;
1090             scale: 1;
1091             mouse_events: 0;
1092             description { state: "default" 0.0; //when only icon or no icon is there
1093                align: 0.0 0.0;
1094                rel1 {
1095                   relative: 1.0 0.0;
1096                   to: "icon_rect";
1097                }
1098                rel2.to: "icon_rect";
1099                fixed: 1 0;
1100                min: 5 0;
1101                visible: 0;
1102             }
1103             description { state: "visible" 0.0;
1104                visible: 0;
1105                align: 0.0 0.0;
1106                rel1 {
1107                   relative: 1.0 0.0;
1108                   to: "icon_rect";
1109                }
1110                rel2.to: "icon_rect";
1111                fixed: 1 0;
1112                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
1113             }
1114             description { state: "icononly" 0.0;
1115                inherit: "default" 0.0;
1116             }
1117          }
1118          part { name: "padding_before_text";
1119             type: RECT;
1120             scale: 1;
1121             mouse_events: 0;
1122             description { state: "default" 0.0; //when only icon or no icon is there
1123                align: 1.0 0.5;
1124                rel1 {
1125                   relative: 0.0 1.0;
1126                   to_x: "elm.text";
1127                   to_y: "padding_left_top";
1128                }
1129                rel2 {
1130                   relative: 0.0 0.0;
1131                   to_x: "elm.text";
1132                   to_y: "padding_right_bottom";
1133                }
1134                fixed: 1 0;
1135                min: BUTTON_TEXT_STYLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
1136                visible: 0;
1137             }
1138          }
1139          part { name: "elm.swallow.content";
1140             type: SWALLOW;
1141             scale: 1;
1142             clip_to: "clipper";
1143             description { state: "default" 0.0;
1144                visible: 0;
1145                align: 0.0 0.5;
1146                rel1 {
1147                   relative: 1.0 1.0;
1148                   to: "padding_left_top";
1149                }
1150                rel2 {
1151                   relative: 1.0 0.0;
1152                   to_x: "padding_left_top";
1153                   to_y: "padding_right_bottom";
1154                }
1155                fixed: 1 0;
1156             }
1157             description { state: "visible" 0.0;
1158                fixed: 1 0;
1159                min: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
1160                max: BUTTON_TEXT_STYLE1_VISIBLE_ICON_MIN_MAX_INC;
1161                align: 1.0 0.5;
1162                rel1 {
1163                   relative: 0.0 1.0;
1164                   to_x: "padding_before_text";
1165                   to_y: "padding_left_top";
1166                }
1167                rel2 {
1168                   relative: 0.0 0.0;
1169                   to_x: "padding_before_text";
1170                   to_y: "padding_right_bottom";
1171                }
1172             }
1173             description { state: "icononly" 0.0;
1174                min: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
1175                max: BUTTON_TEXT_STYLE1_ICONONLY_ICON_MIN_MAX_INC;
1176             }
1177          }
1178          part { name: "elm.text";
1179             type: TEXTBLOCK;
1180             mouse_events: 0;
1181             scale: 1;
1182             clip_to: "clipper";
1183             description { state: "default" 0.0;
1184                visible: 0;
1185                rel1 {
1186                   relative: 1.0 1.0;
1187                   to_x: "padding_after_icon";
1188                   to_y: "padding_left_top";
1189                }
1190                rel2 {
1191                   relative: 0.0 0.0;
1192                   to: "padding_right_bottom";
1193                }
1194                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
1195                text {
1196                    style: "btn_style1_multiline";
1197                    min: 0 0;
1198                    max: 0 1;
1199                }
1200             }
1201             description { state: "visible" 0.0;
1202                inherit: "default" 0.0;
1203                visible: 1;
1204             }
1205             description { state: "clicked" 0.0;
1206                inherit: "default" 0.0;
1207                visible: 1;
1208                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
1209             }
1210             description { state: "disabled" 0.0;
1211                inherit: "default" 0.0;
1212                color: 0 0 0 128;
1213             }
1214             description { state: "disabled_visible" 0.0;
1215                inherit: "default" 0.0;
1216                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
1217                visible: 1;
1218             }
1219             description { state: "focused" 0.0;
1220                inherit: "default" 0.0;
1221                visible: 1;
1222                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
1223             }
1224          }
1225          part { name: "over2";
1226             type: RECT;
1227             repeat_events: 1;
1228             ignore_flags: ON_HOLD;
1229             description { state: "default" 0.0;
1230                color: 0 0 0 0;
1231             }
1232          }
1233          part { name: "over3";
1234             type: RECT;
1235             repeat_events: 1;
1236             description { state: "default" 0.0;
1237                color: 0 0 0 0;
1238             }
1239          }
1240          part { name: "clipper";
1241             type: RECT;
1242             description { state: "default" 0.0;
1243                color: 255 255 255 255;
1244             }
1245          }
1246          part { name: "disabler";
1247             type: RECT;
1248             description { state: "default" 0.0;
1249                color: 0 0 0 0;
1250                visible: 0;
1251             }
1252             description { state: "disabled" 0.0;
1253                inherit: "default" 0.0;
1254                visible: 1;
1255             }
1256          }
1257       }
1258       programs {
1259          program { name: "button_click";
1260             signal: "mouse,down,1";
1261             source: "over2";
1262             action: SIGNAL_EMIT "elm,action,press" "";
1263             after: "button_click_anim";
1264          }
1265          program { name: "button_click_anim";
1266             action: STATE_SET "clicked" 0.0;
1267             target: "button_image";
1268             after: "text_clicked";
1269          }
1270          program { name: "text_clicked";
1271             script {
1272                new st[31];
1273                new Float:vl;
1274                get_state(PART:"elm.text", st, 30, vl);
1275                if (!strcmp(st, "visible"))
1276                  set_state(PART:"elm.text", "clicked", 0.0);
1277             }
1278          }
1279          program { name: "button_unpress";
1280             action: SIGNAL_EMIT "elm,action,unpress" "";
1281          }
1282          program { name: "button_mouseout_clicked";
1283             signal: "mouse,up,1";
1284             source: "over3";
1285             script {
1286                new st[31];
1287                new Float:vl;
1288                get_state(PART:"elm.swallow.content", st, 30, vl);
1289                if (strcmp(st, "icononly"))
1290                  {
1291                     emit("elm,action,default,text,set", "");
1292                     set_state(PART:"elm.text", "visible", 0.0);
1293                  }
1294                if (get_int(button_state) != BUTTON_STATE_DISABLED)
1295                  set_state(PART:"button_image", "default", 0.0);
1296             }
1297             after: button_unpress;
1298          }
1299          program { name: "touch_snd";
1300             signal: "mouse,clicked,1";
1301             source: "over2";
1302             action: PLAY_SAMPLE "touch_sound" 1.0;
1303             after: button_unclick3;
1304          }
1305          program { name: "button_unclick3";
1306             action: SIGNAL_EMIT "elm,action,click" "";
1307          }
1308          program { name: "text_show";
1309             signal: "elm,state,text,visible";
1310             source: "elm";
1311             script {
1312                new st[31];
1313                new Float:vl;
1314                get_state(PART:"elm.swallow.content", st, 30, vl);
1315                if (!strcmp(st, "icononly"))
1316                  {
1317                     set_state(PART:"elm.swallow.content", "visible", 0.0);
1318                     set_state(PART:"icon_rect", "visible", 0.0);
1319                     set_state(PART:"padding_after_icon", "visible", 0.0);
1320                     set_state(PART:"bg", "visible", 0.0);
1321                  }
1322                if (get_int(button_state) != BUTTON_STATE_DISABLED)
1323                  set_state(PART:"elm.text", "visible", 0.0);
1324                else
1325                  set_state(PART:"elm.text", "disabled_visible", 0.0);
1326             }
1327          }
1328          program { name: "text_hide";
1329             signal: "elm,state,text,hidden";
1330             source: "elm";
1331             script {
1332                new st[31];
1333                new Float:vl;
1334                get_state(PART:"elm.swallow.content", st, 30, vl);
1335                if (!strcmp(st, "visible"))
1336                  {
1337                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
1338                     set_state(PART:"icon_rect", "icononly", 0.0);
1339                     set_state(PART:"padding_after_icon", "icononly", 0.0);
1340                     set_state(PART:"bg", "icononly", 0.0);
1341                  }
1342                set_state(PART:"elm.text", "default", 0.0);
1343             }
1344          }
1345          program { name: "icon_show";
1346             signal: "elm,state,icon,visible";
1347             source: "elm";
1348             script {
1349                new st[31];
1350                new Float:vl;
1351                get_state(PART:"elm.text", st, 30, vl);
1352                if (!strcmp(st, "visible"))
1353                  {
1354                     set_state(PART:"elm.swallow.content", "visible", 0.0);
1355                     set_state(PART:"icon_rect", "visible", 0.0);
1356                     set_state(PART:"padding_after_icon", "visible", 0.0);
1357                     set_state(PART:"bg", "visible", 0.0);
1358                  }
1359                else
1360                  {
1361                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
1362                     set_state(PART:"icon_rect", "icononly", 0.0);
1363                     set_state(PART:"padding_after_icon", "icononly", 0.0);
1364                     set_state(PART:"bg", "icononly", 0.0);
1365                  }
1366             }
1367          }
1368          program { name: "icon_hide";
1369             signal: "elm,state,icon,hidden";
1370             source: "elm";
1371             action: STATE_SET "default" 0.0;
1372             target: "elm.swallow.content";
1373             target: "padding_after_icon";
1374             target: "icon_rect";
1375             target: "bg";
1376          }
1377          program { name: "disable";
1378             signal: "elm,state,disabled";
1379             source: "elm";
1380             action: STATE_SET "disabled" 0.0;
1381             target: "button_image";
1382             target: "disabler";
1383             after: "disable_text";
1384          }
1385          program { name: "disable_text";
1386             script {
1387                new st[31];
1388                new Float:vl;
1389                get_state(PART:"elm.text", st, 30, vl);
1390                if (!strcmp(st, "visible"))
1391                  set_state(PART:"elm.text", "disabled_visible", 0.0);
1392                else
1393                  set_state(PART:"elm.text", "disabled", 0.0);
1394                set_int(button_state, BUTTON_STATE_DISABLED);
1395             }
1396          }
1397          program { name: "enable";
1398             signal: "elm,state,enabled";
1399             source: "elm";
1400             action: STATE_SET "default" 0.0;
1401             target: "button_image";
1402             target: "disabler";
1403             after: "enable_text";
1404          }
1405          program { name: "enable_text";
1406             script {
1407                new st[31];
1408                new Float:vl;
1409                get_state(PART:"elm.text", st, 30, vl);
1410                if (!strcmp(st, "disabled_visible"))
1411                  set_state(PART:"elm.text", "visible", 0.0);
1412                else
1413                  set_state(PART:"elm.text", "default", 0.0);
1414                set_int(button_state, BUTTON_STATE_ENABLED);
1415             }
1416          }
1417          program { name: "focused";
1418             //signal: "elm,action,focus";
1419             //source: "elm";
1420             action: STATE_SET "focused" 0.0;
1421             target: "button_image";
1422             target: "elm.text";
1423          }
1424          program { name: "unfocused";
1425             //signal: "elm,action,unfocus";
1426             //source: "elm";
1427             action: STATE_SET "default" 0.0;
1428             target: "button_image";
1429             after: "unfocus_text";
1430          }
1431          program { name: "unfocus_text";
1432             action: STATE_SET "visible" 0.0;
1433             target: "elm.text";
1434          }
1435       }
1436    }
1437
1438 ///////////////////////////////////////////////////////////////////////////////////////
1439    group { name: "elm/button/base/style2";
1440       alias: "elm/button/base/text_only/style2";
1441       images {
1442          image: "00_button_04_normal.png" COMP;
1443          image: "00_button_04_press.png" COMP;
1444          image: "00_button_04_dim.png" COMP;
1445          image: "00_button_04_normal_focus.png" COMP;
1446       }
1447       script {
1448          public button_state = BUTTON_STATE_ENABLED;
1449       }
1450       parts {
1451          part { name: "button_image";
1452             scale: 1;
1453             description { state: "default" 0.0;
1454                image {
1455                   normal: "00_button_04_normal.png";
1456                   border: BUTTON_TEXT_STYLE2_BG_BORDER_INC;
1457                   border_scale: 1;
1458                }
1459             }
1460             description { state: "clicked" 0.0;
1461                inherit: "default" 0.0;
1462                image.normal: "00_button_04_press.png";
1463             }
1464             description { state: "disabled" 0.0;
1465                inherit: "default" 0.0;
1466                image.normal: "00_button_04_dim.png";
1467             }
1468             description { state: "focused" 0.0;
1469                inherit: "default" 0.0;
1470                image.normal: "00_button_04_normal_focus.png";
1471             }
1472          }
1473          part { name: "padding_left_top";
1474             type: RECT;
1475             scale: 1;
1476             mouse_events: 0;
1477             description { state: "default" 0.0;
1478                align: 0.0 0.0;
1479                rel2.relative: 0.0 0.0;
1480                min: BUTTON_TEXT_STYLE2_PADDING_MIN_INC;
1481                fixed: 1 1;
1482                visible: 0;
1483             }
1484          }
1485          part { name: "bg";
1486             type: RECT;
1487             scale: 1;
1488             mouse_events: 0;
1489             description { state: "default" 0.0;
1490                min: BUTTON_TEXT_STYLE2_BG_MIN_INC;
1491                visible: 0;
1492             }
1493             description { state: "visible" 0.0;
1494                inherit: "default" 0.0;
1495                min: BUTTON_TEXT_STYLE2_VISIBLE_BG_MIN_INC;
1496             }
1497             description { state: "icononly" 0.0;
1498                inherit: "default" 0.0;
1499                min: BUTTON_TEXT_STYLE2_ICONONLY_BG_MIN_INC;
1500             }
1501          }
1502          part { name: "padding_right_bottom";
1503             type: RECT;
1504             scale: 1;
1505             mouse_events: 0;
1506             description { state: "default" 0.0;
1507                align: 1.0 1.0;
1508                rel1.relative: 1.0 1.0;
1509                min: BUTTON_TEXT_STYLE2_PADDING_MIN_INC;
1510                fixed: 1 1;
1511                visible: 0;
1512             }
1513          }
1514          part { name: "icon_rect";
1515             type: RECT;
1516             scale: 1;
1517             mouse_events: 0;
1518             description { state: "default" 0.0;
1519                visible: 0;
1520                min: 0 0;
1521                fixed: 1 0;
1522                rel1 {
1523                   relative: 1.0 1.0;
1524                   to: "padding_left_top";
1525                }
1526                rel2 {
1527                   relative: 1.0 0.0;
1528                   to_x: "padding_left_top";
1529                   to_y: "padding_right_bottom";
1530                }
1531                align: 0.0 0.5;
1532             }
1533             description { state: "visible" 0.0;
1534                visible: 0;
1535                min: BUTTON_TEXT_STYLE2_VISIBLE_ICON_RECT_MIN_MAX_INC;
1536                max: BUTTON_TEXT_STYLE2_VISIBLE_ICON_RECT_MIN_MAX_INC;
1537                fixed: 1 0;
1538                rel1 {
1539                   relative: 1.0 1.0;
1540                   to: "padding_left_top";
1541                }
1542                rel2 {
1543                   relative: 1.0 0.0;
1544                   to_x: "padding_left_top";
1545                   to_y: "padding_right_bottom";
1546                }
1547                align: 0.0 0.5;
1548             }
1549             description { state: "icononly" 0.0;
1550                inherit: "default" 0.0;
1551             }
1552          }
1553          part { name: "padding_after_icon";
1554             type: RECT;
1555             scale: 1;
1556             mouse_events: 0;
1557             description { state: "default" 0.0; //when only icon or no icon is there
1558                align: 0.0 0.0;
1559                rel1 {
1560                   relative: 1.0 0.0;
1561                   to: "icon_rect";
1562                }
1563                rel2.to: "icon_rect";
1564                fixed: 1 0;
1565                min: 0 0;
1566                visible: 0;
1567             }
1568             description { state: "visible" 0.0;
1569                visible: 0;
1570                align: 0.0 0.0;
1571                rel1 {
1572                   relative: 1.0 0.0;
1573                   to: "icon_rect";
1574                }
1575                rel2.to: "icon_rect";
1576                fixed: 1 0;
1577                min: BUTTON_TEXT_STYLE2_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
1578             }
1579             description { state: "icononly" 0.0;
1580                inherit: "default" 0.0;
1581             }
1582          }
1583          part { name: "padding_before_text";
1584             type: RECT;
1585             scale: 1;
1586             mouse_events: 0;
1587             description { state: "default" 0.0; //when only icon or no icon is there
1588                align: 1.0 0.5;
1589                rel1 {
1590                   relative: 0.0 1.0;
1591                   to_x: "elm.text";
1592                   to_y: "padding_left_top";
1593                }
1594                rel2 {
1595                   relative: 0.0 0.0;
1596                   to_x: "elm.text";
1597                   to_y: "padding_right_bottom";
1598                }
1599                fixed: 1 0;
1600                min: BUTTON_TEXT_STYLE2_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
1601                visible: 0;
1602             }
1603          }
1604          part { name: "elm.swallow.content";
1605             type: SWALLOW;
1606             scale: 1;
1607             clip_to: "clipper";
1608             description { state: "default" 0.0;
1609                visible: 0;
1610                align: 0.0 0.5;
1611                rel1 {
1612                   relative: 1.0 1.0;
1613                   to: "padding_left_top";
1614                }
1615                rel2 {
1616                   relative: 1.0 0.0;
1617                   to_x: "padding_left_top";
1618                   to_y: "padding_right_bottom";
1619                }
1620                fixed: 1 0;
1621             }
1622             description { state: "visible" 0.0;
1623                fixed: 1 0;
1624                min: BUTTON_TEXT_STYLE2_VISIBLE_ICON_MIN_MAX_INC;
1625                max: BUTTON_TEXT_STYLE2_VISIBLE_ICON_MIN_MAX_INC;
1626                align: 1.0 0.5;
1627                rel1 {
1628                   relative: 0.0 1.0;
1629                   to_x: "padding_before_text";
1630                   to_y: "padding_left_top";
1631                }
1632                rel2 {
1633                   relative: 0.0 0.0;
1634                   to_x: "padding_before_text";
1635                   to_y: "padding_right_bottom";
1636                }
1637             }
1638             description { state: "icononly" 0.0;
1639                min: BUTTON_TEXT_STYLE2_ICONONLY_ICON_MIN_MAX_INC;
1640                max: BUTTON_TEXT_STYLE2_ICONONLY_ICON_MIN_MAX_INC;
1641             }
1642          }
1643          part { name: "elm.text";
1644             type: TEXT;
1645             mouse_events: 0;
1646             scale: 1;
1647             clip_to: "clipper";
1648             description { state: "default" 0.0;
1649                visible: 0;
1650                rel1 {
1651                   relative: 1.0 1.0;
1652                   to_x: "padding_after_icon";
1653                   to_y: "padding_left_top";
1654                }
1655                rel2 {
1656                   relative: 0.0 0.0;
1657                   to: "padding_right_bottom";
1658                }
1659                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
1660                text {
1661                   font: "SLP:style=Medium";
1662                   size: BUTTON_TEXT_STYLE2_FONT_SIZE_INC;
1663                   min: 0 0;
1664                   max: 1 0;
1665                   text_class: "slp_medium";
1666                }
1667             }
1668             description { state: "visible" 0.0;
1669                inherit: "default" 0.0;
1670                visible: 1;
1671             }
1672             description { state: "clicked" 0.0;
1673                inherit: "default" 0.0;
1674                visible: 1;
1675                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
1676             }
1677             description { state: "disabled" 0.0;
1678                inherit: "default" 0.0;
1679                color: 0 0 0 128;
1680             }
1681             description { state: "disabled_visible" 0.0;
1682                inherit: "default" 0.0;
1683                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
1684                visible: 1;
1685             }
1686             description { state: "focused" 0.0;
1687                inherit: "default" 0.0;
1688                visible: 1;
1689                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
1690             }
1691          }
1692          part { name: "over2";
1693             type: RECT;
1694             repeat_events: 1;
1695             ignore_flags: ON_HOLD;
1696             description { state: "default" 0.0;
1697                color: 0 0 0 0;
1698             }
1699          }
1700          part { name: "over3";
1701             type: RECT;
1702             repeat_events: 1;
1703             description { state: "default" 0.0;
1704                color: 0 0 0 0;
1705             }
1706          }
1707          part { name: "clipper";
1708             type: RECT;
1709             description { state: "default" 0.0;
1710                color: 255 255 255 255;
1711             }
1712          }
1713          part { name: "disabler";
1714             type: RECT;
1715             description { state: "default" 0.0;
1716                color: 0 0 0 0;
1717                visible: 0;
1718             }
1719             description { state: "disabled" 0.0;
1720                inherit: "default" 0.0;
1721                visible: 1;
1722             }
1723          }
1724       }
1725       programs {
1726          program { name: "button_click";
1727             signal: "mouse,down,1";
1728             source: "over2";
1729             action: SIGNAL_EMIT "elm,action,press" "";
1730             after: "button_click_anim";
1731          }
1732          program { name: "button_click_anim";
1733             action: STATE_SET "clicked" 0.0;
1734             target: "button_image";
1735             after: "text_clicked";
1736          }
1737          program { name: "text_clicked";
1738             script {
1739                new st[31];
1740                new Float:vl;
1741                get_state(PART:"elm.text", st, 30, vl);
1742                if (!strcmp(st, "visible"))
1743                  set_state(PART:"elm.text", "clicked", 0.0);
1744             }
1745          }
1746          program { name: "button_unpress";
1747             action: SIGNAL_EMIT "elm,action,unpress" "";
1748          }
1749          program { name: "button_mouseout_clicked";
1750             signal: "mouse,up,1";
1751             source: "over3";
1752             script {
1753                new st[31];
1754                new Float:vl;
1755                get_state(PART:"elm.swallow.content", st, 30, vl);
1756                if (strcmp(st, "icononly"))
1757                  {
1758                     emit("elm,action,default,text,set", "");
1759                     set_state(PART:"elm.text", "visible", 0.0);
1760                  }
1761                if (get_int(button_state) != BUTTON_STATE_DISABLED)
1762                  set_state(PART:"button_image", "default", 0.0);
1763             }
1764             after: button_unpress;
1765          }
1766          program { name: "touch_snd";
1767             signal: "mouse,clicked,1";
1768             source: "over2";
1769             action: PLAY_SAMPLE "touch_sound" 1.0;
1770             after: button_unclick3;
1771          }
1772          program { name: "button_unclick3";
1773             action: SIGNAL_EMIT "elm,action,click" "";
1774          }
1775          program { name: "text_show";
1776             signal: "elm,state,text,visible";
1777             source: "elm";
1778             script {
1779                new st[31];
1780                new Float:vl;
1781                get_state(PART:"elm.swallow.content", st, 30, vl);
1782                if (!strcmp(st, "icononly"))
1783                  {
1784                     set_state(PART:"elm.swallow.content", "visible", 0.0);
1785                     set_state(PART:"icon_rect", "visible", 0.0);
1786                     set_state(PART:"padding_after_icon", "visible", 0.0);
1787                     set_state(PART:"bg", "visible", 0.0);
1788                  }
1789                if (get_int(button_state) != BUTTON_STATE_DISABLED)
1790                  set_state(PART:"elm.text", "visible", 0.0);
1791                else
1792                  set_state(PART:"elm.text", "disabled_visible", 0.0);
1793             }
1794          }
1795          program { name: "text_hide";
1796             signal: "elm,state,text,hidden";
1797             source: "elm";
1798             script {
1799                new st[31];
1800                new Float:vl;
1801                get_state(PART:"elm.swallow.content", st, 30, vl);
1802                if (!strcmp(st, "visible"))
1803                  {
1804                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
1805                     set_state(PART:"icon_rect", "icononly", 0.0);
1806                     set_state(PART:"padding_after_icon", "icononly", 0.0);
1807                     set_state(PART:"bg", "icononly", 0.0);
1808                  }
1809                set_state(PART:"elm.text", "default", 0.0);
1810             }
1811          }
1812          program { name: "icon_show";
1813             signal: "elm,state,icon,visible";
1814             source: "elm";
1815             script {
1816                new st[31];
1817                new Float:vl;
1818                get_state(PART:"elm.text", st, 30, vl);
1819                if (!strcmp(st, "visible"))
1820                  {
1821                     set_state(PART:"elm.swallow.content", "visible", 0.0);
1822                     set_state(PART:"icon_rect", "visible", 0.0);
1823                     set_state(PART:"padding_after_icon", "visible", 0.0);
1824                     set_state(PART:"bg", "visible", 0.0);
1825                  }
1826                else
1827                  {
1828                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
1829                     set_state(PART:"icon_rect", "icononly", 0.0);
1830                     set_state(PART:"padding_after_icon", "icononly", 0.0);
1831                     set_state(PART:"bg", "icononly", 0.0);
1832                  }
1833             }
1834          }
1835          program { name: "icon_hide";
1836             signal: "elm,state,icon,hidden";
1837             source: "elm";
1838             action: STATE_SET "default" 0.0;
1839             target: "elm.swallow.content";
1840             target: "padding_after_icon";
1841             target: "icon_rect";
1842             target: "bg";
1843          }
1844          program { name: "disable";
1845             signal: "elm,state,disabled";
1846             source: "elm";
1847             action: STATE_SET "disabled" 0.0;
1848             target: "button_image";
1849             target: "disabler";
1850             after: "disable_text";
1851          }
1852          program { name: "disable_text";
1853             script {
1854                new st[31];
1855                new Float:vl;
1856                get_state(PART:"elm.text", st, 30, vl);
1857                if (!strcmp(st, "visible"))
1858                  set_state(PART:"elm.text", "disabled_visible", 0.0);
1859                else
1860                  set_state(PART:"elm.text", "disabled", 0.0);
1861                set_int(button_state, BUTTON_STATE_DISABLED);
1862             }
1863          }
1864          program { name: "enable";
1865             signal: "elm,state,enabled";
1866             source: "elm";
1867             action: STATE_SET "default" 0.0;
1868             target: "button_image";
1869             target: "disabler";
1870             after: "enable_text";
1871          }
1872          program { name: "enable_text";
1873             script {
1874                new st[31];
1875                new Float:vl;
1876                get_state(PART:"elm.text", st, 30, vl);
1877                if (!strcmp(st, "disabled_visible"))
1878                  set_state(PART:"elm.text", "visible", 0.0);
1879                else
1880                  set_state(PART:"elm.text", "default", 0.0);
1881                set_int(button_state, BUTTON_STATE_ENABLED);
1882             }
1883          }
1884          program { name: "focused";
1885             //signal: "elm,action,focus";
1886             //source: "elm";
1887             action: STATE_SET "focused" 0.0;
1888             target: "button_image";
1889             target: "elm.text";
1890          }
1891          program { name: "unfocused";
1892             //signal: "elm,action,unfocus";
1893             //source: "elm";
1894             action: STATE_SET "default" 0.0;
1895             target: "button_image";
1896             after: "unfocus_text";
1897          }
1898          program { name: "unfocus_text";
1899             action: STATE_SET "visible" 0.0;
1900             target: "elm.text";
1901          }
1902       }
1903    }
1904
1905 ///////////////////////////////////////////////////////////////////////////////////////
1906    group { name: "elm/button/base/style2/multiline";
1907       images {
1908          image: "00_button_04_normal.png" COMP;
1909          image: "00_button_04_press.png" COMP;
1910          image: "00_button_04_dim.png" COMP;
1911          image: "00_button_04_normal_focus.png" COMP;
1912       }
1913       styles{
1914          style { name: "btn_style2_multiline";
1915             base: "font=SLP:style=Roman font_size="BUTTON_TEXT_STYLE2_MULTILINE_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed ellipise=1.0 text_class=slp_roman";
1916             tag: "br" "\n";
1917             tag: "ps" "ps";
1918             tag: "tab" "\t";
1919          }
1920       }
1921       script {
1922          public button_state = BUTTON_STATE_ENABLED;
1923       }
1924       parts {
1925          part { name: "button_image";
1926             scale: 1;
1927             description { state: "default" 0.0;
1928                image {
1929                   normal: "00_button_04_normal.png";
1930                   border: BUTTON_TEXT_STYLE2_BG_BORDER_INC;
1931                   border_scale: 1;
1932                }
1933             }
1934             description { state: "clicked" 0.0;
1935                inherit: "default" 0.0;
1936                image.normal: "00_button_04_press.png";
1937             }
1938             description { state: "disabled" 0.0;
1939                inherit: "default" 0.0;
1940                image.normal: "00_button_04_dim.png";
1941             }
1942             description { state: "focused" 0.0;
1943                inherit: "default" 0.0;
1944                image.normal: "00_button_04_normal_focus.png";
1945             }
1946          }
1947          part { name: "padding_left_top";
1948             type: RECT;
1949             scale: 1;
1950             mouse_events: 0;
1951             description { state: "default" 0.0;
1952                align: 0.0 0.0;
1953                rel2.relative: 0.0 0.0;
1954                min: BUTTON_TEXT_STYLE2_PADDING_MIN_INC;
1955                fixed: 1 1;
1956                visible: 0;
1957             }
1958          }
1959          part { name: "bg";
1960             type: RECT;
1961             scale: 1;
1962             mouse_events: 0;
1963             description { state: "default" 0.0;
1964                min: BUTTON_TEXT_STYLE2_BG_MIN_INC;
1965                visible: 0;
1966             }
1967             description { state: "visible" 0.0;
1968                inherit: "default" 0.0;
1969                min: BUTTON_TEXT_STYLE2_VISIBLE_BG_MIN_INC;
1970             }
1971             description { state: "icononly" 0.0;
1972                inherit: "default" 0.0;
1973                min: BUTTON_TEXT_STYLE2_ICONONLY_BG_MIN_INC;
1974             }
1975          }
1976          part { name: "padding_right_bottom";
1977             type: RECT;
1978             scale: 1;
1979             mouse_events: 0;
1980             description { state: "default" 0.0;
1981                align: 1.0 1.0;
1982                rel1.relative: 1.0 1.0;
1983                min: BUTTON_TEXT_STYLE2_PADDING_MIN_INC;
1984                fixed: 1 1;
1985                visible: 0;
1986             }
1987          }
1988          part { name: "icon_rect";
1989             type: RECT;
1990             scale: 1;
1991             mouse_events: 0;
1992             description { state: "default" 0.0;
1993                visible: 0;
1994                min: 0 0;
1995                fixed: 1 0;
1996                rel1 {
1997                   relative: 1.0 1.0;
1998                   to: "padding_left_top";
1999                }
2000                rel2 {
2001                   relative: 1.0 0.0;
2002                   to_x: "padding_left_top";
2003                   to_y: "padding_right_bottom";
2004                }
2005                align: 0.0 0.5;
2006             }
2007             description { state: "visible" 0.0;
2008                visible: 0;
2009                min: BUTTON_TEXT_STYLE2_VISIBLE_ICON_RECT_MIN_MAX_INC;
2010                max: BUTTON_TEXT_STYLE2_VISIBLE_ICON_RECT_MIN_MAX_INC;
2011                fixed: 1 0;
2012                rel1 {
2013                   relative: 1.0 1.0;
2014                   to: "padding_left_top";
2015                }
2016                rel2 {
2017                   relative: 1.0 0.0;
2018                   to_x: "padding_left_top";
2019                   to_y: "padding_right_bottom";
2020                }
2021                align: 0.0 0.5;
2022             }
2023             description { state: "icononly" 0.0;
2024                inherit: "default" 0.0;
2025             }
2026          }
2027          part { name: "padding_after_icon";
2028             type: RECT;
2029             scale: 1;
2030             mouse_events: 0;
2031             description { state: "default" 0.0; //when only icon or no icon is there
2032                align: 0.0 0.0;
2033                rel1 {
2034                   relative: 1.0 0.0;
2035                   to: "icon_rect";
2036                }
2037                rel2.to: "icon_rect";
2038                fixed: 1 0;
2039                min: 0 0;
2040                visible: 0;
2041             }
2042             description { state: "visible" 0.0;
2043                visible: 0;
2044                align: 0.0 0.0;
2045                rel1 {
2046                   relative: 1.0 0.0;
2047                   to: "icon_rect";
2048                }
2049                rel2.to: "icon_rect";
2050                fixed: 1 0;
2051                min: BUTTON_TEXT_STYLE2_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
2052             }
2053             description { state: "icononly" 0.0;
2054                inherit: "default" 0.0;
2055             }
2056          }
2057          part { name: "padding_before_text";
2058             type: RECT;
2059             scale: 1;
2060             mouse_events: 0;
2061             description { state: "default" 0.0; //when only icon or no icon is there
2062                align: 1.0 0.5;
2063                rel1 {
2064                   relative: 0.0 1.0;
2065                   to_x: "elm.text";
2066                   to_y: "padding_left_top";
2067                }
2068                rel2 {
2069                   relative: 0.0 0.0;
2070                   to_x: "elm.text";
2071                   to_y: "padding_right_bottom";
2072                }
2073                fixed: 1 0;
2074                min: BUTTON_TEXT_STYLE2_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
2075                visible: 0;
2076             }
2077          }
2078          part { name: "elm.swallow.content";
2079             type: SWALLOW;
2080             scale: 1;
2081             clip_to: "clipper";
2082             description { state: "default" 0.0;
2083                visible: 0;
2084                align: 0.0 0.5;
2085                rel1 {
2086                   relative: 1.0 1.0;
2087                   to: "padding_left_top";
2088                }
2089                rel2 {
2090                   relative: 1.0 0.0;
2091                   to_x: "padding_left_top";
2092                   to_y: "padding_right_bottom";
2093                }
2094                fixed: 1 0;
2095             }
2096             description { state: "visible" 0.0;
2097                fixed: 1 0;
2098                min: BUTTON_TEXT_STYLE2_VISIBLE_ICON_MIN_MAX_INC;
2099                max: BUTTON_TEXT_STYLE2_VISIBLE_ICON_MIN_MAX_INC;
2100                align: 1.0 0.5;
2101                rel1 {
2102                   relative: 0.0 1.0;
2103                   to_x: "padding_before_text";
2104                   to_y: "padding_left_top";
2105                }
2106                rel2 {
2107                   relative: 0.0 0.0;
2108                   to_x: "padding_before_text";
2109                   to_y: "padding_right_bottom";
2110                }
2111             }
2112             description { state: "icononly" 0.0;
2113                min: BUTTON_TEXT_STYLE2_ICONONLY_ICON_MIN_MAX_INC;
2114                max: BUTTON_TEXT_STYLE2_ICONONLY_ICON_MIN_MAX_INC;
2115             }
2116          }
2117          part { name: "elm.text";
2118             type: TEXTBLOCK;
2119             mouse_events: 0;
2120             scale: 1;
2121             clip_to: "clipper";
2122             description { state: "default" 0.0;
2123                visible: 0;
2124                rel1 {
2125                   relative: 1.0 1.0;
2126                   to_x: "padding_after_icon";
2127                   to_y: "padding_left_top";
2128                }
2129                rel2 {
2130                   relative: 0.0 0.0;
2131                   to: "padding_right_bottom";
2132                }
2133                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
2134                text {
2135                   style: "btn_style2_multiline";
2136                   min: 0 0;
2137                   max: 1 0;
2138                }
2139             }
2140             description { state: "visible" 0.0;
2141                inherit: "default" 0.0;
2142                visible: 1;
2143             }
2144             description { state: "clicked" 0.0;
2145                inherit: "default" 0.0;
2146                visible: 1;
2147                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
2148             }
2149             description { state: "disabled" 0.0;
2150                inherit: "default" 0.0;
2151                color: 0 0 0 128;
2152             }
2153             description { state: "disabled_visible" 0.0;
2154                inherit: "default" 0.0;
2155                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
2156                visible: 1;
2157             }
2158             description { state: "focused" 0.0;
2159                inherit: "default" 0.0;
2160                visible: 1;
2161                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
2162             }
2163          }
2164          part { name: "over2";
2165             type: RECT;
2166             repeat_events: 1;
2167             ignore_flags: ON_HOLD;
2168             description { state: "default" 0.0;
2169                color: 0 0 0 0;
2170             }
2171          }
2172          part { name: "over3";
2173             type: RECT;
2174             repeat_events: 1;
2175             description { state: "default" 0.0;
2176                color: 0 0 0 0;
2177             }
2178          }
2179          part { name: "clipper";
2180             type: RECT;
2181             description { state: "default" 0.0;
2182                color: 255 255 255 255;
2183             }
2184          }
2185          part { name: "disabler";
2186             type: RECT;
2187             description { state: "default" 0.0;
2188                color: 0 0 0 0;
2189                visible: 0;
2190             }
2191             description { state: "disabled" 0.0;
2192                inherit: "default" 0.0;
2193                visible: 1;
2194             }
2195          }
2196       }
2197       programs {
2198          program { name: "button_click";
2199             signal: "mouse,down,1";
2200             source: "over2";
2201             action: SIGNAL_EMIT "elm,action,press" "";
2202             after: "button_click_anim";
2203          }
2204          program { name: "button_click_anim";
2205             action: STATE_SET "clicked" 0.0;
2206             target: "button_image";
2207             after: "text_clicked";
2208          }
2209          program { name: "text_clicked";
2210             script {
2211                new st[31];
2212                new Float:vl;
2213                get_state(PART:"elm.text", st, 30, vl);
2214                if (!strcmp(st, "visible"))
2215                  set_state(PART:"elm.text", "clicked", 0.0);
2216             }
2217          }
2218          program { name: "button_unpress";
2219             action: SIGNAL_EMIT "elm,action,unpress" "";
2220          }
2221          program { name: "button_mouseout_clicked";
2222             signal: "mouse,up,1";
2223             source: "over3";
2224             script {
2225                new st[31];
2226                new Float:vl;
2227                get_state(PART:"elm.swallow.content", st, 30, vl);
2228                if (strcmp(st, "icononly"))
2229                  {
2230                     emit("elm,action,default,text,set", "");
2231                     set_state(PART:"elm.text", "visible", 0.0);
2232                  }
2233                if (get_int(button_state) != BUTTON_STATE_DISABLED)
2234                  set_state(PART:"button_image", "default", 0.0);
2235             }
2236             after: button_unpress;
2237          }
2238          program { name: "touch_snd";
2239             signal: "mouse,clicked,1";
2240             source: "over2";
2241             action: PLAY_SAMPLE "touch_sound" 1.0;
2242             after: button_unclick3;
2243          }
2244          program { name: "button_unclick3";
2245             action: SIGNAL_EMIT "elm,action,click" "";
2246          }
2247          program { name: "text_show";
2248             signal: "elm,state,text,visible";
2249             source: "elm";
2250             script {
2251                new st[31];
2252                new Float:vl;
2253                get_state(PART:"elm.swallow.content", st, 30, vl);
2254                if (!strcmp(st, "icononly"))
2255                  {
2256                     set_state(PART:"elm.swallow.content", "visible", 0.0);
2257                     set_state(PART:"icon_rect", "visible", 0.0);
2258                     set_state(PART:"padding_after_icon", "visible", 0.0);
2259                     set_state(PART:"bg", "visible", 0.0);
2260                  }
2261                if (get_int(button_state) != BUTTON_STATE_DISABLED)
2262                  set_state(PART:"elm.text", "visible", 0.0);
2263                else
2264                  set_state(PART:"elm.text", "disabled_visible", 0.0);
2265             }
2266          }
2267          program { name: "text_hide";
2268             signal: "elm,state,text,hidden";
2269             source: "elm";
2270             script {
2271                new st[31];
2272                new Float:vl;
2273                get_state(PART:"elm.swallow.content", st, 30, vl);
2274                if (!strcmp(st, "visible"))
2275                  {
2276                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
2277                     set_state(PART:"icon_rect", "icononly", 0.0);
2278                     set_state(PART:"padding_after_icon", "icononly", 0.0);
2279                     set_state(PART:"bg", "icononly", 0.0);
2280                  }
2281                set_state(PART:"elm.text", "default", 0.0);
2282             }
2283          }
2284          program { name: "icon_show";
2285             signal: "elm,state,icon,visible";
2286             source: "elm";
2287             script {
2288                new st[31];
2289                new Float:vl;
2290                get_state(PART:"elm.text", st, 30, vl);
2291                if (!strcmp(st, "visible"))
2292                  {
2293                     set_state(PART:"elm.swallow.content", "visible", 0.0);
2294                     set_state(PART:"icon_rect", "visible", 0.0);
2295                     set_state(PART:"padding_after_icon", "visible", 0.0);
2296                     set_state(PART:"bg", "visible", 0.0);
2297                  }
2298                else
2299                  {
2300                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
2301                     set_state(PART:"icon_rect", "icononly", 0.0);
2302                     set_state(PART:"padding_after_icon", "icononly", 0.0);
2303                     set_state(PART:"bg", "icononly", 0.0);
2304                  }
2305             }
2306          }
2307          program { name: "icon_hide";
2308             signal: "elm,state,icon,hidden";
2309             source: "elm";
2310             action: STATE_SET "default" 0.0;
2311             target: "elm.swallow.content";
2312             target: "padding_after_icon";
2313             target: "icon_rect";
2314             target: "bg";
2315          }
2316          program { name: "disable";
2317             signal: "elm,state,disabled";
2318             source: "elm";
2319             action: STATE_SET "disabled" 0.0;
2320             target: "button_image";
2321             target: "disabler";
2322             after: "disable_text";
2323          }
2324          program { name: "disable_text";
2325             script {
2326                new st[31];
2327                new Float:vl;
2328                get_state(PART:"elm.text", st, 30, vl);
2329                if (!strcmp(st, "visible"))
2330                  set_state(PART:"elm.text", "disabled_visible", 0.0);
2331                else
2332                  set_state(PART:"elm.text", "disabled", 0.0);
2333                set_int(button_state, BUTTON_STATE_DISABLED);
2334             }
2335          }
2336          program { name: "enable";
2337             signal: "elm,state,enabled";
2338             source: "elm";
2339             action: STATE_SET "default" 0.0;
2340             target: "button_image";
2341             target: "disabler";
2342             after: "enable_text";
2343          }
2344          program { name: "enable_text";
2345             script {
2346                new st[31];
2347                new Float:vl;
2348                get_state(PART:"elm.text", st, 30, vl);
2349                if (!strcmp(st, "disabled_visible"))
2350                  set_state(PART:"elm.text", "visible", 0.0);
2351                else
2352                  set_state(PART:"elm.text", "default", 0.0);
2353                set_int(button_state, BUTTON_STATE_ENABLED);
2354             }
2355          }
2356          program { name: "focused";
2357             //signal: "elm,action,focus";
2358             //source: "elm";
2359             action: STATE_SET "focused" 0.0;
2360             target: "button_image";
2361             target: "elm.text";
2362          }
2363          program { name: "unfocused";
2364             //signal: "elm,action,unfocus";
2365             //source: "elm";
2366             action: STATE_SET "default" 0.0;
2367             target: "button_image";
2368             after: "unfocus_text";
2369          }
2370          program { name: "unfocus_text";
2371             action: STATE_SET "visible" 0.0;
2372             target: "elm.text";
2373          }
2374       }
2375    }
2376
2377 ///////////////////////////////////////////////////////////////////////////////////////
2378    group { name: "elm/button/base/sweep";
2379       alias: "elm/button/base/text_only/sweep";
2380       images {
2381          image: "00_button_sweep.png" COMP;
2382          image: "00_button_sweep_press.png" COMP;
2383          image: "00_button_sweep_dim.png" COMP;
2384          image: "00_button_sweep_focus.png" COMP;
2385       }
2386       script {
2387          public button_state = BUTTON_STATE_ENABLED;
2388       }
2389       parts {
2390          part { name: "button_image";
2391             scale: 1;
2392             description { state: "default" 0.0;
2393                min: BUTTON_SWEEP_BG_NORMAL_MIN_INC;
2394                image {
2395                   normal: "00_button_sweep.png";
2396                   border: BUTTON_SWEEP_BG_BORDER_INC;
2397                   border_scale: 1;
2398                }
2399             }
2400             description { state: "clicked" 0.0;
2401                inherit: "default" 0.0;
2402                image.normal: "00_button_sweep_press.png";
2403             }
2404             description { state: "disabled" 0.0;
2405                inherit: "default" 0.0;
2406                image.normal: "00_button_sweep_dim.png";
2407             }
2408             description { state: "focused" 0.0;
2409                inherit: "default" 0.0;
2410                image.normal: "00_button_sweep_focus.png";
2411             }
2412          }
2413          part { name: "padding_left_top";
2414             type: RECT;
2415             scale: 1;
2416             mouse_events: 0;
2417             description { state: "default" 0.0;
2418                align: 0.0 0.0;
2419                rel2.relative: 0.0 0.0;
2420                min: BUTTON_SWEEP_PADDING_MIN_INC;
2421                fixed: 1 1;
2422                visible: 0;
2423             }
2424          }
2425          part { name: "padding_right_bottom";
2426             type: RECT;
2427             scale: 1;
2428             mouse_events: 0;
2429             description { state: "default" 0.0;
2430                align: 1.0 1.0;
2431                rel1.relative: 1.0 1.0;
2432                min: BUTTON_SWEEP_PADDING_MIN_INC;
2433                fixed: 1 1;
2434                visible: 0;
2435             }
2436          }
2437          part { name: "icon_rect";
2438             type: RECT;
2439             scale: 1;
2440             mouse_events: 0;
2441             description { state: "default" 0.0;
2442                min: BUTTON_SWEEP_ICON_RECT_MIN_INC;
2443                fixed: 1 0;
2444                rel1 {
2445                   relative: 0.0 1.0;
2446                   to_x: "elm.swallow.content";
2447                   to_y: "padding_left_top";
2448                }
2449                rel2 {
2450                   relative: 1.0 0.0;
2451                   to_x: "elm.swallow.content";
2452                   to_y: "padding_right_bottom";
2453                }
2454                align: 0.0 0.5;
2455                color: 0 0 0 0;
2456             }
2457          }
2458          part { name: "padding_icon_text";
2459             type: RECT;
2460             scale: 1;
2461             mouse_events: 0;
2462             description { state: "default" 0.0; //when only icon or no icon is there
2463                align: 0.0 0.0;
2464                rel1 {
2465                   relative: 1.0 0.0;
2466                   to: "icon_rect";
2467                }
2468                rel2.to: "icon_rect";
2469                fixed: 1 0;
2470                min: 0 0;
2471                color: 0 0 0 0;
2472             }
2473             description { state: "icononly" 0.0;
2474                inherit: "default" 0.0;
2475             }
2476             description { state: "visible" 0.0; //when icon is visible
2477                align: 0.0 0.0;
2478                rel1 {
2479                   relative: 1.0 0.0;
2480                   to: "icon_rect";
2481                }
2482                rel2.to: "icon_rect";
2483                fixed: 1 0;
2484                min: BUTTON_SWEEP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
2485                color: 0 0 0 0;
2486             }
2487          }
2488          part { name: "elm.swallow.content";
2489             type: SWALLOW;
2490             scale: 1;
2491             clip_to: "clipper";
2492             description { state: "default" 0.0;
2493                visible: 0;
2494                align: 0.0 0.5;
2495                rel1 {
2496                   relative: 1.0 1.0;
2497                   to: "padding_left_top";
2498                }
2499                rel2 {
2500                   relative: 1.0 0.0;
2501                   to_x: "padding_left_top";
2502                   to_y: "padding_right_bottom";
2503                }
2504                fixed: 1 0;
2505             }
2506             description { state: "visible" 0.0;
2507                fixed: 1 0;
2508                align: 0.0 0.5;
2509                rel1 {
2510                   relative: 1.0 1.0;
2511                   to: "padding_left_top";
2512                }
2513                rel2 {
2514                   relative: 1.0 0.0;
2515                   to_x: "padding_left_top";
2516                   to_y: "padding_right_bottom";
2517                }
2518                aspect: 1.0 1.0;
2519                aspect_preference: VERTICAL;
2520             }
2521             description { state: "icononly" 0.0;
2522                min: BUTTON_SWEEP_ICONONLY_ICON_MIN_INC;
2523                rel1 {
2524                   relative: 1.0 1.0;
2525                   to: "padding_left_top";
2526                }
2527                rel2 {
2528                   relative: 1.0 0.0;
2529                   to_x: "padding_left_top";
2530                   to_y: "padding_right_bottom";
2531                }
2532             }
2533          }
2534          part { name: "elm.text";
2535             type: TEXT;
2536             mouse_events: 0;
2537             scale: 1;
2538             clip_to: "clipper";
2539             description { state: "default" 0.0;
2540                visible: 0;
2541                rel1 {
2542                   relative: 1.0 1.0;
2543                   to_x: "padding_icon_text";
2544                   to_y: "padding_left_top";
2545                }
2546                rel2 {
2547                   relative: 0.0 0.0;
2548                   to: "padding_right_bottom";
2549                }
2550                color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC;
2551                text {
2552                   font: "SLP:style=Medium";
2553                   size: BUTTON_SWEEP_FONT_SIZE_INC;
2554                   min: 0 0;
2555                   text_class: "slp_medium";
2556                }
2557             }
2558             description { state: "visible" 0.0;
2559                inherit: "default" 0.0;
2560                visible: 1;
2561                min: BUTTON_SWEEP_TEXT_MIN_INC;
2562             }
2563             description { state: "clicked" 0.0;
2564                inherit: "default" 0.0;
2565                visible: 1;
2566                min: 0 0;
2567                color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC;
2568             }
2569             description { state: "disabled" 0.0;
2570                inherit: "default" 0.0;
2571                color: 0 0 0 128;
2572             }
2573             description { state: "disabled_visible" 0.0;
2574                inherit: "default" 0.0;
2575                color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC;
2576                visible: 1;
2577                min: BUTTON_SWEEP_TEXT_MIN_INC;
2578             }
2579             description { state: "focused" 0.0;
2580                inherit: "default" 0.0;
2581                visible: 1;
2582                min: 0 0;
2583                color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC;
2584             }
2585          }
2586          part { name: "over2";
2587             type: RECT;
2588             repeat_events: 1;
2589             ignore_flags: ON_HOLD;
2590             description { state: "default" 0.0;
2591                color: 0 0 0 0;
2592             }
2593          }
2594          part { name: "over3";
2595             type: RECT;
2596             repeat_events: 1;
2597             description { state: "default" 0.0;
2598                color: 0 0 0 0;
2599             }
2600          }
2601          part { name: "clipper";
2602             type: RECT;
2603             description { state: "default" 0.0;
2604                color: 255 255 255 255;
2605             }
2606          }
2607          part { name: "disabler";
2608             type: RECT;
2609             description { state: "default" 0.0;
2610                color: 0 0 0 0;
2611                visible: 0;
2612             }
2613             description { state: "disabled" 0.0;
2614                inherit: "default" 0.0;
2615                visible: 1;
2616             }
2617          }
2618       }
2619       programs {
2620          program { name: "button_click";
2621             signal: "mouse,down,1";
2622             source: "over2";
2623             action: SIGNAL_EMIT "elm,action,press" "";
2624             after: "button_click_anim";
2625          }
2626          program { name: "button_click_anim";
2627             action: STATE_SET "clicked" 0.0;
2628             target: "button_image";
2629             after: "text_clicked";
2630          }
2631          program { name: "text_clicked";
2632             script {
2633                new st[31];
2634                new Float:vl;
2635                get_state(PART:"elm.text", st, 30, vl);
2636                if (!strcmp(st, "visible"))
2637                  set_state(PART:"elm.text", "clicked", 0.0);
2638             }
2639          }
2640          program { name: "button_unpress";
2641             action: SIGNAL_EMIT "elm,action,unpress" "";
2642          }
2643          program { name: "button_mouseout_clicked";
2644             signal: "mouse,up,1";
2645             source: "over3";
2646             script {
2647                new st[31];
2648                new Float:vl;
2649                get_state(PART:"elm.swallow.content", st, 30, vl);
2650                if (strcmp(st, "icononly"))
2651                  {
2652                     emit("elm,action,default,text,set", "");
2653                     set_state(PART:"elm.text", "visible", 0.0);
2654                  }
2655                if (get_int(button_state) != BUTTON_STATE_DISABLED)
2656                  set_state(PART:"button_image", "default", 0.0);
2657             }
2658             after: button_unpress;
2659          }
2660          program { name: "touch_snd";
2661             signal: "mouse,clicked,1";
2662             source: "over2";
2663             action: PLAY_SAMPLE "touch_sound" 1.0;
2664             after: button_unclick3;
2665          }
2666          program { name: "button_unclick3";
2667             action: SIGNAL_EMIT "elm,action,click" "";
2668          }
2669          program { name: "text_show";
2670             signal: "elm,state,text,visible";
2671             source: "elm";
2672             script {
2673                new st[31];
2674                new Float:vl;
2675                get_state(PART:"elm.swallow.content", st, 30, vl);
2676                if (!strcmp(st, "icononly"))
2677                  {
2678                     set_state(PART:"elm.swallow.content", "visible", 0.0);
2679                     set_state(PART:"padding_icon_text", "visible", 0.0);
2680                  }
2681                if (get_int(button_state) != BUTTON_STATE_DISABLED)
2682                  set_state(PART:"elm.text", "visible", 0.0);
2683                else
2684                  set_state(PART:"elm.text", "disabled_visible", 0.0);
2685             }
2686          }
2687          program { name: "text_hide";
2688             signal: "elm,state,text,hidden";
2689             source: "elm";
2690             script {
2691                new st[31];
2692                new Float:vl;
2693                get_state(PART:"elm.swallow.content", st, 30, vl);
2694                if (!strcmp(st, "visible"))
2695                  {
2696                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
2697                     set_state(PART:"padding_icon_text", "icononly", 0.0);
2698                  }
2699                set_state(PART:"elm.text", "default", 0.0);
2700             }
2701          }
2702          program { name: "icon_show";
2703             signal: "elm,state,icon,visible";
2704             source: "elm";
2705             script {
2706                new st[31];
2707                new Float:vl;
2708                get_state(PART:"elm.text", st, 30, vl);
2709                if (!strcmp(st, "visible"))
2710                  {
2711                     set_state(PART:"elm.swallow.content", "visible", 0.0);
2712                     set_state(PART:"padding_icon_text", "visible", 0.0);
2713                  }
2714                else
2715                  {
2716                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
2717                     set_state(PART:"padding_icon_text", "icononly", 0.0);
2718                  }
2719             }
2720          }
2721          program { name: "icon_hide";
2722             signal: "elm,state,icon,hidden";
2723             source: "elm";
2724             action: STATE_SET "default" 0.0;
2725             target: "elm.swallow.content";
2726             target: "padding_icon_text";
2727          }
2728          program { name: "disable";
2729             signal: "elm,state,disabled";
2730             source: "elm";
2731             action: STATE_SET "disabled" 0.0;
2732             target: "button_image";
2733             target: "disabler";
2734             after: "disable_text";
2735          }
2736          program { name: "disable_text";
2737             script {
2738                new st[31];
2739                new Float:vl;
2740                get_state(PART:"elm.text", st, 30, vl);
2741                if (!strcmp(st, "visible"))
2742                  set_state(PART:"elm.text", "disabled_visible", 0.0);
2743                else
2744                  set_state(PART:"elm.text", "disabled", 0.0);
2745                set_int(button_state, BUTTON_STATE_DISABLED);
2746             }
2747          }
2748          program { name: "enable";
2749             signal: "elm,state,enabled";
2750             source: "elm";
2751             action: STATE_SET "default" 0.0;
2752             target: "button_image";
2753             target: "disabler";
2754             after: "enable_text";
2755          }
2756          program { name: "enable_text";
2757             script {
2758                new st[31];
2759                new Float:vl;
2760                get_state(PART:"elm.text", st, 30, vl);
2761                if (!strcmp(st, "disabled_visible"))
2762                  set_state(PART:"elm.text", "visible", 0.0);
2763                else
2764                  set_state(PART:"elm.text", "default", 0.0);
2765                set_int(button_state, BUTTON_STATE_ENABLED);
2766             }
2767          }
2768          program { name: "focused";
2769             //signal: "elm,action,focus";
2770             //source: "elm";
2771             action: STATE_SET "focused" 0.0;
2772             target: "button_image";
2773             target: "elm.text";
2774          }
2775          program { name: "unfocused";
2776             //signal: "elm,action,unfocus";
2777             //source: "elm";
2778             action: STATE_SET "default" 0.0;
2779             target: "button_image";
2780             after: "unfocus_text";
2781          }
2782          program { name: "unfocus_text";
2783             action: STATE_SET "visible" 0.0;
2784             target: "elm.text";
2785          }
2786       }
2787    }
2788
2789 ///////////////////////////////////////////////////////////////////////////////////////
2790    group { name: "elm/button/base/sweep/multiline";
2791       images {
2792          image: "00_button_sweep.png" COMP;
2793          image: "00_button_sweep_press.png" COMP;
2794          image: "00_button_sweep_dim.png" COMP;
2795          image: "00_button_sweep_focus.png" COMP;
2796       }
2797       styles{
2798          style { name: "btn_sweep_multiline";
2799             base: "font=SLP:style=Roman font_size="BUTTON_SWEEP_MULTILINE_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed ellipise=1.0 text_class=slp_roman";
2800             tag: "br" "\n";
2801             tag: "ps" "ps";
2802             tag: "tab" "\t";
2803          }
2804       }
2805       script {
2806          public button_state = BUTTON_STATE_ENABLED;
2807       }
2808       parts {
2809          part { name: "button_image";
2810             scale: 1;
2811             description { state: "default" 0.0;
2812                min: BUTTON_SWEEP_BG_NORMAL_MIN_INC;
2813                image {
2814                   normal: "00_button_sweep.png";
2815                   border: BUTTON_SWEEP_BG_BORDER_INC;
2816                   border_scale: 1;
2817                }
2818             }
2819             description { state: "clicked" 0.0;
2820                inherit: "default" 0.0;
2821                image.normal: "00_button_sweep_press.png";
2822             }
2823             description { state: "disabled" 0.0;
2824                inherit: "default" 0.0;
2825                image.normal: "00_button_sweep_dim.png";
2826             }
2827             description { state: "focused" 0.0;
2828                inherit: "default" 0.0;
2829                image.normal: "00_button_sweep_focus.png";
2830             }
2831          }
2832          part { name: "padding_left_top";
2833             type: RECT;
2834             scale: 1;
2835             mouse_events: 0;
2836             description { state: "default" 0.0;
2837                align: 0.0 0.0;
2838                rel2.relative: 0.0 0.0;
2839                min: BUTTON_SWEEP_PADDING_MIN_INC;
2840                fixed: 1 1;
2841                visible: 0;
2842             }
2843          }
2844          part { name: "padding_right_bottom";
2845             type: RECT;
2846             scale: 1;
2847             mouse_events: 0;
2848             description { state: "default" 0.0;
2849                align: 1.0 1.0;
2850                rel1.relative: 1.0 1.0;
2851                min: BUTTON_SWEEP_PADDING_MIN_INC;
2852                fixed: 1 1;
2853                visible: 0;
2854             }
2855          }
2856          part { name: "icon_rect";
2857             type: RECT;
2858             scale: 1;
2859             mouse_events: 0;
2860             description { state: "default" 0.0;
2861                min: BUTTON_SWEEP_ICON_RECT_MIN_INC;
2862                fixed: 1 0;
2863                rel1 {
2864                   relative: 0.0 1.0;
2865                   to_x: "elm.swallow.content";
2866                   to_y: "padding_left_top";
2867                }
2868                rel2 {
2869                   relative: 1.0 0.0;
2870                   to_x: "elm.swallow.content";
2871                   to_y: "padding_right_bottom";
2872                }
2873                align: 0.0 0.5;
2874                color: 0 0 0 0;
2875             }
2876          }
2877          part { name: "padding_icon_text";
2878             type: RECT;
2879             scale: 1;
2880             mouse_events: 0;
2881             description { state: "default" 0.0; //when only icon or no icon is there
2882                align: 0.0 0.0;
2883                rel1 {
2884                   relative: 1.0 0.0;
2885                   to: "icon_rect";
2886                }
2887                rel2.to: "icon_rect";
2888                fixed: 1 0;
2889                min: 0 0;
2890                color: 0 0 0 0;
2891             }
2892             description { state: "icononly" 0.0;
2893                inherit: "default" 0.0;
2894             }
2895             description { state: "visible" 0.0; //when icon is visible
2896                align: 0.0 0.0;
2897                rel1 {
2898                   relative: 1.0 0.0;
2899                   to: "icon_rect";
2900                }
2901                rel2.to: "icon_rect";
2902                fixed: 1 0;
2903                min: BUTTON_SWEEP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
2904                color: 0 0 0 0;
2905             }
2906          }
2907          part { name: "elm.swallow.content";
2908             type: SWALLOW;
2909             scale: 1;
2910             clip_to: "clipper";
2911             description { state: "default" 0.0;
2912                visible: 0;
2913                align: 0.0 0.5;
2914                rel1 {
2915                   relative: 1.0 1.0;
2916                   to: "padding_left_top";
2917                }
2918                rel2 {
2919                   relative: 1.0 0.0;
2920                   to_x: "padding_left_top";
2921                   to_y: "padding_right_bottom";
2922                }
2923                fixed: 1 0;
2924             }
2925             description { state: "visible" 0.0;
2926                fixed: 1 0;
2927                align: 0.0 0.5;
2928                rel1 {
2929                   relative: 1.0 1.0;
2930                   to: "padding_left_top";
2931                }
2932                rel2 {
2933                   relative: 1.0 0.0;
2934                   to_x: "padding_left_top";
2935                   to_y: "padding_right_bottom";
2936                }
2937                aspect: 1.0 1.0;
2938                aspect_preference: VERTICAL;
2939             }
2940             description { state: "icononly" 0.0;
2941                min: BUTTON_SWEEP_ICONONLY_ICON_MIN_INC;
2942                rel1 {
2943                   relative: 1.0 1.0;
2944                   to: "padding_left_top";
2945                }
2946                rel2 {
2947                   relative: 1.0 0.0;
2948                   to_x: "padding_left_top";
2949                   to_y: "padding_right_bottom";
2950                }
2951             }
2952          }
2953          part { name: "elm.text";
2954             type: TEXTBLOCK;
2955             mouse_events: 0;
2956             scale: 1;
2957             clip_to: "clipper";
2958             description { state: "default" 0.0;
2959                visible: 0;
2960                rel1 {
2961                   relative: 1.0 1.0;
2962                   to_x: "padding_icon_text";
2963                   to_y: "padding_left_top";
2964                }
2965                rel2 {
2966                   relative: 0.0 0.0;
2967                   to: "padding_right_bottom";
2968                }
2969                color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC;
2970                text {
2971                   style: "btn_sweep_multiline";
2972                   min: 0 0;
2973                   max: 0 1;
2974                }
2975             }
2976             description { state: "visible" 0.0;
2977                inherit: "default" 0.0;
2978                visible: 1;
2979                min: BUTTON_SWEEP_TEXT_MIN_INC;
2980             }
2981             description { state: "clicked" 0.0;
2982                inherit: "default" 0.0;
2983                visible: 1;
2984                min: 0 0;
2985                color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC;
2986             }
2987             description { state: "disabled" 0.0;
2988                inherit: "default" 0.0;
2989                color: 0 0 0 128;
2990             }
2991             description { state: "disabled_visible" 0.0;
2992                inherit: "default" 0.0;
2993                color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC;
2994                visible: 1;
2995                min: BUTTON_SWEEP_TEXT_MIN_INC;
2996             }
2997             description { state: "focused" 0.0;
2998                inherit: "default" 0.0;
2999                visible: 1;
3000                min: 0 0;
3001                color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC;
3002             }
3003          }
3004          part { name: "over2";
3005             type: RECT;
3006             repeat_events: 1;
3007             ignore_flags: ON_HOLD;
3008             description { state: "default" 0.0;
3009                color: 0 0 0 0;
3010             }
3011          }
3012          part { name: "over3";
3013             type: RECT;
3014             repeat_events: 1;
3015             description { state: "default" 0.0;
3016                color: 0 0 0 0;
3017             }
3018          }
3019          part { name: "clipper";
3020             type: RECT;
3021             description { state: "default" 0.0;
3022                color: 255 255 255 255;
3023             }
3024          }
3025          part { name: "disabler";
3026             type: RECT;
3027             description { state: "default" 0.0;
3028                color: 0 0 0 0;
3029                visible: 0;
3030             }
3031             description { state: "disabled" 0.0;
3032                inherit: "default" 0.0;
3033                visible: 1;
3034             }
3035          }
3036       }
3037       programs {
3038          program { name: "button_click";
3039             signal: "mouse,down,1";
3040             source: "over2";
3041             action: SIGNAL_EMIT "elm,action,press" "";
3042             after: "button_click_anim";
3043          }
3044          program { name: "button_click_anim";
3045             action: STATE_SET "clicked" 0.0;
3046             target: "button_image";
3047             after: "text_clicked";
3048          }
3049          program { name: "text_clicked";
3050             script {
3051                new st[31];
3052                new Float:vl;
3053                get_state(PART:"elm.text", st, 30, vl);
3054                if (!strcmp(st, "visible"))
3055                  set_state(PART:"elm.text", "clicked", 0.0);
3056             }
3057          }
3058          program { name: "button_unpress";
3059             action: SIGNAL_EMIT "elm,action,unpress" "";
3060          }
3061          program { name: "button_mouseout_clicked";
3062             signal: "mouse,up,1";
3063             source: "over3";
3064             script {
3065                new st[31];
3066                new Float:vl;
3067                get_state(PART:"elm.swallow.content", st, 30, vl);
3068                if (strcmp(st, "icononly"))
3069                  {
3070                     emit("elm,action,default,text,set", "");
3071                     set_state(PART:"elm.text", "visible", 0.0);
3072                  }
3073                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3074                  set_state(PART:"button_image", "default", 0.0);
3075             }
3076             after: button_unpress;
3077          }
3078          program { name: "touch_snd";
3079             signal: "mouse,clicked,1";
3080             source: "over2";
3081             action: PLAY_SAMPLE "touch_sound" 1.0;
3082             after: button_unclick3;
3083          }
3084          program { name: "button_unclick3";
3085             action: SIGNAL_EMIT "elm,action,click" "";
3086          }
3087          program { name: "text_show";
3088             signal: "elm,state,text,visible";
3089             source: "elm";
3090             script {
3091                new st[31];
3092                new Float:vl;
3093                get_state(PART:"elm.swallow.content", st, 30, vl);
3094                if (!strcmp(st, "icononly"))
3095                  {
3096                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3097                     set_state(PART:"padding_icon_text", "visible", 0.0);
3098                  }
3099                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3100                  set_state(PART:"elm.text", "visible", 0.0);
3101                else
3102                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3103             }
3104          }
3105          program { name: "text_hide";
3106             signal: "elm,state,text,hidden";
3107             source: "elm";
3108             script {
3109                new st[31];
3110                new Float:vl;
3111                get_state(PART:"elm.swallow.content", st, 30, vl);
3112                if (!strcmp(st, "visible"))
3113                  {
3114                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3115                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3116                  }
3117                set_state(PART:"elm.text", "default", 0.0);
3118             }
3119          }
3120          program { name: "icon_show";
3121             signal: "elm,state,icon,visible";
3122             source: "elm";
3123             script {
3124                new st[31];
3125                new Float:vl;
3126                get_state(PART:"elm.text", st, 30, vl);
3127                if (!strcmp(st, "visible"))
3128                  {
3129                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3130                     set_state(PART:"padding_icon_text", "visible", 0.0);
3131                  }
3132                else
3133                  {
3134                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3135                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3136                  }
3137             }
3138          }
3139          program { name: "icon_hide";
3140             signal: "elm,state,icon,hidden";
3141             source: "elm";
3142             action: STATE_SET "default" 0.0;
3143             target: "elm.swallow.content";
3144             target: "padding_icon_text";
3145          }
3146          program { name: "disable";
3147             signal: "elm,state,disabled";
3148             source: "elm";
3149             action: STATE_SET "disabled" 0.0;
3150             target: "button_image";
3151             target: "disabler";
3152             after: "disable_text";
3153          }
3154          program { name: "disable_text";
3155             script {
3156                new st[31];
3157                new Float:vl;
3158                get_state(PART:"elm.text", st, 30, vl);
3159                if (!strcmp(st, "visible"))
3160                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3161                else
3162                  set_state(PART:"elm.text", "disabled", 0.0);
3163                set_int(button_state, BUTTON_STATE_DISABLED);
3164             }
3165          }
3166          program { name: "enable";
3167             signal: "elm,state,enabled";
3168             source: "elm";
3169             action: STATE_SET "default" 0.0;
3170             target: "button_image";
3171             target: "disabler";
3172             after: "enable_text";
3173          }
3174          program { name: "enable_text";
3175             script {
3176                new st[31];
3177                new Float:vl;
3178                get_state(PART:"elm.text", st, 30, vl);
3179                if (!strcmp(st, "disabled_visible"))
3180                  set_state(PART:"elm.text", "visible", 0.0);
3181                else
3182                  set_state(PART:"elm.text", "default", 0.0);
3183                set_int(button_state, BUTTON_STATE_ENABLED);
3184             }
3185          }
3186          program { name: "focused";
3187             //signal: "elm,action,focus";
3188             //source: "elm";
3189             action: STATE_SET "focused" 0.0;
3190             target: "button_image";
3191             target: "elm.text";
3192          }
3193          program { name: "unfocused";
3194             //signal: "elm,action,unfocus";
3195             //source: "elm";
3196             action: STATE_SET "default" 0.0;
3197             target: "button_image";
3198             after: "unfocus_text";
3199          }
3200          program { name: "unfocus_text";
3201             action: STATE_SET "visible" 0.0;
3202             target: "elm.text";
3203          }
3204       }
3205    }
3206
3207 ///////////////////////////////////////////////////////////////////////////////////////
3208    group { name: "elm/button/base/sweep/delete";
3209       images {
3210          image: "00_button_sweep_dim.png" COMP;
3211          image: "00_button_sweep_delete.png" COMP;
3212          image: "00_button_sweep_delete_press.png" COMP;
3213          image: "00_button_sweep_focus.png" COMP;
3214       }
3215       script {
3216          public button_state = BUTTON_STATE_ENABLED;
3217       }
3218       parts {
3219          part { name: "button_image";
3220             scale: 1;
3221             description { state: "default" 0.0;
3222                min: BUTTON_SWEEP_BG_NORMAL_MIN_INC;
3223                image {
3224                   normal: "00_button_sweep_delete.png";
3225                   border: BUTTON_SWEEP_BG_BORDER_INC;
3226                   border_scale: 1;
3227                }
3228             }
3229             description { state: "clicked" 0.0;
3230                inherit: "default" 0.0;
3231                image.normal: "00_button_sweep_delete_press.png";
3232             }
3233             description { state: "disabled" 0.0;
3234                inherit: "default" 0.0;
3235                image.normal: "00_button_sweep_dim.png";
3236             }
3237             description { state: "focused" 0.0;
3238                inherit: "default" 0.0;
3239                image.normal: "00_button_sweep_focus.png";
3240             }
3241          }
3242          part { name: "padding_left_top";
3243             type: RECT;
3244             scale: 1;
3245             mouse_events: 0;
3246             description { state: "default" 0.0;
3247                align: 0.0 0.0;
3248                rel2.relative: 0.0 0.0;
3249                min: BUTTON_SWEEP_PADDING_MIN_INC;
3250                fixed: 1 1;
3251                visible: 0;
3252             }
3253          }
3254          part { name: "padding_right_bottom";
3255             type: RECT;
3256             scale: 1;
3257             mouse_events: 0;
3258             description { state: "default" 0.0;
3259                align: 1.0 1.0;
3260                rel1.relative: 1.0 1.0;
3261                min: BUTTON_SWEEP_PADDING_MIN_INC;
3262                fixed: 1 1;
3263                visible: 0;
3264             }
3265          }
3266          part { name: "icon_rect";
3267             type: RECT;
3268             scale: 1;
3269             mouse_events: 0;
3270             description { state: "default" 0.0;
3271                min: BUTTON_SWEEP_ICON_RECT_MIN_INC;
3272                fixed: 1 0;
3273                rel1 {
3274                   relative: 0.0 1.0;
3275                   to_x: "elm.swallow.content";
3276                   to_y: "padding_left_top";
3277                }
3278                rel2 {
3279                   relative: 1.0 0.0;
3280                   to_x: "elm.swallow.content";
3281                   to_y: "padding_right_bottom";
3282                }
3283                align: 0.0 0.5;
3284                color: 0 0 0 0;
3285             }
3286          }
3287          part { name: "padding_icon_text";
3288             type: RECT;
3289             scale: 1;
3290             mouse_events: 0;
3291             description { state: "default" 0.0; //when only icon or no icon is there
3292                align: 0.0 0.0;
3293                rel1 {
3294                   relative: 1.0 0.0;
3295                   to: "icon_rect";
3296                }
3297                rel2.to: "icon_rect";
3298                fixed: 1 0;
3299                min: 0 0;
3300                color: 0 0 0 0;
3301             }
3302             description { state: "icononly" 0.0;
3303                inherit: "default" 0.0;
3304             }
3305             description { state: "visible" 0.0; //when icon is visible
3306                align: 0.0 0.0;
3307                rel1 {
3308                   relative: 1.0 0.0;
3309                   to: "icon_rect";
3310                }
3311                rel2.to: "icon_rect";
3312                fixed: 1 0;
3313                min: BUTTON_SWEEP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
3314                color: 0 0 0 0;
3315             }
3316          }
3317          part { name: "elm.swallow.content";
3318             type: SWALLOW;
3319             scale: 1;
3320             clip_to: "clipper";
3321             description { state: "default" 0.0;
3322                visible: 0;
3323                align: 0.0 0.5;
3324                rel1 {
3325                   relative: 1.0 1.0;
3326                   to: "padding_left_top";
3327                }
3328                rel2 {
3329                   relative: 1.0 0.0;
3330                   to_x: "padding_left_top";
3331                   to_y: "padding_right_bottom";
3332                }
3333                fixed: 1 0;
3334             }
3335             description { state: "visible" 0.0;
3336                fixed: 1 0;
3337                align: 0.0 0.5;
3338                rel1 {
3339                   relative: 1.0 1.0;
3340                   to: "padding_left_top";
3341                }
3342                rel2 {
3343                   relative: 1.0 0.0;
3344                   to_x: "padding_left_top";
3345                   to_y: "padding_right_bottom";
3346                }
3347                aspect: 1.0 1.0;
3348                aspect_preference: VERTICAL;
3349             }
3350             description { state: "icononly" 0.0;
3351                min: BUTTON_SWEEP_ICONONLY_ICON_MIN_INC;
3352                rel1 {
3353                   relative: 1.0 1.0;
3354                   to: "padding_left_top";
3355                }
3356                rel2 {
3357                   relative: 1.0 0.0;
3358                   to_x: "padding_left_top";
3359                   to_y: "padding_right_bottom";
3360                }
3361             }
3362          }
3363          part { name: "elm.text";
3364             type: TEXT;
3365             mouse_events: 0;
3366             scale: 1;
3367             clip_to: "clipper";
3368             description { state: "default" 0.0;
3369                rel1 {
3370                   relative: 1.0 1.0;
3371                   to_x: "padding_icon_text";
3372                   to_y: "padding_left_top";
3373                }
3374                rel2 {
3375                   relative: 0.0 0.0;
3376                   to: "padding_right_bottom";
3377                }
3378                color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC;
3379                text {
3380                   font: "SLP:style=Medium";
3381                   size: BUTTON_SWEEP_FONT_SIZE_INC;
3382                   min: 1 0;
3383                   text: "Delete";
3384                   max: 1 0;
3385                   text_class: "slp_medium";
3386                }
3387             }
3388             description { state: "visible" 0.0;
3389                inherit: "default" 0.0;
3390             }
3391             description { state: "clicked" 0.0;
3392                inherit: "default" 0.0;
3393                color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC;
3394             }
3395             description { state: "disabled" 0.0;
3396                inherit: "default" 0.0;
3397                color: 0 0 0 128;
3398             }
3399             description { state: "disabled_visible" 0.0;
3400                inherit: "default" 0.0;
3401                color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC;
3402             }
3403             description { state: "focused" 0.0;
3404                inherit: "default" 0.0;
3405                visible: 1;
3406                min: 0 0;
3407                color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC;
3408             }
3409          }
3410          part { name: "over2";
3411             type: RECT;
3412             repeat_events: 1;
3413             ignore_flags: ON_HOLD;
3414             description { state: "default" 0.0;
3415                color: 0 0 0 0;
3416             }
3417          }
3418          part { name: "over3";
3419             type: RECT;
3420             repeat_events: 1;
3421             description { state: "default" 0.0;
3422                color: 0 0 0 0;
3423             }
3424          }
3425          part { name: "clipper";
3426             type: RECT;
3427             description { state: "default" 0.0;
3428                color: 255 255 255 255;
3429             }
3430          }
3431          part { name: "disabler";
3432             type: RECT;
3433             description { state: "default" 0.0;
3434                color: 0 0 0 0;
3435                visible: 0;
3436             }
3437             description { state: "disabled" 0.0;
3438                inherit: "default" 0.0;
3439                visible: 1;
3440             }
3441          }
3442       }
3443       programs {
3444          program { name: "button_click";
3445             signal: "mouse,down,1";
3446             source: "over2";
3447             action: SIGNAL_EMIT "elm,action,press" "";
3448             after: "button_click_anim";
3449          }
3450          program { name: "button_click_anim";
3451             action: STATE_SET "clicked" 0.0;
3452             target: "button_image";
3453             after: "text_clicked";
3454          }
3455          program { name: "text_clicked";
3456             script {
3457                new st[31];
3458                new Float:vl;
3459                get_state(PART:"elm.text", st, 30, vl);
3460                if (!strcmp(st, "visible"))
3461                  set_state(PART:"elm.text", "clicked", 0.0);
3462             }
3463          }
3464          program { name: "button_unpress";
3465             action: SIGNAL_EMIT "elm,action,unpress" "";
3466          }
3467          program { name: "button_mouseout_clicked";
3468             signal: "mouse,up,1";
3469             source: "over3";
3470             script {
3471                new st[31];
3472                new Float:vl;
3473                get_state(PART:"elm.swallow.content", st, 30, vl);
3474                if (strcmp(st, "icononly"))
3475                  {
3476                     emit("elm,action,default,text,set", "");
3477                     set_state(PART:"elm.text", "visible", 0.0);
3478                  }
3479                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3480                  set_state(PART:"button_image", "default", 0.0);
3481             }
3482             after: button_unpress;
3483          }
3484          program { name: "touch_snd";
3485             signal: "mouse,clicked,1";
3486             source: "over2";
3487             action: PLAY_SAMPLE "touch_sound" 1.0;
3488             after: button_unclick3;
3489          }
3490          program { name: "button_unclick3";
3491             action: SIGNAL_EMIT "elm,action,click" "";
3492          }
3493          program { name: "text_show";
3494             signal: "elm,state,text,visible";
3495             source: "elm";
3496             script {
3497                new st[31];
3498                new Float:vl;
3499                get_state(PART:"elm.swallow.content", st, 30, vl);
3500                if (!strcmp(st, "icononly"))
3501                  {
3502                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3503                     set_state(PART:"padding_icon_text", "visible", 0.0);
3504                  }
3505                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3506                  set_state(PART:"elm.text", "visible", 0.0);
3507                else
3508                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3509             }
3510          }
3511          program { name: "text_hide";
3512             signal: "elm,state,text,hidden";
3513             source: "elm";
3514             script {
3515                new st[31];
3516                new Float:vl;
3517                get_state(PART:"elm.swallow.content", st, 30, vl);
3518                if (!strcmp(st, "visible"))
3519                  {
3520                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3521                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3522                  }
3523                set_state(PART:"elm.text", "default", 0.0);
3524             }
3525          }
3526          program { name: "icon_show";
3527             signal: "elm,state,icon,visible";
3528             source: "elm";
3529             script {
3530                new st[31];
3531                new Float:vl;
3532                get_state(PART:"elm.text", st, 30, vl);
3533                if (!strcmp(st, "visible"))
3534                  {
3535                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3536                     set_state(PART:"padding_icon_text", "visible", 0.0);
3537                  }
3538                else
3539                  {
3540                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3541                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3542                  }
3543             }
3544          }
3545          program { name: "icon_hide";
3546             signal: "elm,state,icon,hidden";
3547             source: "elm";
3548             action: STATE_SET "default" 0.0;
3549             target: "elm.swallow.content";
3550             target: "padding_icon_text";
3551          }
3552          program { name: "disable";
3553             signal: "elm,state,disabled";
3554             source: "elm";
3555             action: STATE_SET "disabled" 0.0;
3556             target: "button_image";
3557             target: "disabler";
3558             after: "disable_text";
3559          }
3560          program { name: "disable_text";
3561             script {
3562                new st[31];
3563                new Float:vl;
3564                get_state(PART:"elm.text", st, 30, vl);
3565                if (!strcmp(st, "visible"))
3566                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3567                else
3568                  set_state(PART:"elm.text", "disabled", 0.0);
3569                set_int(button_state, BUTTON_STATE_DISABLED);
3570             }
3571          }
3572          program { name: "enable";
3573             signal: "elm,state,enabled";
3574             source: "elm";
3575             action: STATE_SET "default" 0.0;
3576             target: "button_image";
3577             target: "disabler";
3578             after: "enable_text";
3579          }
3580          program { name: "enable_text";
3581             script {
3582                new st[31];
3583                new Float:vl;
3584                get_state(PART:"elm.text", st, 30, vl);
3585                if (!strcmp(st, "disabled_visible"))
3586                  set_state(PART:"elm.text", "visible", 0.0);
3587                else
3588                  set_state(PART:"elm.text", "default", 0.0);
3589                set_int(button_state, BUTTON_STATE_ENABLED);
3590             }
3591          }
3592          program { name: "focused";
3593             //signal: "elm,action,focus";
3594             //source: "elm";
3595             action: STATE_SET "focused" 0.0;
3596             target: "button_image";
3597             target: "elm.text";
3598          }
3599          program { name: "unfocused";
3600             //signal: "elm,action,unfocus";
3601             //source: "elm";
3602             action: STATE_SET "default" 0.0;
3603             target: "button_image";
3604             after: "unfocus_text";
3605          }
3606          program { name: "unfocus_text";
3607             action: STATE_SET "visible" 0.0;
3608             target: "elm.text";
3609          }
3610       }
3611    }
3612
3613 ///////////////////////////////////////////////////////////////////////////////////////
3614    group { name: "elm/button/base/popup_button/default";
3615       alias: "elm/button/base/popup_button/menustyle";
3616       alias: "elm/button/base/popup_button/liststyle";
3617       alias: "elm/button/base/popup_button/volumebarstyle";
3618       alias: "elm/button/base/popup_button/customstyle";
3619       alias: "elm/button/base/popup_button/verticalbuttonstyle";
3620       images {
3621          image: "00_button_popup_normal.png" COMP;
3622          image: "00_button_popup_press.png" COMP;
3623          image: "00_button_popup_normal_focus.png" COMP;
3624          image: "00_button_popup_dim.png" COMP;
3625       }
3626       script {
3627          public button_state = BUTTON_STATE_ENABLED;
3628       }
3629       parts {
3630          part { name: "button_image";
3631             scale: 1;
3632             description { state: "default" 0.0;
3633                min: BUTTON_POPUP_BG_NORMAL_MIN_INC;
3634                image {
3635                   normal: "00_button_popup_normal.png";
3636                   border: BUTTON_POPUP_BG_BORDER_INC;
3637                   border_scale: 1;
3638                }
3639             }
3640             description { state: "clicked" 0.0;
3641                inherit: "default" 0.0;
3642                image.normal: "00_button_popup_press.png";
3643             }
3644             description { state: "disabled" 0.0;
3645                inherit: "default" 0.0;
3646                image.normal: "00_button_popup_dim.png";
3647             }
3648             description { state: "focused" 0.0;
3649                inherit: "default" 0.0;
3650                image.normal: "00_button_popup_normal_focus.png";
3651             }
3652          }
3653          part { name: "padding_left_top";
3654             type: RECT;
3655             scale: 1;
3656             mouse_events: 0;
3657             description { state: "default" 0.0;
3658                align: 0.0 0.0;
3659                rel2.relative: 0.0 0.0;
3660                min: BUTTON_POPUP_PADDING_MIN_INC;
3661                fixed: 1 1;
3662                visible: 0;
3663             }
3664          }
3665          part { name: "padding_right_bottom";
3666             type: RECT;
3667             scale: 1;
3668             description { state: "default" 0.0;
3669                align: 1.0 0.0;
3670                rel1.relative: 1.0 1.0;
3671                min: BUTTON_POPUP_PADDING_MIN_INC;
3672                fixed: 1 1;
3673                visible: 0;
3674             }
3675          }
3676          part { name: "padding_icon_text";
3677             type: RECT;
3678             scale: 1;
3679             description { state: "default" 0.0; //when only icon or no icon is there
3680                align: 0.0 0.0;
3681                rel1 {
3682                   relative: 1.0 0.0;
3683                   to: "elm.swallow.content";
3684                }
3685                rel2.to: "elm.swallow.content";
3686                fixed: 1 0;
3687                min: 0 0;
3688                visible: 0;
3689             }
3690             description { state: "icononly" 0.0;
3691                inherit: "default" 0.0;
3692             }
3693             description { state: "visible" 0.0; //when icon is visible
3694                inherit: "default" 0.0;
3695                min: BUTTON_POPUP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
3696             }
3697          }
3698          part { name: "elm.swallow.content";
3699             type: SWALLOW;
3700             scale: 1;
3701             clip_to: "clipper";
3702             description { state: "default" 0.0;
3703                visible: 0;
3704                align: 0.0 0.5;
3705                rel1 {
3706                   relative: 1.0 1.0;
3707                   to: "padding_left_top";
3708                }
3709                rel2 {
3710                   relative: 1.0 0.0;
3711                   to_x: "padding_left_top";
3712                   to_y: "padding_right_bottom";
3713                }
3714                fixed: 1 0;
3715             }
3716             description { state: "visible" 0.0;
3717                inherit: "default" 0.0;
3718                fixed: 1 0;
3719                visible: 1;
3720                aspect: 1.0 1.0;
3721                aspect_preference: VERTICAL;
3722             }
3723             description { state: "icononly" 0.0;
3724                min: BUTTON_POPUP_ICON_ICONONLY_MIN_INC;
3725                rel1 {
3726                   relative: 1.0 1.0;
3727                   to: "padding_left_top";
3728                }
3729                rel2 {
3730                   relative: 1.0 0.0;
3731                   to_x: "padding_left_top";
3732                   to_y: "padding_right_bottom";
3733                }
3734             }
3735          }
3736          part { name: "elm.text";
3737             type: TEXT;
3738             mouse_events: 0;
3739             scale: 1;
3740             clip_to: "clipper";
3741             description { state: "default" 0.0;
3742                visible: 0;
3743                rel1 {
3744                   relative: 1.0 1.0;
3745                   to_x: "padding_icon_text";
3746                   to_y: "padding_left_top";
3747                }
3748                rel2 {
3749                   relative: 0.0 0.0;
3750                   to: "padding_right_bottom";
3751                }
3752                color: BUTTON_POPUP_BUTTON_TEXT_NORMAL_COLOR_INC;
3753                text {
3754                   font: "SLP:style=Medium";
3755                   size: BUTTON_POPUP_TEXT_FONT_SIZE_INC;
3756                   min: 0 0;
3757                   text_class: "slp_medium";
3758                }
3759             }
3760             description { state: "visible" 0.0;
3761                inherit: "default" 0.0;
3762                visible: 1;
3763                min: BUTTON_POPUP_TEXT_MIN_INC;
3764             }
3765             description { state: "clicked" 0.0;
3766                inherit: "default" 0.0;
3767                visible: 1;
3768                min: 0 0;
3769                color: BUTTON_POPUP_BUTTON_TEXT_PRESSED_COLOR_INC;
3770             }
3771             description { state: "disabled" 0.0;
3772                inherit: "default" 0.0;
3773                color: 0 0 0 128;
3774             }
3775             description { state: "disabled_visible" 0.0;
3776                inherit: "default" 0.0;
3777                color: BUTTON_POPUP_BUTTON_TEXT_DISABLED_COLOR_INC;
3778                visible: 1;
3779                min: BUTTON_POPUP_TEXT_MIN_INC;
3780             }
3781             description { state: "focused" 0.0;
3782                inherit: "default" 0.0;
3783                visible: 1;
3784                min: 0 0;
3785                color: BUTTON_POPUP_BUTTON_TEXT_FOCUSED_COLOR_INC;
3786             }
3787          }
3788          part { name: "over2";
3789             type: RECT;
3790             repeat_events: 1;
3791             ignore_flags: ON_HOLD;
3792             description { state: "default" 0.0;
3793                color: 0 0 0 0;
3794             }
3795          }
3796          part { name: "over3";
3797             type: RECT;
3798             repeat_events: 1;
3799             description { state: "default" 0.0;
3800                color: 0 0 0 0;
3801             }
3802          }
3803          part { name: "clipper";
3804             type: RECT;
3805             description { state: "default" 0.0;
3806                color: 255 255 255 255;
3807             }
3808          }
3809          part { name: "disabler";
3810             type: RECT;
3811             description { state: "default" 0.0;
3812                color: 0 0 0 0;
3813                visible: 0;
3814             }
3815             description { state: "disabled" 0.0;
3816                inherit: "default" 0.0;
3817                visible: 1;
3818             }
3819          }
3820       }
3821       programs {
3822          program { name: "button_click";
3823             signal: "mouse,down,1";
3824             source: "over2";
3825             action: SIGNAL_EMIT "elm,action,press" "";
3826             after: "button_click_anim";
3827          }
3828          program { name: "button_click_anim";
3829             action: STATE_SET "clicked" 0.0;
3830             target: "button_image";
3831             after: "text_clicked";
3832          }
3833          program { name: "text_clicked";
3834             script {
3835                new st[31];
3836                new Float:vl;
3837                get_state(PART:"elm.text", st, 30, vl);
3838                if (!strcmp(st, "visible"))
3839                  set_state(PART:"elm.text", "clicked", 0.0);
3840             }
3841          }
3842          program { name: "button_unpress";
3843             action: SIGNAL_EMIT "elm,action,unpress" "";
3844          }
3845          program { name: "button_mouseout_clicked";
3846             signal: "mouse,up,1";
3847             source: "over3";
3848             script {
3849                new st[31];
3850                new Float:vl;
3851                get_state(PART:"elm.swallow.content", st, 30, vl);
3852                if (strcmp(st, "icononly"))
3853                  {
3854                     emit("elm,action,default,text,set", "");
3855                     set_state(PART:"elm.text", "visible", 0.0);
3856                  }
3857                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3858                  set_state(PART:"button_image", "default", 0.0);
3859             }
3860             after: button_unpress;
3861          }
3862          program { name: "touch_snd";
3863             signal: "mouse,clicked,1";
3864             source: "over2";
3865             action: PLAY_SAMPLE "touch_sound" 1.0;
3866             after: button_unclick3;
3867          }
3868          program { name: "button_unclick3";
3869             action: SIGNAL_EMIT "elm,action,click" "";
3870          }
3871          program { name: "text_show";
3872             signal: "elm,state,text,visible";
3873             source: "elm";
3874             script {
3875                new st[31];
3876                new Float:vl;
3877                get_state(PART:"elm.swallow.content", st, 30, vl);
3878                if (!strcmp(st, "icononly"))
3879                  {
3880                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3881                     set_state(PART:"padding_icon_text", "visible", 0.0);
3882                  }
3883                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3884                  set_state(PART:"elm.text", "visible", 0.0);
3885                else
3886                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3887             }
3888          }
3889          program { name: "text_hide";
3890             signal: "elm,state,text,hidden";
3891             source: "elm";
3892             script {
3893                new st[31];
3894                new Float:vl;
3895                get_state(PART:"elm.swallow.content", st, 30, vl);
3896                if (!strcmp(st, "visible"))
3897                  {
3898                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3899                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3900                  }
3901                set_state(PART:"elm.text", "default", 0.0);
3902             }
3903          }
3904          program { name: "icon_show";
3905             signal: "elm,state,icon,visible";
3906             source: "elm";
3907             script {
3908                new st[31];
3909                new Float:vl;
3910                get_state(PART:"elm.text", st, 30, vl);
3911                if (!strcmp(st, "visible"))
3912                  {
3913                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3914                     set_state(PART:"padding_icon_text", "visible", 0.0);
3915                  }
3916                else
3917                  {
3918                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3919                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3920                  }
3921             }
3922          }
3923          program { name: "icon_hide";
3924             signal: "elm,state,icon,hidden";
3925             source: "elm";
3926             action: STATE_SET "default" 0.0;
3927             target: "elm.swallow.content";
3928             target: "padding_icon_text";
3929          }
3930          program { name: "disable";
3931             signal: "elm,state,disabled";
3932             source: "elm";
3933             action: STATE_SET "disabled" 0.0;
3934             target: "button_image";
3935             target: "disabler";
3936             after: "disable_text";
3937          }
3938          program { name: "disable_text";
3939             script {
3940                new st[31];
3941                new Float:vl;
3942                get_state(PART:"elm.text", st, 30, vl);
3943                if (!strcmp(st, "visible"))
3944                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3945                else
3946                  set_state(PART:"elm.text", "disabled", 0.0);
3947                set_int(button_state, BUTTON_STATE_DISABLED);
3948             }
3949          }
3950          program { name: "enable";
3951             signal: "elm,state,enabled";
3952             source: "elm";
3953             action: STATE_SET "default" 0.0;
3954             target: "button_image";
3955             target: "disabler";
3956             after: "enable_text";
3957          }
3958          program { name: "enable_text";
3959             script {
3960                new st[31];
3961                new Float:vl;
3962                get_state(PART:"elm.text", st, 30, vl);
3963                if (!strcmp(st, "disabled_visible"))
3964                  set_state(PART:"elm.text", "visible", 0.0);
3965                else
3966                  set_state(PART:"elm.text", "default", 0.0);
3967                set_int(button_state, BUTTON_STATE_ENABLED);
3968             }
3969          }
3970          program { name: "focused";
3971             //signal: "elm,action,focus";
3972             //source: "elm";
3973             action: STATE_SET "focused" 0.0;
3974             target: "button_image";
3975             target: "elm.text";
3976          }
3977          program { name: "unfocused";
3978             //signal: "elm,action,unfocus";
3979             //source: "elm";
3980             action: STATE_SET "default" 0.0;
3981             target: "button_image";
3982             after: "unfocus_text";
3983          }
3984          program { name: "unfocus_text";
3985             action: STATE_SET "visible" 0.0;
3986             target: "elm.text";
3987          }
3988       }
3989    }
3990 ///////////////////////////////////////////////////////////////////////////////////////
3991    group { name: "elm/button/base/popup_button/default/multiline";
3992       images {
3993          image: "00_button_popup_normal.png" COMP;
3994          image: "00_button_popup_press.png" COMP;
3995          image: "00_button_popup_normal_focus.png" COMP;
3996          image: "00_button_popup_dim.png" COMP;
3997       }
3998       styles{
3999          style { name: "btn_popup_multiline_style";
4000             base: "font=SLP:style=Roman font_size="BUTTON_POPUP_MULTILINE_TEXT_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed text_class=slp_roman";
4001             tag: "br" "\n";
4002             tag: "ps" "ps";
4003             tag: "tab" "\t";
4004          }
4005       }
4006       script {
4007          public button_state = BUTTON_STATE_ENABLED;
4008       }
4009       parts {
4010          part { name: "button_image";
4011             scale: 1;
4012             description { state: "default" 0.0;
4013                min: BUTTON_POPUP_BG_NORMAL_MIN_INC;
4014                image {
4015                   normal: "00_button_popup_normal.png";
4016                   border: BUTTON_POPUP_BG_BORDER_INC;
4017                   border_scale: 1;
4018                }
4019             }
4020             description { state: "clicked" 0.0;
4021                inherit: "default" 0.0;
4022                image.normal: "00_button_popup_press.png";
4023             }
4024             description { state: "disabled" 0.0;
4025                inherit: "default" 0.0;
4026                image.normal: "00_button_popup_dim.png";
4027             }
4028             description { state: "focused" 0.0;
4029                inherit: "default" 0.0;
4030                image.normal: "00_button_popup_normal_focus.png";
4031             }
4032          }
4033          part { name: "padding_left_top";
4034             type: RECT;
4035             scale: 1;
4036             mouse_events: 0;
4037             description { state: "default" 0.0;
4038                align: 0.0 0.0;
4039                rel2.relative: 0.0 0.0;
4040                min: BUTTON_POPUP_PADDING_MIN_INC;
4041                fixed: 1 1;
4042                visible: 0;
4043             }
4044          }
4045          part { name: "padding_right_bottom";
4046             type: RECT;
4047             scale: 1;
4048             description { state: "default" 0.0;
4049                align: 1.0 0.0;
4050                rel1.relative: 1.0 1.0;
4051                min: BUTTON_POPUP_PADDING_MIN_INC;
4052                fixed: 1 1;
4053                visible: 0;
4054             }
4055          }
4056          part { name: "padding_icon_text";
4057             type: RECT;
4058             scale: 1;
4059             description { state: "default" 0.0; //when only icon or no icon is there
4060                align: 0.0 0.0;
4061                rel1 {
4062                   relative: 1.0 0.0;
4063                   to: "elm.swallow.content";
4064                }
4065                rel2.to: "elm.swallow.content";
4066                fixed: 1 0;
4067                min: 0 0;
4068                visible: 0;
4069             }
4070             description { state: "icononly" 0.0;
4071                inherit: "default" 0.0;
4072             }
4073             description { state: "visible" 0.0; //when icon is visible
4074                inherit: "default" 0.0;
4075                min: BUTTON_POPUP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
4076             }
4077          }
4078          part { name: "elm.swallow.content";
4079             type: SWALLOW;
4080             scale: 1;
4081             clip_to: "clipper";
4082             description { state: "default" 0.0;
4083                visible: 0;
4084                align: 0.0 0.5;
4085                rel1 {
4086                   relative: 1.0 1.0;
4087                   to: "padding_left_top";
4088                }
4089                rel2 {
4090                   relative: 1.0 0.0;
4091                   to_x: "padding_left_top";
4092                   to_y: "padding_right_bottom";
4093                }
4094                fixed: 1 0;
4095             }
4096             description { state: "visible" 0.0;
4097                inherit: "default" 0.0;
4098                fixed: 1 0;
4099                visible: 1;
4100                aspect: 1.0 1.0;
4101                aspect_preference: VERTICAL;
4102             }
4103             description { state: "icononly" 0.0;
4104                min: BUTTON_POPUP_ICON_ICONONLY_MIN_INC;
4105                rel1 {
4106                   relative: 1.0 1.0;
4107                   to: "padding_left_top";
4108                }
4109                rel2 {
4110                   relative: 1.0 0.0;
4111                   to_x: "padding_left_top";
4112                   to_y: "padding_right_bottom";
4113                }
4114             }
4115          }
4116          part { name: "elm.text";
4117             type: TEXTBLOCK;
4118             mouse_events: 0;
4119             scale: 1;
4120             clip_to: "clipper";
4121             description { state: "default" 0.0;
4122                visible: 0;
4123                rel1 {
4124                   relative: 1.0 1.0;
4125                   to_x: "padding_icon_text";
4126                   to_y: "padding_left_top";
4127                }
4128                rel2 {
4129                   relative: 0.0 0.0;
4130                   to: "padding_right_bottom";
4131                }
4132                color: BUTTON_POPUP_BUTTON_TEXT_NORMAL_COLOR_INC;
4133                text {
4134                   style: "btn_popup_multiline_style";
4135                   min: 0 0;
4136                   max: 0 1;
4137                }
4138             }
4139             description { state: "visible" 0.0;
4140                inherit: "default" 0.0;
4141                visible: 1;
4142                min: BUTTON_POPUP_TEXT_MIN_INC;
4143             }
4144             description { state: "clicked" 0.0;
4145                inherit: "default" 0.0;
4146                visible: 1;
4147                min: 0 0;
4148                color: BUTTON_POPUP_BUTTON_TEXT_PRESSED_COLOR_INC;
4149             }
4150             description { state: "disabled" 0.0;
4151                inherit: "default" 0.0;
4152                color: 0 0 0 128;
4153             }
4154             description { state: "disabled_visible" 0.0;
4155                inherit: "default" 0.0;
4156                color: BUTTON_POPUP_BUTTON_TEXT_DISABLED_COLOR_INC;
4157                visible: 1;
4158                min: BUTTON_POPUP_TEXT_MIN_INC;
4159             }
4160             description { state: "focused" 0.0;
4161                inherit: "default" 0.0;
4162                visible: 1;
4163                min: 0 0;
4164                color: BUTTON_POPUP_BUTTON_TEXT_FOCUSED_COLOR_INC;
4165             }
4166          }
4167          part { name: "over2";
4168             type: RECT;
4169             repeat_events: 1;
4170             ignore_flags: ON_HOLD;
4171             description { state: "default" 0.0;
4172                color: 0 0 0 0;
4173             }
4174          }
4175          part { name: "over3";
4176             type: RECT;
4177             repeat_events: 1;
4178             description { state: "default" 0.0;
4179                color: 0 0 0 0;
4180             }
4181          }
4182          part { name: "clipper";
4183             type: RECT;
4184             description { state: "default" 0.0;
4185                color: 255 255 255 255;
4186             }
4187          }
4188          part { name: "disabler";
4189             type: RECT;
4190             description { state: "default" 0.0;
4191                color: 0 0 0 0;
4192                visible: 0;
4193             }
4194             description { state: "disabled" 0.0;
4195                inherit: "default" 0.0;
4196                visible: 1;
4197             }
4198          }
4199       }
4200       programs {
4201          program { name: "button_click";
4202             signal: "mouse,down,1";
4203             source: "over2";
4204             action: SIGNAL_EMIT "elm,action,press" "";
4205             after: "button_click_anim";
4206          }
4207          program { name: "button_click_anim";
4208             action: STATE_SET "clicked" 0.0;
4209             target: "button_image";
4210             after: "text_clicked";
4211          }
4212          program { name: "text_clicked";
4213             script {
4214                new st[31];
4215                new Float:vl;
4216                get_state(PART:"elm.text", st, 30, vl);
4217                if (!strcmp(st, "visible"))
4218                  set_state(PART:"elm.text", "clicked", 0.0);
4219             }
4220          }
4221          program { name: "button_unpress";
4222             action: SIGNAL_EMIT "elm,action,unpress" "";
4223          }
4224          program { name: "button_mouseout_clicked";
4225             signal: "mouse,up,1";
4226             source: "over3";
4227             script {
4228                new st[31];
4229                new Float:vl;
4230                get_state(PART:"elm.swallow.content", st, 30, vl);
4231                if (strcmp(st, "icononly"))
4232                  {
4233                     emit("elm,action,default,text,set", "");
4234                     set_state(PART:"elm.text", "visible", 0.0);
4235                  }
4236                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4237                  set_state(PART:"button_image", "default", 0.0);
4238             }
4239             after: button_unpress;
4240          }
4241          program { name: "touch_snd";
4242             signal: "mouse,clicked,1";
4243             source: "over2";
4244             action: PLAY_SAMPLE "touch_sound" 1.0;
4245             after: button_unclick3;
4246          }
4247          program { name: "button_unclick3";
4248             action: SIGNAL_EMIT "elm,action,click" "";
4249          }
4250          program { name: "text_show";
4251             signal: "elm,state,text,visible";
4252             source: "elm";
4253             script {
4254                new st[31];
4255                new Float:vl;
4256                get_state(PART:"elm.swallow.content", st, 30, vl);
4257                if (!strcmp(st, "icononly"))
4258                  {
4259                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4260                     set_state(PART:"padding_icon_text", "visible", 0.0);
4261                  }
4262                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4263                  set_state(PART:"elm.text", "visible", 0.0);
4264                else
4265                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4266             }
4267          }
4268          program { name: "text_hide";
4269             signal: "elm,state,text,hidden";
4270             source: "elm";
4271             script {
4272                new st[31];
4273                new Float:vl;
4274                get_state(PART:"elm.swallow.content", st, 30, vl);
4275                if (!strcmp(st, "visible"))
4276                  {
4277                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4278                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4279                  }
4280                set_state(PART:"elm.text", "default", 0.0);
4281             }
4282          }
4283          program { name: "icon_show";
4284             signal: "elm,state,icon,visible";
4285             source: "elm";
4286             script {
4287                new st[31];
4288                new Float:vl;
4289                get_state(PART:"elm.text", st, 30, vl);
4290                if (!strcmp(st, "visible"))
4291                  {
4292                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4293                     set_state(PART:"padding_icon_text", "visible", 0.0);
4294                  }
4295                else
4296                  {
4297                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4298                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4299                  }
4300             }
4301          }
4302          program { name: "icon_hide";
4303             signal: "elm,state,icon,hidden";
4304             source: "elm";
4305             action: STATE_SET "default" 0.0;
4306             target: "elm.swallow.content";
4307             target: "padding_icon_text";
4308          }
4309          program { name: "disable";
4310             signal: "elm,state,disabled";
4311             source: "elm";
4312             action: STATE_SET "disabled" 0.0;
4313             target: "button_image";
4314             target: "disabler";
4315             after: "disable_text";
4316          }
4317          program { name: "disable_text";
4318             script {
4319                new st[31];
4320                new Float:vl;
4321                get_state(PART:"elm.text", st, 30, vl);
4322                if (!strcmp(st, "visible"))
4323                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4324                else
4325                  set_state(PART:"elm.text", "disabled", 0.0);
4326                set_int(button_state, BUTTON_STATE_DISABLED);
4327             }
4328          }
4329          program { name: "enable";
4330             signal: "elm,state,enabled";
4331             source: "elm";
4332             action: STATE_SET "default" 0.0;
4333             target: "button_image";
4334             target: "disabler";
4335             after: "enable_text";
4336          }
4337          program { name: "enable_text";
4338             script {
4339                new st[31];
4340                new Float:vl;
4341                get_state(PART:"elm.text", st, 30, vl);
4342                if (!strcmp(st, "disabled_visible"))
4343                  set_state(PART:"elm.text", "visible", 0.0);
4344                else
4345                  set_state(PART:"elm.text", "default", 0.0);
4346                set_int(button_state, BUTTON_STATE_ENABLED);
4347             }
4348          }
4349          program { name: "focused";
4350             //signal: "elm,action,focus";
4351             //source: "elm";
4352             action: STATE_SET "focused" 0.0;
4353             target: "button_image";
4354             target: "elm.text";
4355          }
4356          program { name: "unfocused";
4357             //signal: "elm,action,unfocus";
4358             //source: "elm";
4359             action: STATE_SET "default" 0.0;
4360             target: "button_image";
4361             after: "unfocus_text";
4362          }
4363          program { name: "unfocus_text";
4364             action: STATE_SET "visible" 0.0;
4365             target: "elm.text";
4366          }
4367       }
4368    }
4369
4370 ///////////////////////////////////////////////////////////////////////////////////////
4371 #define BUTTON_CIRCLE_STYLES(style_name, circle_normal, circle_press, image_normal, image_press, min_width, min_height) \
4372    group { name: "elm/button/base/"style_name; \
4373       images { \
4374          image: circle_normal COMP; \
4375          image: circle_press COMP; \
4376          image: image_normal COMP; \
4377          image: image_press COMP; \
4378       } \
4379       parts { \
4380          part { name: "button_image"; \
4381             scale: 1; \
4382             description { state: "default" 0.0; \
4383                min: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC; \
4384                max: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC; \
4385                image.normal: circle_normal; \
4386                color: 255 255 255 255; \
4387             } \
4388             description { \
4389                state: "clicked" 0.0; \
4390                inherit: "default" 0.0; \
4391                image.normal: circle_press; \
4392             } \
4393             description { \
4394                state: "disabled" 0.0; \
4395                inherit: "default" 0.0; \
4396                color: 255 255 255 128; \
4397             } \
4398          } \
4399          part { name: "button_center_part"; \
4400             scale: 1; \
4401             description { state: "default" 0.0; \
4402                min: BUTTON_CIRCLE_STYLE_IMAGE_MIN_MAX_INC; \
4403                max: BUTTON_CIRCLE_STYLE_IMAGE_MIN_MAX_INC; \
4404                image.normal: image_normal; \
4405                color: 255 255 255 255; \
4406             } \
4407             description { \
4408                state: "clicked" 0.0; \
4409                inherit: "default" 0.0; \
4410                image.normal: image_press; \
4411             } \
4412             description { \
4413                state: "disabled" 0.0; \
4414                inherit: "default" 0.0; \
4415                color: 255 255 255 128; \
4416             } \
4417          } \
4418          part { name: "over1"; \
4419             type: RECT; \
4420             ignore_flags: ON_HOLD; \
4421             description { state: "default" 0.0; \
4422                color: 0 0 0 0; \
4423                min: min_width min_height; \
4424             } \
4425          } \
4426          part { name: "over2"; \
4427             repeat_events: 1; \
4428             description { state: "default" 0.0; \
4429                color: 0 0 0 0; \
4430             } \
4431          } \
4432          part { name: "disabler"; \
4433             type: RECT; \
4434             description { state: "default" 0.0; \
4435                color: 0 0 0 0; \
4436                visible: 0; \
4437             } \
4438             description { state: "disabled" 0.0; \
4439                inherit: "default" 0.0; \
4440                visible: 1; \
4441             } \
4442          } \
4443       } \
4444       programs { \
4445          program { name: "button_click"; \
4446             signal: "mouse,down,1"; \
4447             source: "over1"; \
4448             action: SIGNAL_EMIT "elm,action,press" ""; \
4449             after: "button_click_anim"; \
4450          } \
4451          program { name: "button_click_anim"; \
4452             action: STATE_SET "clicked" 0.0; \
4453             target: "button_image"; \
4454             target: "button_center_part"; \
4455          } \
4456          program { name: "button_unclick"; \
4457             signal: "mouse,up,1"; \
4458             source: "over2"; \
4459             action: SIGNAL_EMIT "elm,action,unpress" ""; \
4460             after: "button_unclick_anim"; \
4461          } \
4462          program { name: "button_unclick_anim"; \
4463             action: STATE_SET "default" 0.0; \
4464             target: "button_image"; \
4465             target: "button_center_part"; \
4466          } \
4467          program { name: "touch_snd"; \
4468             signal: "mouse,clicked,1"; \
4469             source: "over1"; \
4470             action: PLAY_SAMPLE "touch_sound" 1.0; \
4471             after: button_unclick3; \
4472          } \
4473          program { name: "button_unclick3"; \
4474             action: SIGNAL_EMIT "elm,action,click" ""; \
4475          } \
4476          program { name: "disable"; \
4477             signal: "elm,state,disabled"; \
4478             source: "elm"; \
4479             action: STATE_SET "disabled" 0.0; \
4480             target: "disabler"; \
4481             target: "button_image"; \
4482             target: "button_center_part"; \
4483          } \
4484          program { name: "enable"; \
4485             signal: "elm,state,enabled"; \
4486             source: "elm"; \
4487             action: STATE_SET "default" 0.0; \
4488             target: "disabler"; \
4489             target: "button_image"; \
4490             target: "button_center_part"; \
4491          } \
4492       } \
4493    }
4494
4495 ///////////////////////////////////////////////////////////////////////////////////////
4496    BUTTON_CIRCLE_STYLES("reveal", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_reveal.png", "00_button_reveal_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4497
4498 ///////////////////////////////////////////////////////////////////////////////////////
4499    BUTTON_CIRCLE_STYLES("reveal/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_reveal.png", "00_button_reveal_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4500
4501 ///////////////////////////////////////////////////////////////////////////////////////
4502    BUTTON_CIRCLE_STYLES("expand/closed", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_expand_closed.png", "00_button_expand_closed_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4503
4504 ///////////////////////////////////////////////////////////////////////////////////////
4505    BUTTON_CIRCLE_STYLES("expand/closed/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_expand_closed.png", "00_button_expand_closed_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4506
4507 ///////////////////////////////////////////////////////////////////////////////////////
4508    BUTTON_CIRCLE_STYLES("expand/opened", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_expand_opened.png", "00_button_expand_opened_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4509
4510 ///////////////////////////////////////////////////////////////////////////////////////
4511    BUTTON_CIRCLE_STYLES("expand/opened/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_expand_opened.png", "00_button_expand_opened_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4512
4513 ///////////////////////////////////////////////////////////////////////////////////////
4514    BUTTON_CIRCLE_STYLES("info", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_info.png", "00_button_info_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4515
4516 ///////////////////////////////////////////////////////////////////////////////////////
4517    BUTTON_CIRCLE_STYLES("info/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_info.png", "00_button_info_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4518
4519 ///////////////////////////////////////////////////////////////////////////////////////
4520    BUTTON_CIRCLE_STYLES("rename", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_rename.png", "00_button_rename_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4521
4522 ///////////////////////////////////////////////////////////////////////////////////////
4523    BUTTON_CIRCLE_STYLES("rename/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_rename.png", "00_button_rename_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4524
4525 ///////////////////////////////////////////////////////////////////////////////////////
4526    BUTTON_CIRCLE_STYLES("call", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_call.png", "00_button_call_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4527
4528 ///////////////////////////////////////////////////////////////////////////////////////
4529    BUTTON_CIRCLE_STYLES("call/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_call.png", "00_button_call_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4530
4531 ///////////////////////////////////////////////////////////////////////////////////////
4532    BUTTON_CIRCLE_STYLES("warning", "00_btn_circle_bg_normal_01.png", "00_btn_circle_bg_press_01.png", "00_button_warning.png", "00_button_warning_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4533
4534 ///////////////////////////////////////////////////////////////////////////////////////
4535    BUTTON_CIRCLE_STYLES("warning/extended", "00_btn_circle_bg_normal_01.png", "00_btn_circle_bg_press_01.png", "00_button_warning.png", "00_button_warning_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4536
4537 ///////////////////////////////////////////////////////////////////////////////////////
4538    BUTTON_CIRCLE_STYLES("plus", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_plus.png", "00_button_plus_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4539
4540 ///////////////////////////////////////////////////////////////////////////////////////
4541    BUTTON_CIRCLE_STYLES("plus/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_plus.png", "00_button_plus_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4542
4543 ///////////////////////////////////////////////////////////////////////////////////////
4544    BUTTON_CIRCLE_STYLES("minus", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_minus.png", "00_button_minus_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4545
4546 ///////////////////////////////////////////////////////////////////////////////////////
4547    BUTTON_CIRCLE_STYLES("minus/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_minus.png", "00_button_minus_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4548
4549 ///////////////////////////////////////////////////////////////////////////////////////
4550    BUTTON_CIRCLE_STYLES("cancel", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_cancel.png", "00_button_cancel_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4551
4552 ///////////////////////////////////////////////////////////////////////////////////////
4553    BUTTON_CIRCLE_STYLES("cancel/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_cancel.png", "00_button_cancel_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4554
4555 ///////////////////////////////////////////////////////////////////////////////////////
4556    BUTTON_CIRCLE_STYLES("send", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_send.png", "00_button_send_press.png", BUTTON_CIRCLE_NORMAL_MIN_WIDTH_INC, BUTTON_CIRCLE_NORMAL_MIN_HEIGHT_INC)
4557
4558 ///////////////////////////////////////////////////////////////////////////////////////
4559    BUTTON_CIRCLE_STYLES("send/extended", "00_btn_circle_bg_normal.png", "00_btn_circle_bg_press.png", "00_button_send.png", "00_button_send_press.png", BUTTON_CIRCLE_EXTENEDED_MIN_WIDTH_INC, BUTTON_CIRCLE_EXTENEDED_MIN_HEIGHT_INC)
4560 ///////////////////////////////////////////////////////////////////////////////////////
4561
4562    group { name: "elm/button/base/circle/empty";
4563       images {
4564          image: "00_btn_circle_bg_normal.png" COMP;
4565          image: "00_btn_circle_bg_press.png" COMP;
4566       }
4567       parts {
4568          part { name: "button_image";
4569             scale: 1;
4570             description { state: "default" 0.0;
4571                min: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC;
4572                max: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC;
4573                fixed: 1 1;
4574                image.normal: "00_btn_circle_bg_normal.png";
4575                color: 255 255 255 255;
4576             }
4577             description { state: "clicked" 0.0;
4578                inherit: "default" 0.0;
4579                image.normal: "00_btn_circle_bg_press.png";
4580             }
4581             description { state: "disabled" 0.0;
4582                inherit: "default" 0.0;
4583                color: 255 255 255 128;
4584             }
4585          }
4586          part { name: "elm.swallow.content";
4587             type: SWALLOW;
4588             scale: 1;
4589             description { state: "default" 0.0;
4590                min: BUTTON_CIRCLE_STYLE_CONTENT_MIN_MAX_INC;
4591                max: BUTTON_CIRCLE_STYLE_CONTENT_MIN_MAX_INC;
4592                fixed: 1 1;
4593                color: 255 255 255 255;
4594             }
4595             description {
4596                state: "disabled" 0.0;
4597                inherit: "default" 0.0;
4598                color: 255 255 255 128;
4599             }
4600          }
4601          part { name: "over1";
4602             type: RECT;
4603             ignore_flags: ON_HOLD;
4604             description { state: "default" 0.0;
4605                color: 0 0 0 0;
4606             }
4607          }
4608          part { name: "over2";
4609             repeat_events: 1;
4610             description { state: "default" 0.0;
4611                color: 0 0 0 0;
4612             }
4613          }
4614          part { name: "disabler";
4615             type: RECT;
4616             description { state: "default" 0.0;
4617                color: 0 0 0 0;
4618                visible: 0;
4619             }
4620             description { state: "disabled" 0.0;
4621                inherit: "default" 0.0;
4622                visible: 1;
4623             }
4624          }
4625       }
4626       programs {
4627          program { name: "button_click";
4628             signal: "mouse,down,1";
4629             source: "over1";
4630             action: SIGNAL_EMIT "elm,action,press" "";
4631             after: "button_click_anim";
4632          }
4633          program { name: "button_click_anim";
4634             action: STATE_SET "clicked" 0.0;
4635             target: "button_image";
4636          }
4637          program { name: "touch_snd";
4638             signal: "mouse,clicked,1";
4639             source: "over1";
4640             action: PLAY_SAMPLE "touch_sound" 1.0;
4641             after: button_unclick2;
4642          }
4643          program { name: "button_unclick2";
4644             action: SIGNAL_EMIT "elm,action,click" "";
4645          }
4646          program { name: "button_unclick";
4647             signal: "mouse,up,1";
4648             source: "over2";
4649             action: SIGNAL_EMIT "elm,action,unpress" "";
4650             after: "button_unclick_anim";
4651          }
4652          program { name: "button_unclick_anim";
4653             action: STATE_SET "default" 0.0;
4654             target: "button_image";
4655          }
4656          program { name: "disable";
4657             signal: "elm,state,disabled";
4658             source: "elm";
4659             action: STATE_SET "disabled" 0.0;
4660             target: "disabler";
4661             target: "button_image";
4662          }
4663          program { name: "enable";
4664             signal: "elm,state,enabled";
4665             source: "elm";
4666             action: STATE_SET "default" 0.0;
4667             target: "disabler";
4668             target: "button_image";
4669          }
4670          program { name: "icon_show";
4671             signal: "elm,state,icon,visible";
4672             source: "elm";
4673             action: STATE_SET "visible" 0.0;
4674             target: "elm.swallow.content";
4675          }
4676          program { name: "icon_hide";
4677             signal: "elm,state,icon,hidden";
4678             source: "elm";
4679             action: STATE_SET "default" 0.0;
4680             target: "elm.swallow.content";
4681          }
4682       }
4683    }
4684
4685 ///////////////////////////////////////////////////////////////////////////////////////
4686 #define BUTTON_EDIT_STYLES(style_name, edit_normal, edit_press, image_normal, image_press, min_width, min_height) \
4687    group { name: "elm/button/base/contacts/"style_name; \
4688    alias: "elm/button/base/"style_name; \
4689       images { \
4690          image: image_normal COMP; \
4691          image: image_press COMP; \
4692          image: edit_normal COMP; \
4693          image: edit_press COMP; \
4694          image: "00_button_edit_dim.png" COMP; \
4695          image: "00_button_edit_focus.png" COMP; \
4696       } \
4697       parts { \
4698          part { name: "button_image"; \
4699             scale: 1; \
4700             description { state: "default" 0.0; \
4701                min: BUTTON_EDIT_STYLE_BG_NORMAL_MIN_MAX_INC; \
4702                max: BUTTON_EDIT_STYLE_BG_NORMAL_MIN_MAX_INC; \
4703                image { \
4704                   normal: edit_normal; \
4705                   border: BUTTON_EDIT_STYLE_BORDER_INC; \
4706                   border_scale: 1; \
4707                } \
4708             } \
4709             description { \
4710                state: "clicked" 0.0; \
4711                inherit: "default" 0.0; \
4712                image.normal: edit_press; \
4713             } \
4714             description { \
4715                state: "disabled" 0.0; \
4716                inherit: "default" 0.0; \
4717                image.normal: "00_button_edit_dim.png"; \
4718             } \
4719             description { \
4720                state: "focused" 0.0; \
4721                inherit: "default" 0.0; \
4722                image.normal: "00_button_edit_focus.png"; \
4723             } \
4724          } \
4725          part { name: "button_center_part"; \
4726             mouse_events: 0; \
4727             scale: 1; \
4728             description { state: "default" 0.0; \
4729                min: BUTTON_EDIT_STYLE_IMAGE_NORMAL_MIN_MAX_INC; \
4730                max: BUTTON_EDIT_STYLE_IMAGE_NORMAL_MIN_MAX_INC; \
4731                image { \
4732                   normal: image_normal; \
4733                   border: BUTTON_EDIT_STYLE_BORDER_INC; \
4734                   border_scale: 1; \
4735                } \
4736             } \
4737             description { \
4738                state: "clicked" 0.0; \
4739                inherit: "default" 0.0; \
4740                image.normal: image_press; \
4741             } \
4742          } \
4743          part { name: "over1"; \
4744             type: RECT; \
4745             repeat_events: 1; \
4746             ignore_flags: ON_HOLD; \
4747             description { state: "default" 0.0; \
4748                color: 0 0 0 0; \
4749                min: min_width min_height; \
4750             } \
4751          } \
4752          part { name: "over2"; \
4753             repeat_events: 1; \
4754             description { state: "default" 0.0; \
4755                color: 0 0 0 0; \
4756             } \
4757          } \
4758          part { name: "disabler"; \
4759             type: RECT; \
4760             description { state: "default" 0.0; \
4761                color: 0 0 0 0; \
4762                visible: 0; \
4763             } \
4764             description { state: "disabled" 0.0; \
4765                inherit: "default" 0.0; \
4766                visible: 1; \
4767             } \
4768          } \
4769       } \
4770       programs { \
4771          program { name: "button_click"; \
4772             signal: "mouse,down,1"; \
4773             source: "over1"; \
4774             action: SIGNAL_EMIT "elm,action,press" ""; \
4775             after: "button_click_anim"; \
4776          } \
4777          program { name: "button_click_anim"; \
4778             action: STATE_SET "clicked" 0.0; \
4779             target: "button_image"; \
4780             target: "button_center_part"; \
4781          } \
4782          program { name: "button_unclick"; \
4783             signal: "mouse,up,1"; \
4784             source: "over2"; \
4785             action: SIGNAL_EMIT "elm,action,unpress" ""; \
4786             after: "button_unclick_anim"; \
4787          } \
4788          program { name: "button_unclick_anim"; \
4789             action: STATE_SET "default" 0.0; \
4790             target: "button_image"; \
4791             target: "button_center_part"; \
4792          } \
4793          program { name: "touch_snd"; \
4794             signal: "mouse,clicked,1"; \
4795             source: "over1"; \
4796             action: PLAY_SAMPLE "touch_sound" 1.0; \
4797             after: button_unclick3; \
4798          } \
4799          program { name: "button_unclick3"; \
4800             action: SIGNAL_EMIT "elm,action,click" ""; \
4801          } \
4802          program { name: "disable"; \
4803             signal: "elm,state,disabled"; \
4804             source: "elm"; \
4805             action: STATE_SET "disabled" 0.0; \
4806             target: "disabler"; \
4807             target: "button_image"; \
4808          } \
4809          program { name: "enable"; \
4810             signal: "elm,state,enabled"; \
4811             source: "elm"; \
4812             action: STATE_SET "default" 0.0; \
4813             target: "disabler"; \
4814             target: "button_image"; \
4815          } \
4816       } \
4817    }
4818 ///////////////////////////////////////////////////////////////////////////////////////
4819    BUTTON_EDIT_STYLES("icon_plus", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_plus.png", "00_button_icon_plus_press.png", BUTTON_EDIT_NORMAL_MIN_WIDTH_INC, BUTTON_EDIT_NORMAL_MIN_HEIGHT_INC)
4820
4821 ///////////////////////////////////////////////////////////////////////////////////////
4822    BUTTON_EDIT_STYLES("icon_plus/extended", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_plus.png", "00_button_icon_plus_press.png", BUTTON_EDIT_EXTENDED_MIN_WIDTH_INC, BUTTON_EDIT_EXTENDED_MIN_HEIGHT_INC)
4823
4824 ///////////////////////////////////////////////////////////////////////////////////////
4825    BUTTON_EDIT_STYLES("icon_minus", "00_button_edit_Delete.png", "00_button_edit_Delete_press.png", "00_button_icon_minus.png", "00_button_icon_minus_press.png", BUTTON_EDIT_NORMAL_MIN_WIDTH_INC, BUTTON_EDIT_NORMAL_MIN_HEIGHT_INC)
4826
4827 ///////////////////////////////////////////////////////////////////////////////////////
4828    BUTTON_EDIT_STYLES("icon_minus/extended", "00_button_edit_Delete.png", "00_button_edit_Delete_press.png", "00_button_icon_minus.png", "00_button_icon_minus_press.png", BUTTON_EDIT_EXTENDED_MIN_WIDTH_INC, BUTTON_EDIT_EXTENDED_MIN_HEIGHT_INC)
4829
4830 ///////////////////////////////////////////////////////////////////////////////////////
4831    BUTTON_EDIT_STYLES("icon_expand", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_expand.png", "00_button_icon_expand_press.png", BUTTON_EDIT_NORMAL_MIN_WIDTH_INC, BUTTON_EDIT_NORMAL_MIN_HEIGHT_INC)
4832
4833 ///////////////////////////////////////////////////////////////////////////////////////
4834    BUTTON_EDIT_STYLES("icon_expand/extended", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_expand.png", "00_button_icon_expand_press.png", BUTTON_EDIT_EXTENDED_MIN_WIDTH_INC, BUTTON_EDIT_EXTENDED_MIN_HEIGHT_INC)
4835
4836 ///////////////////////////////////////////////////////////////////////////////////////
4837    BUTTON_EDIT_STYLES("icon_expand_closed", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_expand_closed.png", "00_button_icon_expand_closed_press.png", BUTTON_EDIT_NORMAL_MIN_WIDTH_INC, BUTTON_EDIT_NORMAL_MIN_HEIGHT_INC)
4838
4839 ///////////////////////////////////////////////////////////////////////////////////////
4840    BUTTON_EDIT_STYLES("icon_expand_opened", "00_button_edit.png", "00_button_edit_press.png", "00_button_icon_expand_opened.png", "00_button_icon_expand_opened_press.png", BUTTON_EDIT_NORMAL_MIN_WIDTH_INC, BUTTON_EDIT_NORMAL_MIN_HEIGHT_INC)
4841
4842 ///////////////////////////////////////////////////////////////////////////////////////
4843    group { name: "elm/button/base/contacts/delete";
4844       images {
4845          image: "00_button_edit_Delete.png" COMP;
4846          image: "00_button_edit_Delete_press.png" COMP;
4847          image: "00_button_edit_dim.png" COMP;
4848          image: "00_button_edit_focus.png" COMP;
4849       }
4850       script {
4851          public button_state = BUTTON_STATE_ENABLED;
4852       }
4853       parts {
4854          part { name: "button_image";
4855             scale: 1;
4856             description { state: "default" 0.0;
4857                min: BUTTON_CONTACT_DELETE_BG_NORMAL_MIN_INC;
4858                image {
4859                   normal: "00_button_edit_Delete.png";
4860                   border: BUTTON_CONTACT_DELETE_BG_BORDER_INC;
4861                   border_scale: 1;
4862                }
4863             }
4864             description { state: "clicked" 0.0;
4865                inherit: "default" 0.0;
4866                image.normal: "00_button_edit_Delete_press.png";
4867             }
4868             description { state: "disabled" 0.0;
4869                inherit: "default" 0.0;
4870                image.normal: "00_button_edit_dim.png";
4871             }
4872             description { state: "focused" 0.0;
4873                inherit: "default" 0.0;
4874                image.normal: "00_button_edit_focus.png";
4875             }
4876          }
4877          part { name: "padding_left_top";
4878             type: RECT;
4879             scale: 1;
4880             mouse_events: 0;
4881             description { state: "default" 0.0;
4882                align: 0.0 0.0;
4883                rel2.relative: 0.0 0.0;
4884                min: BUTTON_CONTACT_DELETE_PADDING_LEFT_TOP_MIN_INC;
4885                fixed: 1 1;
4886                visible: 0;
4887             }
4888          }
4889          part { name: "padding_right_bottom";
4890             type: RECT;
4891             scale: 1;
4892             mouse_events: 0;
4893             description { state: "default" 0.0;
4894                align: 1.0 1.0;
4895                rel1.relative: 1.0 1.0;
4896                min: BUTTON_CONTACT_DELETE_PADDING_RIGHT_BOTTOM_MIN_INC;
4897                fixed: 1 1;
4898                visible: 0;
4899             }
4900          }
4901          part { name: "padding_icon_text";
4902             type: RECT;
4903             scale: 1;
4904             mouse_events: 0;
4905             description { state: "default" 0.0; //when only icon or no icon is there
4906                align: 0.0 0.0;
4907                rel1 {
4908                   relative: 1.0 0.0;
4909                   to: "elm.swallow.content";
4910                }
4911                rel2.to: "elm.swallow.content";
4912                fixed: 1 0;
4913                min: 0 0;
4914                visible: 0;
4915             }
4916             description { state: "icononly" 0.0;
4917                inherit: "default" 0.0;
4918             }
4919             description { state: "visible" 0.0; //when icon is visible
4920                inherit: "default" 0.0;
4921                min: BUTTON_CONTACT_DELETE_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
4922             }
4923          }
4924          part { name: "elm.swallow.content";
4925             type: SWALLOW;
4926             scale: 1;
4927             clip_to: "clipper";
4928             description { state: "default" 0.0;
4929                visible: 0;
4930                align: 0.0 0.5;
4931                rel1 {
4932                   relative: 1.0 1.0;
4933                   to: "padding_left_top";
4934                }
4935                rel2 {
4936                   relative: 1.0 0.0;
4937                   to_x: "padding_left_top";
4938                   to_y: "padding_right_bottom";
4939                }
4940                fixed: 1 0;
4941             }
4942             description { state: "visible" 0.0;
4943                fixed: 1 0;
4944                align: 0.0 0.5;
4945                rel1 {
4946                   relative: 1.0 1.0;
4947                   to: "padding_left_top";
4948                }
4949                rel2 {
4950                   relative: 1.0 0.0;
4951                   to_x: "padding_left_top";
4952                   to_y: "padding_right_bottom";
4953                }
4954                aspect: 1.0 1.0;
4955                aspect_preference: VERTICAL;
4956             }
4957             description { state: "icononly" 0.0;
4958                min: BUTTON_CONTACT_DELETE_ICON_ICONONLY_MIN_INC;
4959                rel1 {
4960                   relative: 1.0 1.0;
4961                   to: "padding_left_top";
4962                }
4963                rel2 {
4964                   relative: 0.0 0.0;
4965                   to: "padding_right_bottom";
4966                }
4967                aspect: 1.0 1.0;
4968                aspect_preference: VERTICAL;
4969             }
4970          }
4971          part { name: "elm.text";
4972             type: TEXT;
4973             mouse_events: 0;
4974             scale: 1;
4975             clip_to: "clipper";
4976             description { state: "default" 0.0;
4977                rel1 {
4978                   relative: 1.0 1.0;
4979                   to_x: "padding_icon_text";
4980                   to_y: "padding_left_top";
4981                }
4982                rel2 {
4983                   relative: 0.0 0.0;
4984                   to: "padding_right_bottom";
4985                }
4986                color: BUTTON_TEXT_CONTACTS_DELETE_NORMAL_COLOR_INC;
4987                text {
4988                   font: "SLP:style=Medium";
4989                   size: BUTTON_CONTACT_DELETE_FONT_SIZE_INC;
4990                   min: 1 0;
4991                   text: "Delete";
4992                   max: 1 0;
4993                   text_class: "slp_medium";
4994                }
4995             }
4996             description { state: "visible" 0.0;
4997                inherit: "default" 0.0;
4998             }
4999             description { state: "clicked" 0.0;
5000                inherit: "default" 0.0;
5001                color: BUTTON_TEXT_CONTACTS_DELETE_PRESSED_COLOR_INC;
5002             }
5003             description { state: "disabled" 0.0;
5004                inherit: "default" 0.0;
5005                color: 0 0 0 128;
5006             }
5007             description { state: "disabled_visible" 0.0;
5008                inherit: "default" 0.0;
5009                color: BUTTON_TEXT_CONTACTS_DELETE_DISABLED_COLOR_INC;
5010             }
5011             description { state: "focused" 0.0;
5012                inherit: "default" 0.0;
5013                min: 0 0;
5014                color: BUTTON_TEXT_CONTACTS_DELETE_PRESSED_COLOR_INC;
5015             }
5016          }
5017          part { name: "over2";
5018             type: RECT;
5019             repeat_events: 1;
5020             ignore_flags: ON_HOLD;
5021             description { state: "default" 0.0;
5022                color: 0 0 0 0;
5023             }
5024          }
5025          part { name: "over3";
5026             type: RECT;
5027             repeat_events: 1;
5028             description { state: "default" 0.0;
5029                color: 0 0 0 0;
5030             }
5031          }
5032          part { name: "clipper";
5033             type: RECT;
5034             description { state: "default" 0.0;
5035                color: 255 255 255 255;
5036             }
5037          }
5038          part { name: "disabler";
5039             type: RECT;
5040             description { state: "default" 0.0;
5041                color: 0 0 0 0;
5042                visible: 0;
5043             }
5044             description { state: "disabled" 0.0;
5045                inherit: "default" 0.0;
5046                visible: 1;
5047             }
5048          }
5049       }
5050       programs {
5051          program { name: "button_click";
5052             signal: "mouse,down,1";
5053             source: "over2";
5054             action: SIGNAL_EMIT "elm,action,press" "";
5055             after: "button_click_anim";
5056          }
5057          program { name: "button_click_anim";
5058             action: STATE_SET "clicked" 0.0;
5059             target: "button_image";
5060             after: "text_clicked";
5061          }
5062          program { name: "text_clicked";
5063             script {
5064                new st[31];
5065                new Float:vl;
5066                get_state(PART:"elm.text", st, 30, vl);
5067                if (!strcmp(st, "visible"))
5068                  set_state(PART:"elm.text", "clicked", 0.0);
5069             }
5070          }
5071          program { name: "button_unpress";
5072             action: SIGNAL_EMIT "elm,action,unpress" "";
5073          }
5074          program { name: "button_mouseout_clicked";
5075             signal: "mouse,up,1";
5076             source: "over3";
5077             script {
5078                new st[31];
5079                new Float:vl;
5080                get_state(PART:"elm.swallow.content", st, 30, vl);
5081                if (strcmp(st, "icononly"))
5082                  {
5083                     emit("elm,action,default,text,set", "");
5084                     set_state(PART:"elm.text", "visible", 0.0);
5085                  }
5086                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5087                  set_state(PART:"button_image", "default", 0.0);
5088             }
5089             after: button_unpress;
5090          }
5091          program { name: "touch_snd";
5092             signal: "mouse,clicked,1";
5093             source: "over2";
5094             action: PLAY_SAMPLE "touch_sound" 1.0;
5095             after: button_unclick3;
5096          }
5097          program { name: "button_unclick3";
5098             action: SIGNAL_EMIT "elm,action,click" "";
5099          }
5100          program { name: "text_show";
5101             signal: "elm,state,text,visible";
5102             source: "elm";
5103             script {
5104                new st[31];
5105                new Float:vl;
5106                get_state(PART:"elm.swallow.content", st, 30, vl);
5107                if (!strcmp(st, "icononly"))
5108                  {
5109                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5110                     set_state(PART:"padding_icon_text", "visible", 0.0);
5111                  }
5112                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5113                  set_state(PART:"elm.text", "visible", 0.0);
5114                else
5115                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5116             }
5117          }
5118          program { name: "text_hide";
5119             signal: "elm,state,text,hidden";
5120             source: "elm";
5121             script {
5122                new st[31];
5123                new Float:vl;
5124                get_state(PART:"elm.swallow.content", st, 30, vl);
5125                if (!strcmp(st, "visible"))
5126                  {
5127                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5128                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5129                  }
5130                set_state(PART:"elm.text", "default", 0.0);
5131             }
5132          }
5133          program { name: "icon_show";
5134             signal: "elm,state,icon,visible";
5135             source: "elm";
5136             script {
5137                new st[31];
5138                new Float:vl;
5139                get_state(PART:"elm.text", st, 30, vl);
5140                if (!strcmp(st, "visible"))
5141                  {
5142                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5143                     set_state(PART:"padding_icon_text", "visible", 0.0);
5144                  }
5145                else
5146                  {
5147                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5148                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5149                  }
5150             }
5151          }
5152          program { name: "icon_hide";
5153             signal: "elm,state,icon,hidden";
5154             source: "elm";
5155             action: STATE_SET "default" 0.0;
5156             target: "elm.swallow.content";
5157             target: "padding_icon_text";
5158          }
5159          program { name: "disable";
5160             signal: "elm,state,disabled";
5161             source: "elm";
5162             action: STATE_SET "disabled" 0.0;
5163             target: "button_image";
5164             target: "disabler";
5165             after: "disable_text";
5166          }
5167          program { name: "disable_text";
5168             script {
5169                new st[31];
5170                new Float:vl;
5171                get_state(PART:"elm.text", st, 30, vl);
5172                if (!strcmp(st, "visible"))
5173                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5174                else
5175                  set_state(PART:"elm.text", "disabled", 0.0);
5176                set_int(button_state, BUTTON_STATE_DISABLED);
5177             }
5178          }
5179          program { name: "enable";
5180             signal: "elm,state,enabled";
5181             source: "elm";
5182             action: STATE_SET "default" 0.0;
5183             target: "button_image";
5184             target: "disabler";
5185             after: "enable_text";
5186          }
5187          program { name: "enable_text";
5188             script {
5189                new st[31];
5190                new Float:vl;
5191                get_state(PART:"elm.text", st, 30, vl);
5192                if (!strcmp(st, "disabled_visible"))
5193                  set_state(PART:"elm.text", "visible", 0.0);
5194                else
5195                  set_state(PART:"elm.text", "default", 0.0);
5196                set_int(button_state, BUTTON_STATE_ENABLED);
5197             }
5198          }
5199          program { name: "focused";
5200             //signal: "elm,action,focus";
5201             //source: "elm";
5202             action: STATE_SET "focused" 0.0;
5203             target: "button_image";
5204             target: "elm.text";
5205          }
5206          program { name: "unfocused";
5207             //signal: "elm,action,unfocus";
5208             //source: "elm";
5209             action: STATE_SET "default" 0.0;
5210             target: "button_image";
5211             after: "unfocus_text";
5212          }
5213          program { name: "unfocus_text";
5214             action: STATE_SET "visible" 0.0;
5215             target: "elm.text";
5216          }
5217       }
5218    }
5219
5220 ///////////////////////////////////////////////////////////////////////////////////////
5221    group { name: "elm/button/base/multiline";
5222       alias: "elm/button/base/text_only/multiline";
5223       images {
5224          image: "00_button_04_normal.png" COMP;
5225          image: "00_button_04_press.png" COMP;
5226          image: "00_button_04_dim.png" COMP;
5227          image: "00_button_04_normal_focus.png" COMP;
5228       }
5229       script {
5230          public button_state = BUTTON_STATE_ENABLED;
5231       }
5232       styles{
5233          style { name: "btn_multiline_style";
5234             base: "font=SLP:style=Medium font_size=18 align=center color=#ffffff wrap=mixed text_class=slp_medium";
5235             tag: "br" "\n";
5236             tag: "ps" "ps";
5237             tag: "tab" "\t";
5238          }
5239       }
5240       parts {
5241          part { name: "button_image";
5242             scale: 1;
5243             description { state: "default" 0.0;
5244                min: 10 46;
5245                image {
5246                   normal: "00_button_04_normal.png";
5247                   border: 4 4 3 3;
5248                   border_scale: 1;
5249                }
5250             }
5251             description { state: "clicked" 0.0;
5252                inherit: "default" 0.0;
5253                image.normal: "00_button_04_press.png";
5254             }
5255             description { state: "disabled" 0.0;
5256                inherit: "default" 0.0;
5257                image.normal: "00_button_04_dim.png";
5258             }
5259             description { state: "focused" 0.0;
5260                inherit: "default" 0.0;
5261                image.normal: "00_button_04_normal_focus.png";
5262             }
5263          }
5264          part { name: "padding_left_top";
5265             type: RECT;
5266             scale: 1;
5267             mouse_events: 0;
5268             description { state: "default" 0.0;
5269                align: 0.0 0.0;
5270                rel2.relative: 0.0 0.0;
5271                min: 2 2;
5272                fixed: 1 1;
5273                visible: 0;
5274             }
5275          }
5276          part { name: "padding_right_bottom";
5277             type: RECT;
5278             scale: 1;
5279             mouse_events: 0;
5280             description { state: "default" 0.0;
5281                align: 1.0 1.0;
5282                rel1.relative: 1.0 1.0;
5283                min: 2 2;
5284                fixed: 1 1;
5285                visible: 0;
5286             }
5287          }
5288          part { name: "icon_rect";
5289             type: RECT;
5290             scale: 1;
5291             mouse_events: 0;
5292             description { state: "default" 0.0;
5293                visible: 1;
5294                min: 0 40;
5295                fixed: 1 0;
5296                rel1 {
5297                   relative: 0.0 1.0;
5298                   to_x: "elm.swallow.content";
5299                   to_y: "padding_left_top";
5300                }
5301                rel2 {
5302                   relative: 1.0 0.0;
5303                   to_x: "elm.swallow.content";
5304                   to_y: "padding_right_bottom";
5305                }
5306                align: 0.0 0.5;
5307                color: 0 0 0 0;
5308             }
5309          }
5310          part { name: "padding_icon_text";
5311             type: RECT;
5312             scale: 1;
5313             mouse_events: 0;
5314             description { state: "default" 0.0; //when only icon or no icon is there
5315                align: 0.0 0.0;
5316                rel1 {
5317                   relative: 1.0 0.0;
5318                   to: "icon_rect";
5319                }
5320                rel2.to: "icon_rect";
5321                fixed: 1 0;
5322                min: 0 0;
5323                color: 0 0 0 0;
5324             }
5325             description { state: "icononly" 0.0;
5326                inherit: "default" 0.0;
5327             }
5328             description { state: "visible" 0.0; //when icon is visible
5329                align: 0.0 0.0;
5330                rel1 {
5331                   relative: 1.0 0.0;
5332                   to: "icon_rect";
5333                }
5334                rel2.to: "icon_rect";
5335                fixed: 1 0;
5336                min: 5 0;
5337                color: 0 0 0 0;
5338             }
5339          }
5340          part { name: "elm.swallow.content";
5341             type: SWALLOW;
5342             scale: 1;
5343             clip_to: "clipper";
5344             description { state: "default" 0.0;
5345                visible: 0;
5346                align: 0.0 0.5;
5347                rel1 {
5348                   relative: 1.0 1.0;
5349                   to: "padding_left_top";
5350                }
5351                rel2 {
5352                   relative: 1.0 0.0;
5353                   to_x: "padding_left_top";
5354                   to_y: "padding_right_bottom";
5355                }
5356                fixed: 1 0;
5357             }
5358             description { state: "visible" 0.0;
5359                fixed: 1 0;
5360                align: 0.0 0.5;
5361                rel1 {
5362                   relative: 1.0 1.0;
5363                   to: "padding_left_top";
5364                }
5365                rel2 {
5366                   relative: 1.0 0.0;
5367                   to_x: "padding_left_top";
5368                   to_y: "padding_right_bottom";
5369                }
5370                aspect: 1.0 1.0;
5371                aspect_preference: VERTICAL;
5372             }
5373             description { state: "icononly" 0.0;
5374                min: 40 40;
5375                rel1 {
5376                   relative: 1.0 1.0;
5377                   to: "padding_left_top";
5378                }
5379                rel2 {
5380                   relative: 0.0 0.0;
5381                   to: "padding_right_bottom";
5382                }
5383                aspect: 1.0 1.0;
5384                aspect_preference: VERTICAL;
5385             }
5386          }
5387          part { name: "elm.text";
5388             type: TEXTBLOCK;
5389             mouse_events: 0;
5390             scale: 1;
5391             clip_to: "clipper";
5392             description { state: "default" 0.0;
5393                visible: 0;
5394                rel1 {
5395                   relative: 1.0 1.0;
5396                   to_x: "padding_icon_text";
5397                   to_y: "padding_left_top";
5398                }
5399                rel2 {
5400                   relative: 0.0 0.0;
5401                   to: "padding_right_bottom";
5402                }
5403                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
5404                text {
5405                   style: "btn_multiline_style";
5406                   min: 0 0;
5407                   max: 0 1;
5408                }
5409             }
5410             description { state: "visible" 0.0;
5411                inherit: "default" 0.0;
5412                visible: 1;
5413                min: 80 0;
5414             }
5415             description { state: "clicked" 0.0;
5416                inherit: "default" 0.0;
5417                visible: 1;
5418                min: 0 0;
5419                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
5420             }
5421             description { state: "disabled" 0.0;
5422                inherit: "default" 0.0;
5423                color: 0 0 0 128;
5424             }
5425             description { state: "disabled_visible" 0.0;
5426                inherit: "default" 0.0;
5427                color: BUTTON_TEXT_STYLE1_TEXT_DISABLED_COLOR_INC;
5428                visible: 1;
5429                min: 80 0;
5430             }
5431             description { state: "focused" 0.0;
5432                inherit: "default" 0.0;
5433                visible: 1;
5434                min: 0 0;
5435                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
5436             }
5437          }
5438          part { name: "over2";
5439             type: RECT;
5440             repeat_events: 1;
5441             ignore_flags: ON_HOLD;
5442             description { state: "default" 0.0;
5443                color: 0 0 0 0;
5444             }
5445          }
5446          part { name: "over3";
5447             type: RECT;
5448             repeat_events: 1;
5449             description { state: "default" 0.0;
5450                color: 0 0 0 0;
5451             }
5452          }
5453          part { name: "clipper";
5454             type: RECT;
5455             description { state: "default" 0.0;
5456                color: 255 255 255 255;
5457             }
5458          }
5459          part { name: "disabler";
5460             type: RECT;
5461             description { state: "default" 0.0;
5462                color: 0 0 0 0;
5463                visible: 0;
5464             }
5465             description { state: "disabled" 0.0;
5466                inherit: "default" 0.0;
5467                visible: 1;
5468             }
5469          }
5470       }
5471       programs {
5472          program { name: "button_click";
5473             signal: "mouse,down,1";
5474             source: "over2";
5475             action: SIGNAL_EMIT "elm,action,press" "";
5476             after: "button_click_anim";
5477          }
5478          program { name: "button_click_anim";
5479             action: STATE_SET "clicked" 0.0;
5480             target: "button_image";
5481             after: "text_clicked";
5482          }
5483          program { name: "text_clicked";
5484             script {
5485                new st[31];
5486                new Float:vl;
5487                get_state(PART:"elm.text", st, 30, vl);
5488                if (!strcmp(st, "visible"))
5489                  set_state(PART:"elm.text", "clicked", 0.0);
5490             }
5491          }
5492          program { name: "button_unpress";
5493             action: SIGNAL_EMIT "elm,action,unpress" "";
5494          }
5495          program { name: "button_mouseout_clicked";
5496             signal: "mouse,up,1";
5497             source: "over3";
5498             script {
5499                new st[31];
5500                new Float:vl;
5501                get_state(PART:"elm.swallow.content", st, 30, vl);
5502                if (strcmp(st, "icononly"))
5503                  {
5504                     emit("elm,action,default,text,set", "");
5505                     set_state(PART:"elm.text", "visible", 0.0);
5506                  }
5507                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5508                  set_state(PART:"button_image", "default", 0.0);
5509             }
5510             after: button_unpress;
5511          }
5512          program { name: "touch_snd";
5513             signal: "mouse,clicked,1";
5514             source: "over2";
5515             action: PLAY_SAMPLE "touch_sound" 1.0;
5516             after: button_unclick3;
5517          }
5518          program { name: "button_unclick3";
5519             action: SIGNAL_EMIT "elm,action,click" "";
5520          }
5521          program { name: "text_show";
5522             signal: "elm,state,text,visible";
5523             source: "elm";
5524             script {
5525                new st[31];
5526                new Float:vl;
5527                get_state(PART:"elm.swallow.content", st, 30, vl);
5528                if (!strcmp(st, "icononly"))
5529                  {
5530                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5531                     set_state(PART:"padding_icon_text", "visible", 0.0);
5532                  }
5533                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5534                  set_state(PART:"elm.text", "visible", 0.0);
5535                else
5536                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5537             }
5538          }
5539          program { name: "text_hide";
5540             signal: "elm,state,text,hidden";
5541             source: "elm";
5542             script {
5543                new st[31];
5544                new Float:vl;
5545                get_state(PART:"elm.swallow.content", st, 30, vl);
5546                if (!strcmp(st, "visible"))
5547                  {
5548                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5549                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5550                  }
5551                set_state(PART:"elm.text", "default", 0.0);
5552             }
5553          }
5554          program { name: "icon_show";
5555             signal: "elm,state,icon,visible";
5556             source: "elm";
5557             script {
5558                new st[31];
5559                new Float:vl;
5560                get_state(PART:"elm.text", st, 30, vl);
5561                if (!strcmp(st, "visible"))
5562                  {
5563                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5564                     set_state(PART:"padding_icon_text", "visible", 0.0);
5565                  }
5566                else
5567                  {
5568                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5569                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5570                  }
5571             }
5572          }
5573          program { name: "icon_hide";
5574             signal: "elm,state,icon,hidden";
5575             source: "elm";
5576             action: STATE_SET "default" 0.0;
5577             target: "elm.swallow.content";
5578             target: "padding_icon_text";
5579          }
5580          program { name: "disable";
5581             signal: "elm,state,disabled";
5582             source: "elm";
5583             action: STATE_SET "disabled" 0.0;
5584             target: "button_image";
5585             target: "disabler";
5586             after: "disable_text";
5587          }
5588          program { name: "disable_text";
5589             script {
5590                new st[31];
5591                new Float:vl;
5592                get_state(PART:"elm.text", st, 30, vl);
5593                if (!strcmp(st, "visible"))
5594                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5595                else
5596                  set_state(PART:"elm.text", "disabled", 0.0);
5597                set_int(button_state, BUTTON_STATE_DISABLED);
5598             }
5599          }
5600          program { name: "enable";
5601             signal: "elm,state,enabled";
5602             source: "elm";
5603             action: STATE_SET "default" 0.0;
5604             target: "button_image";
5605             target: "disabler";
5606             after: "enable_text";
5607          }
5608          program { name: "enable_text";
5609             script {
5610                new st[31];
5611                new Float:vl;
5612                get_state(PART:"elm.text", st, 30, vl);
5613                if (!strcmp(st, "disabled_visible"))
5614                  set_state(PART:"elm.text", "visible", 0.0);
5615                else
5616                  set_state(PART:"elm.text", "default", 0.0);
5617                set_int(button_state, BUTTON_STATE_ENABLED);
5618             }
5619          }
5620          program { name: "focused";
5621             //signal: "elm,action,focus";
5622             //source: "elm";
5623             action: STATE_SET "focused" 0.0;
5624             target: "button_image";
5625             target: "elm.text";
5626          }
5627          program { name: "unfocused";
5628             //signal: "elm,action,unfocus";
5629             //source: "elm";
5630             action: STATE_SET "default" 0.0;
5631             target: "button_image";
5632             after: "unfocus_text";
5633          }
5634          program { name: "unfocus_text";
5635             action: STATE_SET "visible" 0.0;
5636             target: "elm.text";
5637          }
5638       }
5639    }
5640
5641 ///////////////////////////////////////////////////////////////////////////////////////
5642    group { name: "elm/button/base/default";
5643       alias: "elm/button/base/searchbar/default";
5644       images {
5645          image: "00_button_01_normal.png" COMP;
5646          image: "00_button_01_normal_press.png" COMP;
5647          image: "00_button_01_normal_dim.png" COMP;
5648          image: "00_button_01_normal_Focus.png" COMP;
5649       }
5650       script {
5651          public button_state = BUTTON_STATE_ENABLED;
5652       }
5653       parts {
5654          part { name: "button_image";
5655             scale: 1;
5656             description { state: "default" 0.0;
5657                min: BUTTON_DEFAULT_STYLE_BG_MIN_INC;
5658                image {
5659                   normal: "00_button_01_normal.png";
5660                   border: BUTTON_DEFAULT_STYLE_BG_BORDER_INC;
5661                   border_scale: 1;
5662                }
5663             }
5664             description { state: "clicked" 0.0;
5665                inherit: "default" 0.0;
5666                image.normal: "00_button_01_normal_press.png";
5667             }
5668             description { state: "disabled" 0.0;
5669                inherit: "default" 0.0;
5670                image.normal: "00_button_01_normal_dim.png";
5671             }
5672             description { state: "focused" 0.0;
5673                inherit: "default" 0.0;
5674                image.normal: "00_button_01_normal_Focus.png";
5675             }
5676          }
5677          part { name: "padding_left_top";
5678             type: RECT;
5679             scale: 1;
5680             mouse_events: 0;
5681             description { state: "default" 0.0;
5682                align: 0.0 0.0;
5683                rel2.relative: 0.0 0.0;
5684                min: BUTTON_DEFAULT_STYLE_PADDING_MIN_INC;
5685                fixed: 1 1;
5686                visible: 0;
5687             }
5688          }
5689          part { name: "padding_right_bottom";
5690             type: RECT;
5691             scale: 1;
5692             mouse_events: 0;
5693             description { state: "default" 0.0;
5694                align: 1.0 1.0;
5695                rel1.relative: 1.0 1.0;
5696                min: BUTTON_DEFAULT_STYLE_PADDING_MIN_INC;
5697                fixed: 1 1;
5698                visible: 0;
5699             }
5700          }
5701          part { name: "padding_icon_text";
5702             type: RECT;
5703             scale: 1;
5704             mouse_events: 0;
5705             description { state: "default" 0.0; //when only icon or no icon is there
5706                align: 0.0 0.0;
5707                visible: 0;
5708                rel1 {
5709                   relative: 1.0 0.0;
5710                   to: "elm.swallow.content";
5711                }
5712                rel2.to: "elm.swallow.content";
5713                fixed: 1 0;
5714                min: 0 0;
5715             }
5716             description { state: "icononly" 0.0;
5717                inherit: "default" 0.0;
5718             }
5719             description { state: "visible" 0.0; //when icon is visible
5720                inherit: "default" 0.0;
5721                min: BUTTON_DEFAULT_STYLE_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
5722             }
5723          }
5724          part { name: "elm.swallow.content";
5725             type: SWALLOW;
5726             scale: 1;
5727             clip_to: "clipper";
5728             description { state: "default" 0.0;
5729                visible: 0;
5730                align: 0.0 0.5;
5731                rel1 {
5732                   relative: 1.0 1.0;
5733                   to: "padding_left_top";
5734                }
5735                rel2 {
5736                   relative: 1.0 0.0;
5737                   to_x: "padding_left_top";
5738                   to_y: "padding_right_bottom";
5739                }
5740                fixed: 1 0;
5741             }
5742             description { state: "visible" 0.0;
5743                fixed: 1 0;
5744                align: 0.0 0.5;
5745                rel1 {
5746                   relative: 1.0 1.0;
5747                   to: "padding_left_top";
5748                }
5749                rel2 {
5750                   relative: 1.0 0.0;
5751                   to_x: "padding_left_top";
5752                   to_y: "padding_right_bottom";
5753                }
5754                aspect: 1.0 1.0;
5755                aspect_preference: VERTICAL;
5756             }
5757             description { state: "icononly" 0.0;
5758                min: BUTTON_DEFAULT_STYLE_ICONONLY_ICON_MIN_INC;
5759                rel1 {
5760                   relative: 1.0 0.0;
5761                   to_x: "padding_left_top";
5762                }
5763                rel2 {
5764                   relative: 0.0 1.0;
5765                   to_x: "padding_right_bottom";
5766                }
5767                aspect: 1.0 1.0;
5768                aspect_preference: VERTICAL;
5769             }
5770          }
5771          part { name: "elm.text";
5772             type: TEXT;
5773             mouse_events: 0;
5774             scale: 1;
5775             clip_to: "clipper";
5776             description { state: "default" 0.0;
5777                visible: 0;
5778                align: 0.0 0.5;
5779                rel1 {
5780                   relative: 1.0 1.0;
5781                   to_x: "padding_icon_text";
5782                   to_y: "padding_left_top";
5783                }
5784                rel2 {
5785                   relative: 0.0 0.0;
5786                   to: "padding_right_bottom";
5787                }
5788                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_NORMAL_COLOR_INC;
5789                text {
5790                   font: "SLP:style=Medium";
5791                   size: BUTTON_DEFAULT_STYLE_FONT_SIZE_INC;
5792                   min: 0 0;
5793                   text_class: "slp_medium";
5794                }
5795             }
5796             description { state: "visible" 0.0;
5797                inherit: "default" 0.0;
5798                visible: 1;
5799                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
5800             }
5801             description { state: "clicked" 0.0;
5802                inherit: "default" 0.0;
5803                visible: 1;
5804                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
5805                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_PRESSED_COLOR_INC;
5806             }
5807             description { state: "disabled" 0.0;
5808                inherit: "default" 0.0;
5809             }
5810             description { state: "disabled_visible" 0.0;
5811                inherit: "default" 0.0;
5812                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_DISABLED_COLOR_INC;
5813                visible: 1;
5814                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
5815             }
5816             description { state: "focused" 0.0;
5817                inherit: "default" 0.0;
5818                visible: 1;
5819                min: 0 0;
5820                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_FOCUSED_COLOR_INC;
5821             }
5822          }
5823          part { name: "over2";
5824             type: RECT;
5825             repeat_events: 1;
5826             ignore_flags: ON_HOLD;
5827             description { state: "default" 0.0;
5828                color: 0 0 0 0;
5829             }
5830          }
5831          part { name: "over3";
5832             type: RECT;
5833             repeat_events: 1;
5834             description { state: "default" 0.0;
5835                color: 0 0 0 0;
5836             }
5837          }
5838          part { name: "clipper";
5839             type: RECT;
5840             description { state: "default" 0.0;
5841                color: 255 255 255 255;
5842             }
5843          }
5844          part { name: "disabler";
5845             type: RECT;
5846             description { state: "default" 0.0;
5847                color: 0 0 0 0;
5848                visible: 0;
5849             }
5850             description { state: "disabled" 0.0;
5851                inherit: "default" 0.0;
5852                visible: 1;
5853             }
5854          }
5855       }
5856       programs {
5857          program { name: "button_click";
5858             signal: "mouse,down,1";
5859             source: "over2";
5860             action: SIGNAL_EMIT "elm,action,press" "";
5861             after: "button_click_anim";
5862          }
5863          program { name: "button_click_anim";
5864             action: STATE_SET "clicked" 0.0;
5865             target: "button_image";
5866             after: "text_clicked";
5867          }
5868          program { name: "text_clicked";
5869             script {
5870                new st[31];
5871                new Float:vl;
5872                get_state(PART:"elm.text", st, 30, vl);
5873                if (!strcmp(st, "visible"))
5874                  set_state(PART:"elm.text", "clicked", 0.0);
5875             }
5876          }
5877          program { name: "button_unpress";
5878             action: SIGNAL_EMIT "elm,action,unpress" "";
5879          }
5880          program { name: "button_mouseout_clicked";
5881             signal: "mouse,up,1";
5882             source: "over3";
5883             script {
5884                new st[31];
5885                new Float:vl;
5886                get_state(PART:"elm.swallow.content", st, 30, vl);
5887                if (strcmp(st, "icononly"))
5888                  {
5889                     emit("elm,action,default,text,set", "");
5890                     set_state(PART:"elm.text", "visible", 0.0);
5891                  }
5892                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5893                  set_state(PART:"button_image", "default", 0.0);
5894             }
5895             after: button_unpress;
5896          }
5897          program { name: "touch_snd";
5898             signal: "mouse,clicked,1";
5899             source: "over2";
5900             action: PLAY_SAMPLE "touch_sound" 1.0;
5901             after: button_unclick3;
5902          }
5903          program { name: "button_unclick3";
5904             action: SIGNAL_EMIT "elm,action,click" "";
5905          }
5906          program { name: "text_show";
5907             signal: "elm,state,text,visible";
5908             source: "elm";
5909             script {
5910                new st[31];
5911                new Float:vl;
5912                get_state(PART:"elm.swallow.content", st, 30, vl);
5913                if (!strcmp(st, "icononly"))
5914                  {
5915                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5916                     set_state(PART:"padding_icon_text", "visible", 0.0);
5917                  }
5918                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5919                  set_state(PART:"elm.text", "visible", 0.0);
5920                else
5921                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5922             }
5923          }
5924          program { name: "text_hide";
5925             signal: "elm,state,text,hidden";
5926             source: "elm";
5927             script {
5928                new st[31];
5929                new Float:vl;
5930                get_state(PART:"elm.swallow.content", st, 30, vl);
5931                if (!strcmp(st, "visible"))
5932                  {
5933                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5934                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5935                  }
5936                set_state(PART:"elm.text", "default", 0.0);
5937             }
5938          }
5939          program { name: "icon_show";
5940             signal: "elm,state,icon,visible";
5941             source: "elm";
5942             script {
5943                new st[31];
5944                new Float:vl;
5945                get_state(PART:"elm.text", st, 30, vl);
5946                if (!strcmp(st, "visible"))
5947                  {
5948                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5949                     set_state(PART:"padding_icon_text", "visible", 0.0);
5950                  }
5951                else
5952                  {
5953                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5954                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5955                  }
5956             }
5957          }
5958          program { name: "icon_hide";
5959             signal: "elm,state,icon,hidden";
5960             source: "elm";
5961             action: STATE_SET "default" 0.0;
5962             target: "elm.swallow.content";
5963             target: "padding_icon_text";
5964          }
5965          program { name: "disable";
5966             signal: "elm,state,disabled";
5967             source: "elm";
5968             action: STATE_SET "disabled" 0.0;
5969             target: "button_image";
5970             target: "disabler";
5971             after: "disable_text";
5972          }
5973          program { name: "disable_text";
5974             script {
5975                new st[31];
5976                new Float:vl;
5977                get_state(PART:"elm.text", st, 30, vl);
5978                if (!strcmp(st, "visible"))
5979                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5980                else
5981                  set_state(PART:"elm.text", "disabled", 0.0);
5982                set_int(button_state, BUTTON_STATE_DISABLED);
5983             }
5984          }
5985          program { name: "enable";
5986             signal: "elm,state,enabled";
5987             source: "elm";
5988             action: STATE_SET "default" 0.0;
5989             target: "button_image";
5990             target: "disabler";
5991             after: "enable_text";
5992          }
5993          program { name: "enable_text";
5994             script {
5995                new st[31];
5996                new Float:vl;
5997                get_state(PART:"elm.text", st, 30, vl);
5998                if (!strcmp(st, "disabled_visible"))
5999                  set_state(PART:"elm.text", "visible", 0.0);
6000                else
6001                  set_state(PART:"elm.text", "default", 0.0);
6002                set_int(button_state, BUTTON_STATE_ENABLED);
6003             }
6004          }
6005          program { name: "focused";
6006             //signal: "elm,action,focus";
6007             //source: "elm";
6008             action: STATE_SET "focused" 0.0;
6009             target: "button_image";
6010             target: "elm.text";
6011          }
6012          program { name: "unfocused";
6013             //signal: "elm,action,unfocus";
6014             //source: "elm";
6015             action: STATE_SET "default" 0.0;
6016             target: "button_image";
6017             after: "unfocus_text";
6018          }
6019          program { name: "unfocus_text";
6020             action: STATE_SET "visible" 0.0;
6021             target: "elm.text";
6022          }
6023       }
6024    }
6025
6026 ///////////////////////////////////////////////////////////////////////////////////////
6027 #define BUTTON_COLORSELECTOR_STYLES(style_name, image_normal, image_press,image_disable) \
6028    group { name: "elm/button/base/"style_name; \
6029       images { \
6030          image: image_normal COMP; \
6031          image: image_press COMP; \
6032          image: image_disable COMP; \
6033          image: "00_button_01_normal.png" COMP; \
6034          image: "00_button_01_normal_press.png" COMP; \
6035          image: "00_button_01_normal_dim.png" COMP; \
6036          image: "00_button_01_normal_Focus.png" COMP; \
6037       } \
6038       parts { \
6039          part { name: "button_image"; \
6040             scale: 1; \
6041             description { state: "default" 0.0; \
6042                min: BUTTON_COLORSELECTOR_BG_DEFAULT_MIN_INC; \
6043                max: BUTTON_COLORSELECTOR_BG_DEFAULT_MIN_INC; \
6044                image { \
6045                   normal: "00_button_01_normal.png"; \
6046                   border: BUTTON_COLORSELECTOR_BG_BORDER_INC; \
6047                   border_scale: 1; \
6048                } \
6049             } \
6050             description { \
6051                state: "clicked" 0.0; \
6052                inherit: "default" 0.0; \
6053                image.normal: "00_button_01_normal_press.png"; \
6054             } \
6055             description { \
6056                state: "disabled" 0.0; \
6057                inherit: "default" 0.0; \
6058                image.normal: "00_button_01_normal_dim.png"; \
6059             } \
6060             description { \
6061                state: "focused" 0.0; \
6062                inherit: "default" 0.0; \
6063                image.normal: "00_button_01_normal_Focus.png"; \
6064             } \
6065          } \
6066          part { name: "button_center_part"; \
6067             scale: 1; \
6068             description { state: "default" 0.0; \
6069                min: BUTTON_COLORSELECTOR_IMAGE_MIN_MAX_INC; \
6070                max: BUTTON_COLORSELECTOR_IMAGE_MIN_MAX_INC; \
6071                image.normal: image_normal; \
6072             } \
6073             description { \
6074                state: "clicked" 0.0; \
6075                inherit: "default" 0.0; \
6076                image.normal: image_press; \
6077             } \
6078             description { \
6079                state: "disabled" 0.0; \
6080                inherit: "default" 0.0; \
6081                image.normal: image_disable; \
6082             } \
6083          } \
6084          part { name: "over1"; \
6085             type: RECT; \
6086             ignore_flags: ON_HOLD; \
6087             description { state: "default" 0.0; \
6088                color: 0 0 0 0; \
6089             } \
6090          } \
6091          part { name: "over2"; \
6092             repeat_events: 1; \
6093             description { state: "default" 0.0; \
6094                color: 0 0 0 0; \
6095             } \
6096          } \
6097          part { name: "disabler"; \
6098             type: RECT; \
6099             description { state: "default" 0.0; \
6100                color: 0 0 0 0; \
6101                visible: 0; \
6102             } \
6103             description { state: "disabled" 0.0; \
6104                inherit: "default" 0.0; \
6105                visible: 1; \
6106             } \
6107          } \
6108       } \
6109       programs { \
6110          program { name: "button_click"; \
6111             signal: "mouse,down,1"; \
6112             source: "over1"; \
6113             action: SIGNAL_EMIT "elm,action,press" ""; \
6114             after: "button_click_anim"; \
6115          } \
6116          program { name: "button_click_anim"; \
6117             action: STATE_SET "clicked" 0.0; \
6118             target: "button_image"; \
6119             target: "button_center_part"; \
6120          } \
6121          program { name: "button_unclick"; \
6122             signal: "mouse,up,1"; \
6123             source: "over2"; \
6124             action: SIGNAL_EMIT "elm,action,unpress" ""; \
6125             after: "button_unclick_anim"; \
6126          } \
6127          program { name: "button_unclick_anim"; \
6128             action: STATE_SET "default" 0.0; \
6129             target: "button_image"; \
6130             target: "button_center_part"; \
6131          } \
6132          program { name: "touch_snd"; \
6133             signal: "mouse,clicked,1"; \
6134             source: "over1"; \
6135             action: PLAY_SAMPLE "touch_sound" 1.0; \
6136             after: button_unclick3; \
6137          } \
6138          program { name: "button_unclick3"; \
6139             action: SIGNAL_EMIT "elm,action,click" ""; \
6140          } \
6141          program { name: "disable"; \
6142             signal: "elm,state,disabled"; \
6143             source: "elm"; \
6144             action: STATE_SET "disabled" 0.0; \
6145             target: "disabler"; \
6146             target: "button_image"; \
6147             target: "button_center_part"; \
6148          } \
6149          program { name: "enable"; \
6150             signal: "elm,state,enabled"; \
6151             source: "elm"; \
6152             action: STATE_SET "default" 0.0; \
6153             target: "disabler"; \
6154             target: "button_image"; \
6155             target: "button_center_part"; \
6156          } \
6157       } \
6158    }
6159 ///////////////////////////////////////////////////////////////////////////////////////
6160    BUTTON_COLORSELECTOR_STYLES("colorselector/left/default", "00_color_picker_btn_left.png", "00_color_picker_btn_left_press.png", "00_color_picker_btn_left_dim.png")
6161 ///////////////////////////////////////////////////////////////////////////////////////
6162    BUTTON_COLORSELECTOR_STYLES("colorselector/right/default", "00_color_picker_btn_right.png", "00_color_picker_btn_right_press.png", "00_color_picker_btn_right_dim.png")
6163 ///////////////////////////////////////////////////////////////////////////////////////
6164    group { name: "elm/button/base/hidden";
6165       images {
6166          image: "00_button_sweep.png" COMP;
6167          image: "00_button_sweep_press.png" COMP;
6168          image: "00_button_sweep_focus.png" COMP;
6169          image: "00_button_sweep_dim.png" COMP;
6170       }
6171       script {
6172          public button_state = BUTTON_STATE_ENABLED;
6173       }
6174       parts {
6175          part { name: "button_image";
6176             scale: 1;
6177             description { state: "default" 0.0;
6178                min: BUTTON_HIDDEN_BG_NORMAL_MIN_INC;
6179                image {
6180                   normal: "00_button_sweep.png";
6181                   border: BUTTON_HIDDEN_BG_BORDER_INC;
6182                   border_scale: 1;
6183                }
6184             }
6185             description { state: "clicked" 0.0;
6186                inherit: "default" 0.0;
6187                image.normal: "00_button_sweep_press.png";
6188             }
6189             description { state: "disabled" 0.0;
6190                inherit: "default" 0.0;
6191                image.normal: "00_button_sweep_dim.png";
6192             }
6193             description { state: "focused" 0.0;
6194                inherit: "default" 0.0;
6195                image.normal: "00_button_sweep_focus.png";
6196             }
6197          }
6198          part { name: "padding_left_top";
6199             type: RECT;
6200             scale: 1;
6201             mouse_events: 0;
6202             description { state: "default" 0.0;
6203                align: 0.0 0.0;
6204                rel2.relative: 0.0 0.0;
6205                min: BUTTON_HIDDEN_PADDING_MIN_INC;
6206                fixed: 1 1;
6207                visible: 0;
6208             }
6209          }
6210          part { name: "padding_right_bottom";
6211             type: RECT;
6212             scale: 1;
6213             mouse_events: 0;
6214             description { state: "default" 0.0;
6215                align: 1.0 1.0;
6216                rel1.relative: 1.0 1.0;
6217                min: BUTTON_HIDDEN_PADDING_MIN_INC;
6218                fixed: 1 1;
6219                visible: 0;
6220             }
6221          }
6222          part { name: "icon_rect";
6223             type: RECT;
6224             scale: 1;
6225             mouse_events: 0;
6226             description { state: "default" 0.0;
6227                min: BUTTON_HIDDEN_ICON_RECT_MIN_INC;
6228                fixed: 1 0;
6229                rel1 {
6230                   relative: 0.0 1.0;
6231                   to_x: "elm.swallow.content";
6232                   to_y: "padding_left_top";
6233                }
6234                rel2 {
6235                   relative: 1.0 0.0;
6236                   to_x: "elm.swallow.content";
6237                   to_y: "padding_right_bottom";
6238                }
6239                align: 0.0 0.5;
6240                color: 0 0 0 0;
6241             }
6242          }
6243          part { name: "padding_icon_text";
6244             type: RECT;
6245             scale: 1;
6246             mouse_events: 0;
6247             description { state: "default" 0.0; //when only icon or no icon is there
6248                align: 0.0 0.0;
6249                rel1 {
6250                   relative: 1.0 0.0;
6251                   to: "icon_rect";
6252                }
6253                rel2.to: "icon_rect";
6254                fixed: 1 0;
6255                min: 0 0;
6256                color: 0 0 0 0;
6257             }
6258             description { state: "icononly" 0.0;
6259                inherit: "default" 0.0;
6260             }
6261             description { state: "visible" 0.0; //when icon is visible
6262                align: 0.0 0.0;
6263                rel1 {
6264                   relative: 1.0 0.0;
6265                   to: "icon_rect";
6266                }
6267                rel2.to: "icon_rect";
6268                fixed: 1 0;
6269                min: BUTTON_HIDDEN_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
6270                color: 0 0 0 0;
6271             }
6272          }
6273          part { name: "elm.swallow.content";
6274             type: SWALLOW;
6275             scale: 1;
6276             clip_to: "clipper";
6277             description { state: "default" 0.0;
6278                visible: 0;
6279                align: 0.0 0.5;
6280                rel1 {
6281                   relative: 1.0 1.0;
6282                   to: "padding_left_top";
6283                }
6284                rel2 {
6285                   relative: 1.0 0.0;
6286                   to_x: "padding_left_top";
6287                   to_y: "padding_right_bottom";
6288                }
6289                fixed: 1 0;
6290             }
6291             description { state: "visible" 0.0;
6292                fixed: 1 0;
6293                align: 0.0 0.5;
6294                rel1 {
6295                   relative: 1.0 1.0;
6296                   to: "padding_left_top";
6297                }
6298                rel2 {
6299                   relative: 1.0 0.0;
6300                   to_x: "padding_left_top";
6301                   to_y: "padding_right_bottom";
6302                }
6303                aspect: 1.0 1.0;
6304                aspect_preference: VERTICAL;
6305             }
6306             description { state: "icononly" 0.0;
6307                min: BUTTON_HIDDEN_ICON_ICONONLY_MIN_INC;
6308                rel1 {
6309                   relative: 1.0 1.0;
6310                   to: "padding_left_top";
6311                }
6312                rel2 {
6313                   relative: 1.0 0.0;
6314                   to_x: "padding_left_top";
6315                   to_y: "padding_right_bottom";
6316                }
6317                aspect: 1.0 1.0;
6318                aspect_preference: VERTICAL;
6319             }
6320          }
6321          part { name: "elm.text";
6322             type: TEXT;
6323             mouse_events: 0;
6324             scale: 1;
6325             clip_to: "clipper";
6326             description { state: "default" 0.0;
6327                visible: 0;
6328                rel1 {
6329                   relative: 1.0 1.0;
6330                   to_x: "padding_icon_text";
6331                   to_y: "padding_left_top";
6332                }
6333                rel2 {
6334                   relative: 0.0 0.0;
6335                   to: "padding_right_bottom";
6336                }
6337                color: BUTTON_HIDDEN_BUTTON_TEXT_NORMAL_COLOR_INC;
6338                text {
6339                   font: "SLP:style=Medium";
6340                   size: BUTTON_HIDDEN_FONT_SIZE_INC;
6341                   min: 0 0;
6342                   text_class: "slp_medium";
6343                }
6344             }
6345             description { state: "visible" 0.0;
6346                inherit: "default" 0.0;
6347                visible: 1;
6348                min: BUTTON_HIDDEN_TEXT_MIN_INC;
6349             }
6350             description { state: "clicked" 0.0;
6351                inherit: "default" 0.0;
6352                visible: 1;
6353                min: 0 0;
6354                color: BUTTON_HIDDEN_BUTTON_TEXT_PRESSED_COLOR_INC;
6355             }
6356             description { state: "disabled" 0.0;
6357                inherit: "default" 0.0;
6358                color: 0 0 0 128;
6359             }
6360             description { state: "disabled_visible" 0.0;
6361                inherit: "default" 0.0;
6362                color: BUTTON_HIDDEN_BUTTON_TEXT_DISABLED_COLOR_INC;
6363                visible: 1;
6364                min: BUTTON_HIDDEN_TEXT_MIN_INC;
6365             }
6366             description { state: "focused" 0.0;
6367                inherit: "default" 0.0;
6368                visible: 1;
6369                min: 0 0;
6370                color: BUTTON_HIDDEN_BUTTON_TEXT_FOCUSED_COLOR_INC;
6371             }
6372          }
6373          part { name: "over2";
6374             type: RECT;
6375             repeat_events: 1;
6376             ignore_flags: ON_HOLD;
6377             description { state: "default" 0.0;
6378                color: 0 0 0 0;
6379             }
6380          }
6381          part { name: "over3";
6382             type: RECT;
6383             repeat_events: 1;
6384             description { state: "default" 0.0;
6385                color: 0 0 0 0;
6386             }
6387          }
6388          part { name: "clipper";
6389             type: RECT;
6390             description { state: "default" 0.0;
6391                color: 255 255 255 255;
6392             }
6393          }
6394          part { name: "disabler";
6395             type: RECT;
6396             description { state: "default" 0.0;
6397                color: 0 0 0 0;
6398                visible: 0;
6399             }
6400             description { state: "disabled" 0.0;
6401                inherit: "default" 0.0;
6402                visible: 1;
6403             }
6404          }
6405       }
6406       programs {
6407          program { name: "button_click";
6408             signal: "mouse,down,1";
6409             source: "over2";
6410             action: SIGNAL_EMIT "elm,action,press" "";
6411             after: "button_click_anim";
6412          }
6413          program { name: "button_click_anim";
6414             action: STATE_SET "clicked" 0.0;
6415             target: "button_image";
6416             after: "text_clicked";
6417          }
6418          program { name: "text_clicked";
6419             script {
6420                new st[31];
6421                new Float:vl;
6422                get_state(PART:"elm.text", st, 30, vl);
6423                if (!strcmp(st, "visible"))
6424                  set_state(PART:"elm.text", "clicked", 0.0);
6425             }
6426          }
6427          program { name: "button_unpress";
6428             action: SIGNAL_EMIT "elm,action,unpress" "";
6429          }
6430          program { name: "button_mouseout_clicked";
6431             signal: "mouse,up,1";
6432             source: "over3";
6433             script {
6434                new st[31];
6435                new Float:vl;
6436                get_state(PART:"elm.swallow.content", st, 30, vl);
6437                if (strcmp(st, "icononly"))
6438                  {
6439                     emit("elm,action,default,text,set", "");
6440                     set_state(PART:"elm.text", "visible", 0.0);
6441                  }
6442                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6443                  set_state(PART:"button_image", "default", 0.0);
6444             }
6445             after: button_unpress;
6446          }
6447          program { name: "touch_snd";
6448             signal: "mouse,clicked,1";
6449             source: "over2";
6450             action: PLAY_SAMPLE "touch_sound" 1.0;
6451             after: button_unclick3;
6452          }
6453          program { name: "button_unclick3";
6454             action: SIGNAL_EMIT "elm,action,click" "";
6455          }
6456          program { name: "text_show";
6457             signal: "elm,state,text,visible";
6458             source: "elm";
6459             script {
6460                new st[31];
6461                new Float:vl;
6462                get_state(PART:"elm.swallow.content", st, 30, vl);
6463                if (!strcmp(st, "icononly"))
6464                  {
6465                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6466                     set_state(PART:"padding_icon_text", "visible", 0.0);
6467                  }
6468                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6469                  set_state(PART:"elm.text", "visible", 0.0);
6470                else
6471                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6472             }
6473          }
6474          program { name: "text_hide";
6475             signal: "elm,state,text,hidden";
6476             source: "elm";
6477             script {
6478                new st[31];
6479                new Float:vl;
6480                get_state(PART:"elm.swallow.content", st, 30, vl);
6481                if (!strcmp(st, "visible"))
6482                  {
6483                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6484                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6485                  }
6486                set_state(PART:"elm.text", "default", 0.0);
6487             }
6488          }
6489          program { name: "icon_show";
6490             signal: "elm,state,icon,visible";
6491             source: "elm";
6492             script {
6493                new st[31];
6494                new Float:vl;
6495                get_state(PART:"elm.text", st, 30, vl);
6496                if (!strcmp(st, "visible"))
6497                  {
6498                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6499                     set_state(PART:"padding_icon_text", "visible", 0.0);
6500                  }
6501                else
6502                  {
6503                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6504                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6505                  }
6506             }
6507          }
6508          program { name: "icon_hide";
6509             signal: "elm,state,icon,hidden";
6510             source: "elm";
6511             action: STATE_SET "default" 0.0;
6512             target: "elm.swallow.content";
6513             target: "padding_icon_text";
6514          }
6515          program { name: "disable";
6516             signal: "elm,state,disabled";
6517             source: "elm";
6518             action: STATE_SET "disabled" 0.0;
6519             target: "button_image";
6520             target: "disabler";
6521             after: "disable_text";
6522          }
6523          program { name: "disable_text";
6524             script {
6525                new st[31];
6526                new Float:vl;
6527                get_state(PART:"elm.text", st, 30, vl);
6528                if (!strcmp(st, "visible"))
6529                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6530                else
6531                  set_state(PART:"elm.text", "disabled", 0.0);
6532                set_int(button_state, BUTTON_STATE_DISABLED);
6533             }
6534          }
6535          program { name: "enable";
6536             signal: "elm,state,enabled";
6537             source: "elm";
6538             action: STATE_SET "default" 0.0;
6539             target: "button_image";
6540             target: "disabler";
6541             after: "enable_text";
6542          }
6543          program { name: "enable_text";
6544             script {
6545                new st[31];
6546                new Float:vl;
6547                get_state(PART:"elm.text", st, 30, vl);
6548                if (!strcmp(st, "disabled_visible"))
6549                  set_state(PART:"elm.text", "visible", 0.0);
6550                else
6551                  set_state(PART:"elm.text", "default", 0.0);
6552                set_int(button_state, BUTTON_STATE_ENABLED);
6553             }
6554          }
6555          program { name: "focused";
6556             //signal: "elm,action,focus";
6557             //source: "elm";
6558             action: STATE_SET "focused" 0.0;
6559             target: "button_image";
6560             target: "elm.text";
6561          }
6562          program { name: "unfocused";
6563             //signal: "elm,action,unfocus";
6564             //source: "elm";
6565             action: STATE_SET "default" 0.0;
6566             target: "button_image";
6567             after: "unfocus_text";
6568          }
6569          program { name: "unfocus_text";
6570             action: STATE_SET "visible" 0.0;
6571             target: "elm.text";
6572          }
6573       }
6574    }
6575
6576 ///////////////////////////////////////////////////////////////////////////////////////
6577    group { name: "elm/button/base/picker/bar/default";
6578       images {
6579          image: "00_picker_btn_normal.png" COMP;
6580          image: "00_picker_btn_press.png" COMP;
6581          image: "00_picker_btn_normal_focus.png" COMP;
6582       }
6583       script {
6584          public button_state = BUTTON_STATE_ENABLED;
6585       }
6586       parts {
6587          part { name: "button_image";
6588             scale: 1;
6589             description { state: "default" 0.0;
6590                min: BUTTON_PICKER_BAR_DEFAULT_BG_DEFAULT_MIN_INC;
6591                image {
6592                   normal: "00_picker_btn_normal.png";
6593                   border: BUTTON_PICKER_BAR_DEFAULT_BG_DEFAULT_IMAGE_BORDER_INC;
6594                   border_scale: 1;
6595                }
6596             }
6597             description { state: "clicked" 0.0;
6598                inherit: "default" 0.0;
6599                image.normal: "00_picker_btn_press.png";
6600             }
6601             description { state: "disabled" 0.0;
6602                inherit: "default" 0.0;
6603             }
6604             description { state: "focused" 0.0;
6605                inherit: "default" 0.0;
6606                image.normal: "00_picker_btn_normal_focus.png";
6607             }
6608          }
6609          part { name: "padding_left_top";
6610             type: RECT;
6611             scale: 1;
6612             mouse_events: 0;
6613             description { state: "default" 0.0;
6614                align: 0.0 0.0;
6615                rel2.relative: 0.0 0.0;
6616                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_MIN_INC;
6617                fixed: 1 1;
6618                visible: 0;
6619             }
6620          }
6621          part { name: "padding_right_bottom";
6622             type: RECT;
6623             scale: 1;
6624             mouse_events: 0;
6625             description { state: "default" 0.0;
6626                align: 1.0 1.0;
6627                rel1.relative: 1.0 1.0;
6628                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_MIN_INC;
6629                fixed: 1 1;
6630                visible: 0;
6631             }
6632          }
6633          part { name: "icon_rect";
6634             type: RECT;
6635             scale: 1;
6636             mouse_events: 0;
6637             description { state: "default" 0.0;
6638                min: BUTTON_PICKER_BAR_DEFAULT_ICON_RECT_DEFAULT_MIN_INC;
6639                fixed: 1 0;
6640                rel1 {
6641                   relative: 0.0 1.0;
6642                   to_x: "elm.swallow.content";
6643                   to_y: "padding_left_top";
6644                }
6645                rel2 {
6646                   relative: 1.0 0.0;
6647                   to_x: "elm.swallow.content";
6648                   to_y: "padding_right_bottom";
6649                }
6650                align: 0.0 0.5;
6651                color: 0 0 0 0;
6652             }
6653          }
6654          part { name: "padding_icon_text";
6655             type: RECT;
6656             scale: 1;
6657             mouse_events: 0;
6658             description { state: "default" 0.0; //when only icon or no icon is there
6659                align: 0.0 0.0;
6660                rel1 {
6661                   relative: 1.0 0.0;
6662                   to: "icon_rect";
6663                }
6664                rel2.to: "icon_rect";
6665                fixed: 1 0;
6666                min: 0 0;
6667                color: 0 0 0 0;
6668             }
6669             description { state: "icononly" 0.0;
6670                inherit: "default" 0.0;
6671             }
6672             description { state: "visible" 0.0; //when icon is visible
6673                align: 0.0 0.0;
6674                rel1 {
6675                   relative: 1.0 0.0;
6676                   to: "icon_rect";
6677                }
6678                rel2.to: "icon_rect";
6679                fixed: 1 0;
6680                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_ICON_RECT_TEXT_MIN_INC;
6681                color: 0 0 0 0;
6682             }
6683          }
6684          part { name: "elm.swallow.content";
6685             type: SWALLOW;
6686             scale: 1;
6687             clip_to: "clipper";
6688             description { state: "default" 0.0;
6689                visible: 0;
6690                align: 0.0 0.5;
6691                rel1 {
6692                   relative: 1.0 1.0;
6693                   to: "padding_left_top";
6694                }
6695                rel2 {
6696                   relative: 1.0 0.0;
6697                   to_x: "padding_left_top";
6698                   to_y: "padding_right_bottom";
6699                }
6700                fixed: 1 0;
6701             }
6702             description { state: "visible" 0.0;
6703                fixed: 1 0;
6704                align: 0.0 0.5;
6705                rel1 {
6706                   relative: 1.0 1.0;
6707                   to: "padding_left_top";
6708                }
6709                rel2 {
6710                   relative: 1.0 0.0;
6711                   to_x: "padding_left_top";
6712                   to_y: "padding_right_bottom";
6713                }
6714                aspect: 1.0 1.0;
6715                aspect_preference: VERTICAL;
6716             }
6717             description { state: "icononly" 0.0;
6718                min: BUTTON_PICKER_BAR_DEFAULT_CONTENT_ICONONLY_MIN_INC;
6719                rel1 {
6720                   relative: 1.0 1.0;
6721                   to: "padding_left_top";
6722                }
6723                rel2 {
6724                   relative: 1.0 0.0;
6725                   to_x: "padding_left_top";
6726                   to_y: "padding_right_bottom";
6727                }
6728                aspect: 1.0 1.0;
6729                aspect_preference: VERTICAL;
6730             }
6731          }
6732          part { name: "elm.text";
6733             type: TEXT;
6734             mouse_events: 0;
6735             scale: 1;
6736             clip_to: "clipper";
6737             description { state: "default" 0.0;
6738                visible: 0;
6739                rel1 {
6740                   relative: 1.0 1.0;
6741                   to_x: "padding_icon_text";
6742                   to_y: "padding_left_top";
6743                }
6744                rel2 {
6745                   relative: 0.0 0.0;
6746                   to: "padding_right_bottom";
6747                }
6748                color: BUTTON_PICKER_TEXT_DEFAULT_COLOR_INC;
6749                text {
6750                   font: "SLP:style=Medium";
6751                   size: BUTTON_PICKER_BAR_DEFAULT_TEXT_FONT_SIZE_INC;
6752                   min: 1 0;
6753                   max: 0 0;
6754                   text_class: "slp_medium";
6755                }
6756             }
6757             description { state: "visible" 0.0;
6758                inherit: "default" 0.0;
6759                visible: 1;
6760                min: BUTTON_PICKER_BAR_DEFAULT_TEXT_VISIBLE_MIN_INC;
6761             }
6762             description { state: "clicked" 0.0;
6763                inherit: "default" 0.0;
6764                visible: 1;
6765                min: 0 0;
6766                color: BUTTON_PICKER_TEXT_CLICKED_COLOR_INC;
6767             }
6768             description { state: "disabled" 0.0;
6769                inherit: "default" 0.0;
6770                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
6771             }
6772             description { state: "disabled_visible" 0.0;
6773                inherit: "default" 0.0;
6774                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
6775                visible: 1;
6776                min: BUTTON_PICKER_BAR_DEFAULT_TEXT_VISIBLE_MIN_INC;
6777             }
6778             description { state: "focused" 0.0;
6779                inherit: "default" 0.0;
6780                visible: 1;
6781                min: 0 0;
6782                color: BUTTON_PICKER_TEXT_FOCUSED_COLOR_INC;
6783             }
6784          }
6785          part { name: "over2";
6786             type: RECT;
6787             repeat_events: 1;
6788             ignore_flags: ON_HOLD;
6789             description { state: "default" 0.0;
6790                color: 0 0 0 0;
6791             }
6792          }
6793          part { name: "over3";
6794             type: RECT;
6795             repeat_events: 1;
6796             description { state: "default" 0.0;
6797                color: 0 0 0 0;
6798             }
6799          }
6800          part { name: "clipper";
6801             type: RECT;
6802             description { state: "default" 0.0;
6803                color: 255 255 255 255;
6804             }
6805          }
6806          part { name: "disabler";
6807             type: RECT;
6808             description { state: "default" 0.0;
6809                color: 0 0 0 0;
6810                visible: 0;
6811             }
6812             description { state: "disabled" 0.0;
6813                inherit: "default" 0.0;
6814                visible: 1;
6815             }
6816          }
6817       }
6818       programs {
6819          program { name: "button_click";
6820             signal: "mouse,down,1";
6821             source: "over2";
6822             action: SIGNAL_EMIT "elm,action,press" "";
6823             after: "button_click_anim";
6824          }
6825          program { name: "button_click_anim";
6826             action: STATE_SET "clicked" 0.0;
6827             target: "button_image";
6828             after: "text_clicked";
6829          }
6830          program { name: "text_clicked";
6831             script {
6832                new st[31];
6833                new Float:vl;
6834                get_state(PART:"elm.text", st, 30, vl);
6835                if (!strcmp(st, "visible"))
6836                  set_state(PART:"elm.text", "clicked", 0.0);
6837             }
6838          }
6839          program { name: "button_unpress";
6840             action: SIGNAL_EMIT "elm,action,unpress" "";
6841          }
6842          program { name: "button_mouseout_clicked";
6843             signal: "mouse,up,1";
6844             source: "over3";
6845             script {
6846                new st[31];
6847                new Float:vl;
6848                get_state(PART:"elm.swallow.content", st, 30, vl);
6849                if (strcmp(st, "icononly"))
6850                  {
6851                     emit("elm,action,default,text,set", "");
6852                     set_state(PART:"elm.text", "visible", 0.0);
6853                  }
6854                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6855                  set_state(PART:"button_image", "default", 0.0);
6856             }
6857             after: button_unpress;
6858          }
6859          program { name: "touch_snd";
6860             signal: "mouse,clicked,1";
6861             source: "over2";
6862             action: PLAY_SAMPLE "touch_sound" 1.0;
6863             after: button_unclick3;
6864          }
6865          program { name: "button_unclick3";
6866             action: SIGNAL_EMIT "elm,action,click" "";
6867          }
6868          program { name: "text_show";
6869             signal: "elm,state,text,visible";
6870             source: "elm";
6871             script {
6872                new st[31];
6873                new Float:vl;
6874                get_state(PART:"elm.swallow.content", st, 30, vl);
6875                if (!strcmp(st, "icononly"))
6876                  {
6877                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6878                     set_state(PART:"padding_icon_text", "visible", 0.0);
6879                  }
6880                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6881                  set_state(PART:"elm.text", "visible", 0.0);
6882                else
6883                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6884             }
6885          }
6886          program { name: "text_hide";
6887             signal: "elm,state,text,hidden";
6888             source: "elm";
6889             script {
6890                new st[31];
6891                new Float:vl;
6892                get_state(PART:"elm.swallow.content", st, 30, vl);
6893                if (!strcmp(st, "visible"))
6894                  {
6895                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6896                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6897                  }
6898                set_state(PART:"elm.text", "default", 0.0);
6899             }
6900          }
6901          program { name: "icon_show";
6902             signal: "elm,state,icon,visible";
6903             source: "elm";
6904             script {
6905                new st[31];
6906                new Float:vl;
6907                get_state(PART:"elm.text", st, 30, vl);
6908                if (!strcmp(st, "visible"))
6909                  {
6910                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6911                     set_state(PART:"padding_icon_text", "visible", 0.0);
6912                  }
6913                else
6914                  {
6915                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6916                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6917                  }
6918             }
6919          }
6920          program { name: "icon_hide";
6921             signal: "elm,state,icon,hidden";
6922             source: "elm";
6923             action: STATE_SET "default" 0.0;
6924             target: "elm.swallow.content";
6925             target: "padding_icon_text";
6926          }
6927          program { name: "disable";
6928             signal: "elm,state,disabled";
6929             source: "elm";
6930             action: STATE_SET "disabled" 0.0;
6931             target: "button_image";
6932             target: "disabler";
6933             after: "disable_text";
6934          }
6935          program { name: "disable_text";
6936             script {
6937                new st[31];
6938                new Float:vl;
6939                get_state(PART:"elm.text", st, 30, vl);
6940                if (!strcmp(st, "visible"))
6941                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6942                else
6943                  set_state(PART:"elm.text", "disabled", 0.0);
6944                set_int(button_state, BUTTON_STATE_DISABLED);
6945             }
6946          }
6947          program { name: "enable";
6948             signal: "elm,state,enabled";
6949             source: "elm";
6950             action: STATE_SET "default" 0.0;
6951             target: "button_image";
6952             target: "disabler";
6953             after: "enable_text";
6954          }
6955          program { name: "enable_text";
6956             script {
6957                new st[31];
6958                new Float:vl;
6959                get_state(PART:"elm.text", st, 30, vl);
6960                if (!strcmp(st, "disabled_visible"))
6961                  set_state(PART:"elm.text", "visible", 0.0);
6962                else
6963                  set_state(PART:"elm.text", "default", 0.0);
6964                set_int(button_state, BUTTON_STATE_ENABLED);
6965             }
6966          }
6967          program { name: "focused";
6968             //signal: "elm,action,focus";
6969             //source: "elm";
6970             action: STATE_SET "focused" 0.0;
6971             target: "button_image";
6972             target: "elm.text";
6973          }
6974          program { name: "unfocused";
6975             //signal: "elm,action,unfocus";
6976             //source: "elm";
6977             action: STATE_SET "default" 0.0;
6978             target: "button_image";
6979             after: "unfocus_text";
6980          }
6981          program { name: "unfocus_text";
6982             action: STATE_SET "visible" 0.0;
6983             target: "elm.text";
6984          }
6985       }
6986    }
6987
6988 ///////////////////////////////////////////////////////////////////////////////////////
6989    group { name: "elm/button/base/picker/prev/text/default";
6990       alias: "elm/button/base/picker/next/text/default";
6991       images {
6992          image: "00_picker_btn_normal.png" COMP;
6993          image: "00_picker_btn_press.png" COMP;
6994          image: "00_picker_btn_normal_focus.png" COMP;
6995       }
6996       script {
6997          public button_state = BUTTON_STATE_ENABLED;
6998       }
6999       parts {
7000          part { name: "button_image";
7001             scale: 1;
7002             description { state: "default" 0.0;
7003                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_BG_DEFAULT_MIN_INC;
7004                image {
7005                   normal: "00_picker_btn_normal.png";
7006                   border: BUTTON_PICKER_PREV_TEXT_DEFAULT_BG_DEFAULT_BORDER_INC;
7007                   border_scale: 1;
7008                }
7009             }
7010             description { state: "clicked" 0.0;
7011                inherit: "default" 0.0;
7012                image.normal: "00_picker_btn_press.png";
7013             }
7014             description { state: "disabled" 0.0;
7015                inherit: "default" 0.0;
7016                color: 0 0 0 128;
7017             }
7018             description { state: "focused" 0.0;
7019                inherit: "default" 0.0;
7020                image.normal: "00_picker_btn_normal_focus.png";
7021             }
7022          }
7023          part { name: "padding_left_top";
7024             type: RECT;
7025             scale: 1;
7026             mouse_events: 0;
7027             description { state: "default" 0.0;
7028                align: 0.0 0.0;
7029                rel2.relative: 0.0 0.0;
7030                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_MIN_INC;
7031                fixed: 1 1;
7032                visible: 0;
7033             }
7034          }
7035          part { name: "padding_right_bottom";
7036             type: RECT;
7037             scale: 1;
7038             mouse_events: 0;
7039             description { state: "default" 0.0;
7040                align: 1.0 1.0;
7041                rel1.relative: 1.0 1.0;
7042                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_MIN_INC;
7043                fixed: 1 1;
7044                visible: 0;
7045             }
7046          }
7047          part { name: "icon_rect";
7048             type: RECT;
7049             scale: 1;
7050             mouse_events: 0;
7051             description { state: "default" 0.0;
7052                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_ICON_RECT_MIN_INC;
7053                fixed: 1 0;
7054                rel1 {
7055                   relative: 0.0 1.0;
7056                   to_x: "elm.swallow.content";
7057                   to_y: "padding_left_top";
7058                }
7059                rel2 {
7060                   relative: 1.0 0.0;
7061                   to_x: "elm.swallow.content";
7062                   to_y: "padding_right_bottom";
7063                }
7064                align: 0.0 0.5;
7065                color: 0 0 0 0;
7066             }
7067          }
7068          part { name: "padding_icon_text";
7069             type: RECT;
7070             scale: 1;
7071             mouse_events: 0;
7072             description { state: "default" 0.0; //when only icon or no icon is there
7073                align: 0.0 0.0;
7074                rel1 {
7075                   relative: 1.0 0.0;
7076                   to: "icon_rect";
7077                }
7078                rel2.to: "icon_rect";
7079                fixed: 1 0;
7080                min: 0 0;
7081                color: 0 0 0 0;
7082             }
7083             description { state: "icononly" 0.0;
7084                inherit: "default" 0.0;
7085             }
7086             description { state: "visible" 0.0; //when icon is visible
7087                align: 0.0 0.0;
7088                rel1 {
7089                   relative: 1.0 0.0;
7090                   to: "icon_rect";
7091                }
7092                rel2.to: "icon_rect";
7093                fixed: 1 0;
7094                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_ICON_RECT_TEXT_MIN_INC;
7095                color: 0 0 0 0;
7096             }
7097          }
7098          part { name: "elm.swallow.content";
7099             type: SWALLOW;
7100             scale: 1;
7101             clip_to: "clipper";
7102             description { state: "default" 0.0;
7103                visible: 0;
7104                align: 0.0 0.5;
7105                rel1 {
7106                   relative: 1.0 1.0;
7107                   to: "padding_left_top";
7108                }
7109                rel2 {
7110                   relative: 1.0 0.0;
7111                   to_x: "padding_left_top";
7112                   to_y: "padding_right_bottom";
7113                }
7114                fixed: 1 0;
7115             }
7116             description { state: "visible" 0.0;
7117                fixed: 1 0;
7118                align: 0.0 0.5;
7119                rel1 {
7120                   relative: 1.0 1.0;
7121                   to: "padding_left_top";
7122                }
7123                rel2 {
7124                   relative: 1.0 0.0;
7125                   to_x: "padding_left_top";
7126                   to_y: "padding_right_bottom";
7127                }
7128                aspect: 1.0 1.0;
7129                aspect_preference: VERTICAL;
7130             }
7131             description { state: "icononly" 0.0;
7132                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_CONTENT_ICON_ONLY_MIN_INC;
7133                rel1 {
7134                   relative: 1.0 1.0;
7135                   to: "padding_left_top";
7136                }
7137                rel2 {
7138                   relative: 1.0 0.0;
7139                   to_x: "padding_left_top";
7140                   to_y: "padding_right_bottom";
7141                }
7142                aspect: 1.0 1.0;
7143                aspect_preference: VERTICAL;
7144             }
7145          }
7146          part { name: "elm.text";
7147             type: TEXT;
7148             mouse_events: 0;
7149             scale: 1;
7150             clip_to: "clipper";
7151             description { state: "default" 0.0;
7152                visible: 0;
7153                rel1 {
7154                   relative: 1.0 1.0;
7155                   to_x: "padding_icon_text";
7156                   to_y: "padding_left_top";
7157                }
7158                rel2 {
7159                   relative: 0.0 0.0;
7160                   to: "padding_right_bottom";
7161                }
7162                color: BUTTON_PICKER_TEXT_DEFAULT_COLOR_INC;
7163                text {
7164                   font: "SLP:style=Medium";
7165                   size: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_FONT_SIZE_INC;
7166                   min: 1 0;
7167                   max: 1 0;
7168                   text_class: "slp_medium";
7169                }
7170             }
7171             description { state: "visible" 0.0;
7172                inherit: "default" 0.0;
7173                visible: 1;
7174                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_VISIBLE_MIN_INC;
7175             }
7176             description { state: "clicked" 0.0;
7177                inherit: "default" 0.0;
7178                visible: 1;
7179                min: 0 0;
7180                color: BUTTON_PICKER_TEXT_CLICKED_COLOR_INC;
7181             }
7182             description { state: "disabled" 0.0;
7183                inherit: "default" 0.0;
7184                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7185             }
7186             description { state: "disabled_visible" 0.0;
7187                inherit: "default" 0.0;
7188                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7189                visible: 1;
7190                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_VISIBLE_MIN_INC;
7191             }
7192             description { state: "focused" 0.0;
7193                inherit: "default" 0.0;
7194                visible: 1;
7195                min: 0 0;
7196                color: BUTTON_PICKER_TEXT_FOCUSED_COLOR_INC;
7197             }
7198          }
7199          part { name: "over2";
7200             type: RECT;
7201             repeat_events: 1;
7202             ignore_flags: ON_HOLD;
7203             description { state: "default" 0.0;
7204                color: 0 0 0 0;
7205             }
7206          }
7207          part { name: "over3";
7208             type: RECT;
7209             repeat_events: 1;
7210             description { state: "default" 0.0;
7211                color: 0 0 0 0;
7212             }
7213          }
7214          part { name: "clipper";
7215             type: RECT;
7216             description { state: "default" 0.0;
7217                color: 255 255 255 255;
7218             }
7219          }
7220          part { name: "disabler";
7221             type: RECT;
7222             description { state: "default" 0.0;
7223                color: 0 0 0 0;
7224                visible: 0;
7225             }
7226             description { state: "disabled" 0.0;
7227                inherit: "default" 0.0;
7228                visible: 1;
7229             }
7230          }
7231       }
7232       programs {
7233          program { name: "button_click";
7234             signal: "mouse,down,1";
7235             source: "over2";
7236             action: SIGNAL_EMIT "elm,action,press" "";
7237             after: "button_click_anim";
7238          }
7239          program { name: "button_click_anim";
7240             action: STATE_SET "clicked" 0.0;
7241             target: "button_image";
7242             after: "text_clicked";
7243          }
7244          program { name: "text_clicked";
7245             script {
7246                new st[31];
7247                new Float:vl;
7248                get_state(PART:"elm.text", st, 30, vl);
7249                if (!strcmp(st, "visible"))
7250                  set_state(PART:"elm.text", "clicked", 0.0);
7251             }
7252          }
7253          program { name: "button_unpress";
7254             action: SIGNAL_EMIT "elm,action,unpress" "";
7255          }
7256          program { name: "button_mouseout_clicked";
7257             signal: "mouse,up,1";
7258             source: "over3";
7259             script {
7260                new st[31];
7261                new Float:vl;
7262                get_state(PART:"elm.swallow.content", st, 30, vl);
7263                if (strcmp(st, "icononly"))
7264                  {
7265                     emit("elm,action,default,text,set", "");
7266                     set_state(PART:"elm.text", "visible", 0.0);
7267                  }
7268                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7269                  set_state(PART:"button_image", "default", 0.0);
7270             }
7271             after: button_unpress;
7272          }
7273          program { name: "touch_snd";
7274             signal: "mouse,clicked,1";
7275             source: "over2";
7276             action: PLAY_SAMPLE "touch_sound" 1.0;
7277             after: button_unclick3;
7278          }
7279          program { name: "button_unclick3";
7280             action: SIGNAL_EMIT "elm,action,click" "";
7281          }
7282          program { name: "text_show";
7283             signal: "elm,state,text,visible";
7284             source: "elm";
7285             script {
7286                new st[31];
7287                new Float:vl;
7288                get_state(PART:"elm.swallow.content", st, 30, vl);
7289                if (!strcmp(st, "icononly"))
7290                  {
7291                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7292                     set_state(PART:"padding_icon_text", "visible", 0.0);
7293                  }
7294                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7295                  set_state(PART:"elm.text", "visible", 0.0);
7296                else
7297                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7298             }
7299          }
7300          program { name: "text_hide";
7301             signal: "elm,state,text,hidden";
7302             source: "elm";
7303             script {
7304                new st[31];
7305                new Float:vl;
7306                get_state(PART:"elm.swallow.content", st, 30, vl);
7307                if (!strcmp(st, "visible"))
7308                  {
7309                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7310                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7311                  }
7312                set_state(PART:"elm.text", "default", 0.0);
7313             }
7314          }
7315          program { name: "icon_show";
7316             signal: "elm,state,icon,visible";
7317             source: "elm";
7318             script {
7319                new st[31];
7320                new Float:vl;
7321                get_state(PART:"elm.text", st, 30, vl);
7322                if (!strcmp(st, "visible"))
7323                  {
7324                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7325                     set_state(PART:"padding_icon_text", "visible", 0.0);
7326                  }
7327                else
7328                  {
7329                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7330                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7331                  }
7332             }
7333          }
7334          program { name: "icon_hide";
7335             signal: "elm,state,icon,hidden";
7336             source: "elm";
7337             action: STATE_SET "default" 0.0;
7338             target: "elm.swallow.content";
7339             target: "padding_icon_text";
7340          }
7341          program { name: "disable";
7342             signal: "elm,state,disabled";
7343             source: "elm";
7344             action: STATE_SET "disabled" 0.0;
7345             target: "button_image";
7346             target: "disabler";
7347             after: "disable_text";
7348          }
7349          program { name: "disable_text";
7350             script {
7351                new st[31];
7352                new Float:vl;
7353                get_state(PART:"elm.text", st, 30, vl);
7354                if (!strcmp(st, "visible"))
7355                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7356                else
7357                  set_state(PART:"elm.text", "disabled", 0.0);
7358                set_int(button_state, BUTTON_STATE_DISABLED);
7359             }
7360          }
7361          program { name: "enable";
7362             signal: "elm,state,enabled";
7363             source: "elm";
7364             action: STATE_SET "default" 0.0;
7365             target: "button_image";
7366             target: "disabler";
7367             after: "enable_text";
7368          }
7369          program { name: "enable_text";
7370             script {
7371                new st[31];
7372                new Float:vl;
7373                get_state(PART:"elm.text", st, 30, vl);
7374                if (!strcmp(st, "disabled_visible"))
7375                  set_state(PART:"elm.text", "visible", 0.0);
7376                else
7377                  set_state(PART:"elm.text", "default", 0.0);
7378                set_int(button_state, BUTTON_STATE_ENABLED);
7379             }
7380          }
7381          program { name: "focused";
7382             //signal: "elm,action,focus";
7383             //source: "elm";
7384             action: STATE_SET "focused" 0.0;
7385             target: "button_image";
7386             target: "elm.text";
7387          }
7388          program { name: "unfocused";
7389             //signal: "elm,action,unfocus";
7390             //source: "elm";
7391             action: STATE_SET "default" 0.0;
7392             target: "button_image";
7393             after: "unfocus_text";
7394          }
7395          program { name: "unfocus_text";
7396             action: STATE_SET "visible" 0.0;
7397             target: "elm.text";
7398          }
7399       }
7400    }
7401
7402 ///////////////////////////////////////////////////////////////////////////////////////
7403 #define BUTTON_CONTACT_STYLES(style_name, image_normal, image_press) \
7404    group { name: "elm/button/base/contact/"style_name; \
7405       images { \
7406          image: "00_contacts_circle_bg.png" COMP; \
7407          image: image_normal COMP; \
7408          image: image_press COMP; \
7409       } \
7410       parts { \
7411          part { name: "button_image"; \
7412             scale: 1; \
7413             description { state: "default" 0.0; \
7414                min: BUTTON_CONTACT_STYLE_BG_MIN_MAX_INC; \
7415                max: BUTTON_CONTACT_STYLE_BG_MIN_MAX_INC; \
7416                image.normal: "00_contacts_circle_bg.png"; \
7417                color: 255 255 255 255; \
7418             } \
7419             description { \
7420                state: "clicked" 0.0; \
7421                inherit: "default" 0.0; \
7422                image.normal: "00_contacts_circle_bg.png"; \
7423             } \
7424             description { \
7425                state: "disabled" 0.0; \
7426                inherit: "default" 0.0; \
7427                color: 255 255 255 128; \
7428             } \
7429          } \
7430          part { name: "button_center_part"; \
7431             scale: 1; \
7432             description { state: "default" 0.0; \
7433                min: BUTTON_CONTACT_STYLE_IMAGE_MIN_MAX_INC; \
7434                max: BUTTON_CONTACT_STYLE_IMAGE_MIN_MAX_INC; \
7435                image.normal: image_normal; \
7436                color: 255 255 255 255; \
7437             } \
7438             description { \
7439                state: "clicked" 0.0; \
7440                inherit: "default" 0.0; \
7441                image.normal: image_press; \
7442             } \
7443             description { \
7444                state: "disabled" 0.0; \
7445                inherit: "default" 0.0; \
7446                color: 255 255 255 128; \
7447             } \
7448          } \
7449          part { name: "over1"; \
7450             type: RECT; \
7451             ignore_flags: ON_HOLD; \
7452             description { state: "default" 0.0; \
7453                color: 0 0 0 0; \
7454             } \
7455          } \
7456          part { name: "over2"; \
7457             repeat_events: 1; \
7458             description { state: "default" 0.0; \
7459                color: 0 0 0 0; \
7460             } \
7461          } \
7462          part { name: "disabler"; \
7463             type: RECT; \
7464             description { state: "default" 0.0; \
7465                color: 0 0 0 0; \
7466                visible: 0; \
7467             } \
7468             description { state: "disabled" 0.0; \
7469                inherit: "default" 0.0; \
7470                visible: 1; \
7471             } \
7472          } \
7473       } \
7474       programs { \
7475          program { name: "button_click"; \
7476             signal: "mouse,down,1"; \
7477             source: "over1"; \
7478             action: SIGNAL_EMIT "elm,action,press" ""; \
7479             after: "button_click_anim"; \
7480          } \
7481          program { name: "button_click_anim"; \
7482             action: STATE_SET "clicked" 0.0; \
7483             target: "button_image"; \
7484             target: "button_center_part"; \
7485          } \
7486          program { name: "button_unclick"; \
7487             signal: "mouse,up,1"; \
7488             source: "over2"; \
7489             action: SIGNAL_EMIT "elm,action,unpress" ""; \
7490             after: "button_unclick_anim"; \
7491          } \
7492          program { name: "button_unclick_anim"; \
7493             action: STATE_SET "default" 0.0; \
7494             target: "button_image"; \
7495             target: "button_center_part"; \
7496          } \
7497          program { name: "touch_snd"; \
7498             signal: "mouse,clicked,1"; \
7499             source: "over1"; \
7500             action: PLAY_SAMPLE "touch_sound" 1.0; \
7501             after: button_unclick3; \
7502          } \
7503          program { name: "button_unclick3"; \
7504             action: SIGNAL_EMIT "elm,action,click" ""; \
7505          } \
7506          program { name: "disable"; \
7507             signal: "elm,state,disabled"; \
7508             source: "elm"; \
7509             action: STATE_SET "disabled" 0.0; \
7510             target: "disabler"; \
7511             target: "button_image"; \
7512             target: "button_center_part"; \
7513          } \
7514          program { name: "enable"; \
7515             signal: "elm,state,enabled"; \
7516             source: "elm"; \
7517             action: STATE_SET "default" 0.0; \
7518             target: "disabler"; \
7519             target: "button_image"; \
7520             target: "button_center_part"; \
7521          } \
7522       } \
7523    }
7524
7525 ///////////////////////////////////////////////////////////////////////////////////////
7526    BUTTON_CONTACT_STYLES("expand_closed", "00_button_expand_closed.png", "00_button_expand_closed_press.png")
7527
7528    BUTTON_CONTACT_STYLES("expand_opened", "00_button_expand_opened.png", "00_button_expand_opened_press.png")
7529
7530    BUTTON_CONTACT_STYLES("plus", "00_button_plus.png", "00_button_plus_press.png")
7531
7532 ///////////////////////////////////////////////////////////////////////////////////////
7533    group { name: "elm/button/base/contact";
7534       alias: "elm/button/base/text_only/contact";
7535       images {
7536          image: "00_contacts_button_bg.png" COMP;
7537          image: "00_contacts_button_bg_press.png" COMP;
7538       }
7539       script {
7540          public button_state = BUTTON_STATE_ENABLED;
7541       }
7542       parts {
7543          part { name: "button_image";
7544             scale: 1;
7545             description { state: "default" 0.0;
7546                rel1 {
7547                   to_x: "padding.left";
7548                   to_y: "elm.text";
7549                }
7550                rel2 {
7551                   to_x: "padding.right";
7552                   to_y: "elm.text";
7553                }
7554                min: BUTTON_CONTACT_BG_MIN_INC;
7555                image {
7556                   normal: "00_contacts_button_bg.png";
7557                   border: BUTTON_CONTACT_BG_BORDER_INC;
7558                   border_scale: 1;
7559                }
7560             }
7561             description { state: "clicked" 0.0;
7562                inherit: "default" 0.0;
7563                image.normal: "00_contacts_button_bg_press.png";
7564             }
7565             description { state: "disabled" 0.0;
7566                inherit: "default" 0.0;
7567                color: 0 0 0 128;
7568             }
7569             description { state: "focused" 0.0;
7570                inherit: "default" 0.0;
7571             }
7572          }
7573          part { name: "padding.left";
7574             type: RECT;
7575             scale: 1;
7576             description { state: "default" 0.0;
7577                visible: 0;
7578                min: BUTTON_CONTACT_PADDING_MIN_INC;
7579                fixed: 1 0;
7580                color: 0 0 0 0;
7581                rel2 {
7582                   relative: 0.0 1.0;
7583                   to_x: "elm.text";
7584                }
7585                align: 1.0 0.0;
7586             }
7587          }
7588          part { name: "padding.right";
7589             type: RECT;
7590             scale: 1;
7591             description { state: "default" 0.0;
7592                visible: 0;
7593                min: BUTTON_CONTACT_PADDING_MIN_INC;
7594                fixed: 1 0;
7595                color: 0 0 0 0;
7596                rel1 {
7597                   relative: 1.0 0.0;
7598                   to_x: "elm.text";
7599                }
7600                align: 0.0 0.0;
7601             }
7602          }
7603          part {   name: "elm.text";
7604             type: TEXT;
7605             mouse_events: 0;
7606             scale: 1;
7607             description { state: "default" 0.0;
7608                visible: 0;
7609                fixed: 1 1;
7610                color: BUTTON_CONTACT_BUTTON_TEXT_NORMAL_COLOR_INC;
7611                text {
7612                   font: "SLP:style=Medium";
7613                   size: BUTTON_CONTACT_FONT_SIZE_INC;
7614                   min: 1 1;
7615                   text_class: "slp_medium";
7616                }
7617             }
7618             description { state: "visible" 0.0;
7619                inherit: "default" 0.0;
7620                visible: 1;
7621                min: 1 1;
7622             }
7623             description { state: "clicked" 0.0;
7624                inherit: "default" 0.0;
7625                visible: 1;
7626                min: 1 1;
7627                color: BUTTON_CONTACT_BUTTON_TEXT_PRESSED_COLOR_INC;
7628             }
7629             description { state: "disabled" 0.0;
7630                inherit: "default" 0.0;
7631                color: 0 0 0 128;
7632             }
7633             description { state: "disabled_visible" 0.0;
7634                inherit: "default" 0.0;
7635                color: BUTTON_CONTACT_BUTTON_TEXT_DISABLED_COLOR_INC;
7636                visible: 1;
7637                min: 1 1;
7638             }
7639             description { state: "focused" 0.0;
7640                inherit: "default" 0.0;
7641                visible: 1;
7642                min: 1 1;
7643                color: BUTTON_CONTACT_BUTTON_TEXT_FOCUSED_COLOR_INC;
7644             }
7645          }
7646          part { name: "over1";
7647             mouse_events: 0;
7648             description { state: "default" 0.0;
7649                rel2.relative: 1.0 0.5;
7650             }
7651          }
7652          part { name: "over2";
7653             repeat_events: 1;
7654             ignore_flags: ON_HOLD;
7655             description { state: "default" 0.0;
7656                rel1.to: "button_image";
7657                rel2.to: "button_image";
7658             }
7659          }
7660          part { name: "over3";
7661             repeat_events: 1;
7662             description { state: "default" 0.0;
7663                rel1.to: "button_image";
7664                rel2.to: "button_image";
7665                color: 0 0 0 0;
7666             }
7667          }
7668          part { name: "disabler";
7669             type: RECT;
7670             description { state: "default" 0.0;
7671                rel1.to: "button_image";
7672                rel2.to: "button_image";
7673                color: 0 0 0 0;
7674                visible: 0;
7675             }
7676             description { state: "disabled" 0.0;
7677                inherit: "default" 0.0;
7678                visible: 1;
7679             }
7680          }
7681       }
7682       programs {
7683          program { name: "button_click";
7684             signal: "mouse,down,1";
7685             source: "over2";
7686             action: SIGNAL_EMIT "elm,action,press" "";
7687             after: "button_click_anim";
7688          }
7689          program { name: "button_click_anim";
7690             action: STATE_SET "clicked" 0.0;
7691             target: "button_image";
7692             target: "elm.text";
7693          }
7694          program { name: "button_unpress";
7695             action: SIGNAL_EMIT "elm,action,unpress" "";
7696          }
7697          program { name: "button_mouseout_clicked";
7698             signal: "mouse,up,1";
7699             source: "over3";
7700             script {
7701                new st[31];
7702                new Float:vl;
7703                get_state(PART:"elm.text", st, 30, vl);
7704                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
7705                  {
7706                     emit("elm,action,default,text,set", "");
7707                     set_state(PART:"elm.text", "visible", 0.0);
7708                  }
7709                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7710                  set_state(PART:"button_image", "default", 0.0);
7711             }
7712             after: button_unpress;
7713          }
7714          program { name: "touch_snd";
7715             signal: "mouse,clicked,1";
7716             source: "over2";
7717             action: PLAY_SAMPLE "touch_sound" 1.0;
7718             after: button_unclick3;
7719          }
7720          program { name: "button_unclick3";
7721             action: SIGNAL_EMIT "elm,action,click" "";
7722          }
7723          program { name: "text_show";
7724             signal: "elm,state,text,visible";
7725             source: "elm";
7726             script {
7727                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7728                  set_state(PART:"elm.text", "visible", 0.0);
7729                else
7730                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7731             }
7732          }
7733          program { name: "text_hide";
7734             signal: "elm,state,text,hidden";
7735             source: "elm";
7736             action: STATE_SET "default" 0.0;
7737             target: "elm.text";
7738          }
7739          program { name: "disable";
7740             signal: "elm,state,disabled";
7741             source: "elm";
7742             action: STATE_SET "disabled" 0.0;
7743             target: "button_image";
7744             target: "disabler";
7745             after: "disable_text";
7746          }
7747          program { name: "disable_text";
7748             script {
7749                new st[31];
7750                new Float:vl;
7751                get_state(PART:"elm.text", st, 30, vl);
7752                if (!strcmp(st, "visible"))
7753                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7754                else
7755                  set_state(PART:"elm.text", "disabled", 0.0);
7756                set_int(button_state, BUTTON_STATE_DISABLED);
7757             }
7758          }
7759          program { name: "enable";
7760             signal: "elm,state,enabled";
7761             source: "elm";
7762             action: STATE_SET "default" 0.0;
7763             target: "button_image";
7764             target: "disabler";
7765             after: "enable_text";
7766          }
7767          program { name: "enable_text";
7768             script {
7769                new st[31];
7770                new Float:vl;
7771                get_state(PART:"elm.text", st, 30, vl);
7772                if (!strcmp(st, "disabled_visible"))
7773                  set_state(PART:"elm.text", "visible", 0.0);
7774                else
7775                  set_state(PART:"elm.text", "default", 0.0);
7776                set_int(button_state, BUTTON_STATE_ENABLED);
7777             }
7778          }
7779          program { name: "focused";
7780             //signal: "elm,action,focus";
7781             //source: "elm";
7782             action: STATE_SET "focused" 0.0;
7783             target: "button_image";
7784             target: "elm.text";
7785          }
7786          program { name: "unfocused";
7787             //signal: "elm,action,unfocus";
7788             //source: "elm";
7789             action: STATE_SET "default" 0.0;
7790             target: "button_image";
7791             action: STATE_SET "visible" 0.0;
7792             target: "elm.text";
7793          }
7794       }
7795    }
7796
7797 ///////////////////////////////////////////////////////////////////////////////////////
7798    group { name: "elm/button/base/naviframe/back_btn/default";
7799       alias: "elm/button/base/naviframe/prev_btn/default";
7800       alias: "elm/button/base/naviframe/end_btn/default";
7801       images {
7802          image: "00_winset_toolbar_press.png" COMP;
7803         image: "00_winset_Back.png" COMP;
7804       }
7805       script {
7806          public button_state = BUTTON_STATE_ENABLED;
7807       }
7808       parts {
7809          part { name: "button_image";
7810             scale: 1;
7811             description { state: "default" 0.0;
7812                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7813                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7814                color: 0 0 0 0;
7815             }
7816             description { state: "clicked" 0.0;
7817                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7818                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7819                image {
7820                   normal: "00_winset_toolbar_press.png";
7821                   border: BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC;
7822                }
7823             }
7824             description { state: "disabled" 0.0;
7825                inherit: "default" 0.0;
7826                color: 127 127 127 127;
7827             }
7828             description { state: "focused" 0.0;
7829                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7830                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
7831                image {
7832                   normal: "00_winset_toolbar_press.png";
7833                   border: BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC;
7834                }
7835             }
7836          }
7837          part { name: "back_button";
7838             scale: 1;
7839             mouse_events: 0;
7840             description { state: "default" 0.0;
7841                min: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
7842                max: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
7843                rel1.to: "button_image";
7844                rel2.to: "button_image";
7845                image.normal: "00_winset_Back.png";
7846             }
7847             description { state: "clicked" 0.0;
7848                inherit: "default" 0.0;
7849             }
7850             description { state: "disabled" 0.0;
7851                inherit: "default" 0.0;
7852                color: 127 127 127 127;
7853             }
7854          }
7855          part { name: "over2";
7856             type: RECT;
7857             repeat_events: 1;
7858             ignore_flags: ON_HOLD;
7859             description { state: "default" 0.0;
7860                color: 0 0 0 0;
7861             }
7862          }
7863          part { name: "over3";
7864             type: RECT;
7865             repeat_events: 1;
7866             description { state: "default" 0.0;
7867                color: 0 0 0 0;
7868             }
7869          }
7870          part { name: "disabler";
7871             type: RECT;
7872             description { state: "default" 0.0;
7873                color: 0 0 0 0;
7874                visible: 0;
7875             }
7876             description { state: "disabled" 0.0;
7877                inherit: "default" 0.0;
7878                visible: 1;
7879             }
7880          }
7881       }
7882       programs {
7883          program { name: "button_click";
7884             signal: "mouse,down,1";
7885             source: "over2";
7886             action: SIGNAL_EMIT "elm,action,press" "";
7887             after: "button_click_anim";
7888          }
7889          program { name: "button_click_anim";
7890             action: STATE_SET "clicked" 0.0;
7891             target: "button_image";
7892          }
7893          program { name: "button_unpress";
7894             action: SIGNAL_EMIT "elm,action,unpress" "";
7895          }
7896          program { name: "button_mouseout_clicked";
7897             signal: "mouse,up,1";
7898             source: "over3";
7899             script {
7900                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7901                  set_state(PART:"button_image", "default", 0.0);
7902             }
7903             after: button_unpress;
7904          }
7905          program { name: "touch_snd";
7906             signal: "mouse,clicked,1";
7907             source: "over2";
7908             action: PLAY_SAMPLE "touch_sound" 1.0;
7909             after: button_unclick3;
7910          }
7911          program { name: "button_unclick3";
7912             action: SIGNAL_EMIT "elm,action,click" "";
7913          }
7914          program { name: "disable";
7915             signal: "elm,state,disabled";
7916             source: "elm";
7917             action: STATE_SET "disabled" 0.0;
7918             target: "button_image";
7919             target: "disabler";
7920             target: "back_button";
7921             after: "disable_button";
7922          }
7923          program { name: "disable_button";
7924             script {
7925                set_int(button_state, BUTTON_STATE_DISABLED);
7926             }
7927          }
7928          program { name: "enable";
7929             signal: "elm,state,enabled";
7930             source: "elm";
7931             action: STATE_SET "default" 0.0;
7932             target: "button_image";
7933             target: "disabler";
7934             target: "back_button";
7935             after: "enable_button";
7936          }
7937          program { name: "enable_button";
7938             script {
7939                set_int(button_state, BUTTON_STATE_ENABLED);
7940             }
7941          }
7942          program { name: "focused";
7943             //signal: "elm,action,focus";
7944             //source: "elm";
7945             action: STATE_SET "focused" 0.0;
7946             target: "button_image";
7947          }
7948          program { name: "unfocused";
7949             //signal: "elm,action,unfocus";
7950             //source: "elm";
7951             action: STATE_SET "default" 0.0;
7952             target: "button_image";
7953          }
7954       }
7955    }
7956
7957 ///////////////////////////////////////////////////////////////////////////////////////
7958    group { name: "elm/button/base/picker/prev/icon/default";
7959       images {
7960          image: "00_picker_btn_normal.png" COMP;
7961          image: "00_picker_btn_press.png" COMP;
7962          image: "00_picker_btn_normal_focus.png" COMP;
7963          image: "00_picker_arrow_left.png" COMP;
7964          image: "00_picker_arrow_left_press.png" COMP;
7965       }
7966       script {
7967          public button_state = BUTTON_STATE_ENABLED;
7968       }
7969       parts {
7970          part { name: "button_image";
7971             scale: 1;
7972             description { state: "default" 0.0;
7973                min: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
7974                max: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
7975                image {
7976                   normal: "00_picker_btn_normal.png";
7977                   border: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_BORDER_INC;
7978                   border_scale: 1;
7979                }
7980             }
7981             description { state: "clicked" 0.0;
7982                inherit: "default" 0.0;
7983                image.normal: "00_picker_btn_press.png";
7984             }
7985             description { state: "disabled" 0.0;
7986                inherit: "default" 0.0;
7987             }
7988             description { state: "focused" 0.0;
7989                inherit: "default" 0.0;
7990                image.normal: "00_picker_btn_normal_focus.png";
7991             }
7992          }
7993          part { name: "padding_left_top";
7994             type: RECT;
7995             scale: 1;
7996             mouse_events: 0;
7997             description { state: "default" 0.0;
7998                align: 0.0 0.0;
7999                rel2.relative: 0.0 0.0;
8000                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8001                fixed: 1 1;
8002                visible: 0;
8003             }
8004          }
8005          part { name: "padding_right_bottom";
8006             type: RECT;
8007             scale: 1;
8008             mouse_events: 0;
8009             description { state: "default" 0.0;
8010                align: 1.0 1.0;
8011                rel1.relative: 1.0 1.0;
8012                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8013                fixed: 1 1;
8014                visible: 0;
8015             }
8016          }
8017          part { name: "left_arrow";
8018             scale: 1;
8019             mouse_events: 0;
8020             description { state: "default" 0.0;
8021                min: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8022                max: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8023                rel1 {
8024                   relative: 1.0 1.0;
8025                   to: "padding_left_top";
8026                }
8027                rel2 {
8028                   relative: 0.0 0.0;
8029                   to: "padding_right_bottom";
8030                }
8031                image.normal: "00_picker_arrow_left.png";
8032             }
8033             description { state: "clicked" 0.0;
8034                inherit: "default" 0.0;
8035                image.normal: "00_picker_arrow_left_press.png";
8036             }
8037          }
8038          part { name: "over2";
8039             type: RECT;
8040             repeat_events: 1;
8041             ignore_flags: ON_HOLD;
8042             description { state: "default" 0.0;
8043                color: 0 0 0 0;
8044             }
8045          }
8046          part { name: "over3";
8047             type: RECT;
8048             repeat_events: 1;
8049             description { state: "default" 0.0;
8050                color: 0 0 0 0;
8051             }
8052          }
8053          part { name: "disabler";
8054             type: RECT;
8055             description { state: "default" 0.0;
8056                color: 0 0 0 0;
8057                visible: 0;
8058             }
8059             description { state: "disabled" 0.0;
8060                inherit: "default" 0.0;
8061                visible: 1;
8062             }
8063          }
8064       }
8065       programs {
8066          program { name: "button_click";
8067             signal: "mouse,down,1";
8068             source: "over2";
8069             action: SIGNAL_EMIT "elm,action,press" "";
8070             after: "button_click_anim";
8071          }
8072          program { name: "button_click_anim";
8073             action: STATE_SET "clicked" 0.0;
8074             target: "button_image";
8075          }
8076          program { name: "button_unpress";
8077             action: SIGNAL_EMIT "elm,action,unpress" "";
8078          }
8079          program { name: "button_mouseout_clicked";
8080             signal: "mouse,up,1";
8081             source: "over3";
8082             script {
8083                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8084                  set_state(PART:"button_image", "default", 0.0);
8085             }
8086             after: button_unpress;
8087          }
8088          program { name: "touch_snd";
8089             signal: "mouse,clicked,1";
8090             source: "over2";
8091             action: PLAY_SAMPLE "touch_sound" 1.0;
8092             after: button_unclick3;
8093          }
8094          program { name: "button_unclick3";
8095             action: SIGNAL_EMIT "elm,action,click" "";
8096          }
8097          program { name: "disable";
8098             signal: "elm,state,disabled";
8099             source: "elm";
8100             action: STATE_SET "disabled" 0.0;
8101             target: "button_image";
8102             target: "disabler";
8103             after: "disable_button";
8104          }
8105          program { name: "disable_button";
8106             script {
8107                set_int(button_state, BUTTON_STATE_DISABLED);
8108             }
8109          }
8110          program { name: "enable";
8111             signal: "elm,state,enabled";
8112             source: "elm";
8113             action: STATE_SET "default" 0.0;
8114             target: "button_image";
8115             target: "disabler";
8116             after: "enable_button";
8117          }
8118          program { name: "enable_button";
8119             script {
8120                set_int(button_state, BUTTON_STATE_ENABLED);
8121             }
8122          }
8123          program { name: "focused";
8124             //signal: "elm,action,focus";
8125             //source: "elm";
8126             action: STATE_SET "focused" 0.0;
8127             target: "button_image";
8128          }
8129          program { name: "unfocused";
8130             //signal: "elm,action,unfocus";
8131             //source: "elm";
8132             action: STATE_SET "default" 0.0;
8133             target: "button_image";
8134          }
8135       }
8136    }
8137
8138 ///////////////////////////////////////////////////////////////////////////////////////
8139    group { name: "elm/button/base/picker/next/icon/default";
8140       images {
8141          image: "00_picker_btn_normal.png" COMP;
8142          image: "00_picker_btn_press.png" COMP;
8143          image: "00_picker_btn_normal_focus.png" COMP;
8144          image: "00_picker_arrow_right.png" COMP;
8145          image: "00_picker_arrow_right_press.png" COMP;
8146       }
8147       script {
8148          public button_state = BUTTON_STATE_ENABLED;
8149       }
8150       parts {
8151          part { name: "button_image";
8152             scale: 1;
8153             description { state: "default" 0.0;
8154                min: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8155                max: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8156                image {
8157                   normal: "00_picker_btn_normal.png";
8158                   border: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_BORDER_INC;
8159                   border_scale: 1;
8160                }
8161             }
8162             description { state: "clicked" 0.0;
8163                inherit: "default" 0.0;
8164                image.normal: "00_picker_btn_press.png";
8165             }
8166             description { state: "disabled" 0.0;
8167                inherit: "default" 0.0;
8168             }
8169             description { state: "focused" 0.0;
8170                inherit: "default" 0.0;
8171                image.normal: "00_picker_btn_normal_focus.png";
8172             }
8173          }
8174          part { name: "padding_left_top";
8175             type: RECT;
8176             scale: 1;
8177             mouse_events: 0;
8178             description { state: "default" 0.0;
8179                align: 0.0 0.0;
8180                rel2.relative: 0.0 0.0;
8181                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8182                fixed: 1 1;
8183                visible: 0;
8184             }
8185          }
8186          part { name: "padding_right_bottom";
8187             type: RECT;
8188             scale: 1;
8189             mouse_events: 0;
8190             description { state: "default" 0.0;
8191                align: 1.0 1.0;
8192                rel1.relative: 1.0 1.0;
8193                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8194                fixed: 1 1;
8195                visible: 0;
8196             }
8197          }
8198          part { name: "right_arrow";
8199             scale: 1;
8200             mouse_events: 0;
8201             description { state: "default" 0.0;
8202                min: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8203                max: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8204                rel1 {
8205                   relative: 1.0 1.0;
8206                   to: "padding_left_top";
8207                }
8208                rel2 {
8209                   relative: 0.0 0.0;
8210                   to: "padding_right_bottom";
8211                }
8212                image.normal: "00_picker_arrow_right.png";
8213             }
8214             description { state: "clicked" 0.0;
8215                inherit: "default" 0.0;
8216                image.normal: "00_picker_arrow_right_press.png";
8217             }
8218          }
8219          part { name: "over2";
8220             type: RECT;
8221             repeat_events: 1;
8222             ignore_flags: ON_HOLD;
8223             description { state: "default" 0.0;
8224                color: 0 0 0 0;
8225             }
8226          }
8227          part { name: "over3";
8228             type: RECT;
8229             repeat_events: 1;
8230             description { state: "default" 0.0;
8231                color: 0 0 0 0;
8232             }
8233          }
8234          part { name: "disabler";
8235             type: RECT;
8236             description { state: "default" 0.0;
8237                color: 0 0 0 0;
8238                visible: 0;
8239             }
8240             description { state: "disabled" 0.0;
8241                inherit: "default" 0.0;
8242                visible: 1;
8243             }
8244          }
8245       }
8246       programs {
8247          program { name: "button_click";
8248             signal: "mouse,down,1";
8249             source: "over2";
8250             action: SIGNAL_EMIT "elm,action,press" "";
8251             after: "button_click_anim";
8252          }
8253          program { name: "button_click_anim";
8254             action: STATE_SET "clicked" 0.0;
8255             target: "button_image";
8256          }
8257          program { name: "button_unpress";
8258             action: SIGNAL_EMIT "elm,action,unpress" "";
8259          }
8260          program { name: "button_mouseout_clicked";
8261             signal: "mouse,up,1";
8262             source: "over3";
8263             script {
8264                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8265                  set_state(PART:"button_image", "default", 0.0);
8266             }
8267             after: button_unpress;
8268          }
8269          program { name: "touch_snd";
8270             signal: "mouse,clicked,1";
8271             source: "over2";
8272             action: PLAY_SAMPLE "touch_sound" 1.0;
8273             after: button_unclick3;
8274          }
8275          program { name: "button_unclick3";
8276             action: SIGNAL_EMIT "elm,action,click" "";
8277          }
8278          program { name: "disable";
8279             signal: "elm,state,disabled";
8280             source: "elm";
8281             action: STATE_SET "disabled" 0.0;
8282             target: "button_image";
8283             target: "disabler";
8284             after: "disable_button";
8285          }
8286          program { name: "disable_button";
8287             script {
8288                set_int(button_state, BUTTON_STATE_DISABLED);
8289             }
8290          }
8291          program { name: "enable";
8292             signal: "elm,state,enabled";
8293             source: "elm";
8294             action: STATE_SET "default" 0.0;
8295             target: "button_image";
8296             target: "disabler";
8297             after: "enable_button";
8298          }
8299          program { name: "enable_button";
8300             script {
8301                set_int(button_state, BUTTON_STATE_ENABLED);
8302             }
8303          }
8304          program { name: "focused";
8305             //signal: "elm,action,focus";
8306             //source: "elm";
8307             action: STATE_SET "focused" 0.0;
8308             target: "button_image";
8309          }
8310          program { name: "unfocused";
8311             //signal: "elm,action,unfocus";
8312             //source: "elm";
8313             action: STATE_SET "default" 0.0;
8314             target: "button_image";
8315          }
8316       }
8317    }
8318
8319 ///////////////////////////////////////////////////////////////////////////////////////
8320    group { name: "elm/button/base/naviframe_control/default";
8321       alias: "elm/button/base/naviframe_control/center";
8322       script {
8323          public button_state = BUTTON_STATE_ENABLED;
8324       }
8325       images {
8326          image: "00_Option_header_bt.png" COMP;
8327          image: "00_Option_header_bt_dim.png" COMP;
8328          image: "00_Option_header_bt_press.png" COMP;
8329          image: "00_Option_header_bt_focus.png" COMP;
8330       }
8331       parts {
8332          part { name: "button_image";
8333             scale: 1;
8334             description { state: "default" 0.0;
8335                min: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_MIN_INC;
8336                color: 0 0 0 0;
8337                rel1.offset: 0 0;
8338                rel2.offset: -1 -1;
8339                image {
8340                   normal: "00_Option_header_bt.png";
8341                   border: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_BORDER_INC;
8342                }
8343                color: 255 255 255 255;
8344             }
8345             description { state: "disabled" 0.0;
8346                inherit: "default" 0.0;
8347                image.normal: "00_Option_header_bt_dim.png";
8348             }
8349             description { state: "clicked" 0.0;
8350                inherit: "default" 0.0;
8351                image.normal: "00_Option_header_bt_press.png";
8352             }
8353             description { state: "focused" 0.0;
8354                inherit: "default" 0.0;
8355                image.normal: "00_Option_header_bt_focus.png";
8356             }
8357          }
8358          part { name: "padding_left_top";
8359             type: RECT;
8360             scale: 1;
8361             mouse_events: 0;
8362             description { state: "default" 0.0;
8363                align: 0.0 0.0;
8364                rel2.relative: 0.0 0.0;
8365                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8366                fixed: 1 1;
8367                visible: 0;
8368             }
8369          }
8370          part { name: "padding_right_bottom";
8371             type: RECT;
8372             scale: 1;
8373             mouse_events: 0;
8374             description { state: "default" 0.0;
8375                align: 1.0 1.0;
8376                rel1.relative: 1.0 1.0;
8377                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8378                fixed: 1 1;
8379                visible: 0;
8380             }
8381          }
8382          part { name: "icon_rect";
8383             type: RECT;
8384             scale: 1;
8385             mouse_events: 0;
8386             description { state: "default" 0.0;
8387                min: 0 0;
8388                fixed: 1 0;
8389                rel1 {
8390                   relative: 1.0 1.0;
8391                   to: "padding_left_top";
8392                }
8393                rel2 {
8394                   relative: 1.0 0.0;
8395                   to_x: "padding_left_top";
8396                   to_y: "padding_right_bottom";
8397                }
8398                align: 0.0 0.5;
8399                color: 0 0 0 0;
8400             }
8401             description { state: "visible" 0.0;
8402                min: BUTTON_NAVIFRAME_CENTER_ICON_RECT_VISIBLE_MIN_SIZE;
8403                fixed: 1 0;
8404                rel1 {
8405                   relative: 1.0 1.0;
8406                   to: "padding_left_top";
8407                }
8408                rel2 {
8409                   relative: 1.0 0.0;
8410                   to_x: "padding_left_top";
8411                   to_y: "padding_right_bottom";
8412                }
8413                align: 0.0 0.5;
8414                color: 0 0 0 0;
8415             }
8416             description { state: "icononly" 0.0;
8417                inherit: "default" 0.0;
8418             }
8419          }
8420          part { name: "padding_after_icon";
8421             type: RECT;
8422             scale: 1;
8423             mouse_events: 0;
8424             description { state: "default" 0.0; //when only icon or no icon is there
8425                align: 0.0 0.0;
8426                rel1 {
8427                   relative: 1.0 0.0;
8428                   to: "icon_rect";
8429                }
8430                rel2.to: "icon_rect";
8431                fixed: 1 0;
8432                min: 0 0;
8433                color: 0 0 0 0;
8434             }
8435             description { state: "visible" 0.0;
8436                align: 0.0 0.0;
8437                rel1 {
8438                   relative: 1.0 0.0;
8439                   to: "icon_rect";
8440                }
8441                rel2.to: "icon_rect";
8442                fixed: 1 0;
8443                min: BUTTON_NAVIFRAME_CENTER_PADDING_AFTER_ICON_VISIBLE_MIN_INC;
8444                color: 0 0 0 0;
8445             }
8446             description { state: "icononly" 0.0;
8447                inherit: "default" 0.0;
8448             }
8449          }
8450          part { name: "padding_before_text";
8451             type: RECT;
8452             scale: 1;
8453             mouse_events: 0;
8454             description { state: "default" 0.0; //when only icon or no icon is there
8455                align: 1.0 0.5;
8456                rel1 {
8457                   relative: 0.0 1.0;
8458                   to_x: "elm.text";
8459                   to_y: "padding_left_top";
8460                }
8461                rel2 {
8462                   relative: 0.0 0.0;
8463                   to_x: "elm.text";
8464                   to_y: "padding_right_bottom";
8465                }
8466                fixed: 1 0;
8467                min: BUTTON_NAVIFRAME_CENTER_PADDING_BEFORE_TEXT_DEFAULT_MIN_INC;
8468                color: 0 0 0 0;
8469             }
8470          }
8471          part { name: "elm.swallow.content";
8472             type: SWALLOW;
8473             scale: 1;
8474             clip_to: "clipper";
8475             description { state: "default" 0.0;
8476                visible: 0;
8477                align: 0.0 0.5;
8478                rel1 {
8479                   relative: 1.0 1.0;
8480                   to: "padding_left_top";
8481                }
8482                rel2 {
8483                   relative: 1.0 0.0;
8484                   to_x: "padding_left_top";
8485                   to_y: "padding_right_bottom";
8486                }
8487                fixed: 1 0;
8488             }
8489             description { state: "visible" 0.0;
8490                fixed: 1 0;
8491                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8492                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8493                align: 1.0 0.5;
8494                rel1 {
8495                   relative: 0.0 1.0;
8496                   to_x: "padding_before_text";
8497                   to_y: "padding_left_top";
8498                }
8499                rel2 {
8500                   relative: 0.0 0.0;
8501                   to_x: "padding_before_text";
8502                   to_y: "padding_right_bottom";
8503                }
8504                aspect: 1.0 1.0;
8505                aspect_preference: VERTICAL;
8506             }
8507             description { state: "icononly" 0.0;
8508                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8509                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8510                rel1 {
8511                   relative: 1.0 1.0;
8512                   to: "padding_left_top";
8513                }
8514                rel2 {
8515                   relative: 0.0 0.0;
8516                   to: "padding_right_bottom";
8517                }
8518                aspect: 1.0 1.0;
8519                aspect_preference: VERTICAL;
8520             }
8521          }
8522          part { name: "elm.text";
8523             type: TEXT;
8524             mouse_events: 0;
8525             scale: 1;
8526             clip_to: "clipper";
8527             description { state: "default" 0.0;
8528                visible: 0;
8529                rel1 {
8530                   relative: 1.0 1.0;
8531                   to_x: "padding_after_icon";
8532                   to_y: "padding_left_top";
8533                }
8534                rel2 {
8535                   relative: 0.0 0.0;
8536                   to: "padding_right_bottom";
8537                }
8538                color: BUTTON_NAVIFRAME_DEFAULT_TEXT_COLOR_INC;
8539                text {
8540                   font: "SLP:style=Medium";
8541                   size: BUTTON_NAVIFRAME_CENTER_TEXT_FONT_SIZE_INC;
8542                   min: 0 0;
8543                   max: 1 0;
8544                   text_class: "slp_medium";
8545                }
8546             }
8547             description { state: "visible" 0.0;
8548                inherit: "default" 0.0;
8549                visible: 1;
8550             }
8551             description { state: "clicked" 0.0;
8552                inherit: "default" 0.0;
8553                visible: 1;
8554                min: 0 0;
8555             }
8556             description { state: "focused" 0.0;
8557                inherit: "default" 0.0;
8558                visible: 1;
8559                min: 0 0;
8560                color: BUTTON_NAVIFRAME_FOCUSED_TEXT_COLOR_INC;
8561             }
8562          }
8563          part { name: "over2";
8564             type: RECT;
8565             repeat_events: 1;
8566             ignore_flags: ON_HOLD;
8567             description { state: "default" 0.0;
8568                color: 0 0 0 0;
8569             }
8570          }
8571          part { name: "over3";
8572             type: RECT;
8573             repeat_events: 1;
8574             description { state: "default" 0.0;
8575                color: 0 0 0 0;
8576             }
8577          }
8578          part { name: "clipper";
8579             type: RECT;
8580             description { state: "default" 0.0;
8581                color: 255 255 255 255;
8582             }
8583             description { state: "disabled" 0.0;
8584                color: 255 255 255 127;
8585             }
8586          }
8587          part { name: "disabler";
8588             type: RECT;
8589             description { state: "default" 0.0;
8590                color: 0 0 0 0;
8591                visible: 0;
8592             }
8593             description { state: "disabled" 0.0;
8594                inherit: "default" 0.0;
8595                visible: 1;
8596             }
8597          }
8598       }
8599       programs {
8600          program { name: "button_click";
8601             signal: "mouse,down,1";
8602             source: "over2";
8603             action: SIGNAL_EMIT "elm,action,press" "";
8604             after: "button_click_anim";
8605          }
8606          program { name: "button_click_anim";
8607             action: STATE_SET "clicked" 0.0;
8608             target: "button_image";
8609             after: "text_clicked";
8610          }
8611          program { name: "text_clicked";
8612             script {
8613                new st[31];
8614                new Float:vl;
8615                get_state(PART:"elm.text", st, 30, vl);
8616                if (!strcmp(st, "visible"))
8617                  set_state(PART:"elm.text", "clicked", 0.0);
8618             }
8619          }
8620          program { name: "button_unpress";
8621             action: SIGNAL_EMIT "elm,action,unpress" "";
8622          }
8623          program { name: "button_mouseout_clicked";
8624             signal: "mouse,up,1";
8625             source: "over3";
8626             script {
8627                new st[31];
8628                new Float:vl;
8629                get_state(PART:"elm.swallow.content", st, 30, vl);
8630                if (strcmp(st, "icononly"))
8631                  {
8632                     emit("elm,action,default,text,set", "");
8633                     set_state(PART:"elm.text", "visible", 0.0);
8634                  }
8635                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8636                  set_state(PART:"button_image", "default", 0.0);
8637             }
8638             after: button_unpress;
8639          }
8640          program { name: "touch_snd";
8641             signal: "mouse,clicked,1";
8642             source: "over2";
8643             action: PLAY_SAMPLE "touch_sound" 1.0;
8644             after: button_unclick3;
8645          }
8646          program { name: "button_unclick3";
8647             action: SIGNAL_EMIT "elm,action,click" "";
8648          }
8649          program { name: "text_show";
8650             signal: "elm,state,text,visible";
8651             source: "elm";
8652             script {
8653                new st[31];
8654                new Float:vl;
8655                get_state(PART:"elm.swallow.content", st, 30, vl);
8656                if (!strcmp(st, "icononly"))
8657                  {
8658                     set_state(PART:"elm.swallow.content", "visible", 0.0);
8659                     set_state(PART:"icon_rect", "visible", 0.0);
8660                     set_state(PART:"padding_after_icon", "visible", 0.0);
8661                  }
8662                set_state(PART:"elm.text", "visible", 0.0);
8663             }
8664          }
8665          program { name: "text_hide";
8666             signal: "elm,state,text,hidden";
8667             source: "elm";
8668             script {
8669                new st[31];
8670                new Float:vl;
8671                get_state(PART:"elm.swallow.content", st, 30, vl);
8672                if (!strcmp(st, "visible"))
8673                  {
8674                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
8675                     set_state(PART:"icon_rect", "icononly", 0.0);
8676                     set_state(PART:"padding_after_icon", "icononly", 0.0);
8677                  }
8678                set_state(PART:"elm.text", "default", 0.0);
8679             }
8680          }
8681          program { name: "icon_show";
8682             signal: "elm,state,icon,visible";
8683             source: "elm";
8684             script {
8685                new st[31];
8686                new Float:vl;
8687                get_state(PART:"elm.text", st, 30, vl);
8688                if (!strcmp(st, "visible"))
8689                  {
8690                     set_state(PART:"elm.swallow.content", "visible", 0.0);
8691                     set_state(PART:"icon_rect", "visible", 0.0);
8692                     set_state(PART:"padding_after_icon", "visible", 0.0);
8693                  }
8694                else
8695                  {
8696                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
8697                     set_state(PART:"icon_rect", "icononly", 0.0);
8698                     set_state(PART:"padding_after_icon", "icononly", 0.0);
8699                  }
8700             }
8701          }
8702          program { name: "icon_hide";
8703             signal: "elm,state,icon,hidden";
8704             source: "elm";
8705             action: STATE_SET "default" 0.0;
8706             target: "elm.swallow.content";
8707             target: "icon_rect";
8708             target: "padding_after_icon";
8709          }
8710          program { name: "disable";
8711             signal: "elm,state,disabled";
8712             source: "elm";
8713             action: STATE_SET "disabled" 0.0;
8714             target: "button_image";
8715             target: "clipper";
8716             target: "disabler";
8717             after: "disable_text";
8718          }
8719          program { name: "disable_text";
8720             script {
8721                new st[31];
8722                new Float:vl;
8723                set_int(button_state, BUTTON_STATE_DISABLED);
8724                get_state(PART:"elm.text", st, 30, vl);
8725                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
8726                  set_state(PART:"elm.text", "visible", 0.0);
8727             }
8728          }
8729          program { name: "enable";
8730             signal: "elm,state,enabled";
8731             source: "elm";
8732             action: STATE_SET "default" 0.0;
8733             target: "button_image";
8734             target: "clipper";
8735             target: "disabler";
8736             after: "enable_text";
8737          }
8738          program { name: "enable_text";
8739             script {
8740                new st[31];
8741                new Float:vl;
8742                set_int(button_state, BUTTON_STATE_ENABLED);
8743                get_state(PART:"elm.text", st, 30, vl);
8744                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
8745                  set_state(PART:"elm.text", "visible", 0.0);
8746             }
8747          }
8748          program { name: "focused";
8749             //signal: "elm,action,focus";
8750             //source: "elm";
8751             action: STATE_SET "focused" 0.0;
8752             target: "button_image";
8753             target: "elm.text";
8754          }
8755          program { name: "unfocused";
8756             //signal: "elm,action,unfocus";
8757             //source: "elm";
8758             action: STATE_SET "default" 0.0;
8759             target: "button_image";
8760             after: "unfocus_text";
8761          }
8762          program { name: "unfocus_text";
8763             action: STATE_SET "visible" 0.0;
8764             target: "elm.text";
8765          }
8766       }
8767    }
8768
8769 ///////////////////////////////////////////////////////////////////////////////////////
8770    group { name: "elm/button/base/naviframe_control/multiline";
8771       script {
8772          public button_state = BUTTON_STATE_ENABLED;
8773       }
8774       images {
8775          image: "00_Option_header_bt.png" COMP;
8776          image: "00_Option_header_bt_dim.png" COMP;
8777          image: "00_Option_header_bt_press.png" COMP;
8778          image: "00_Option_header_bt_focus.png" COMP;
8779       }
8780       styles{
8781          style { name: "btn_multiline_naviframe_controlbar_style";
8782             base: "font=SLP:style=Medium font_size="BUTTON_NAVIFRAME_MULTILINE_TEXT_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed text_class=slp_medium";
8783             tag: "br" "\n";
8784             tag: "ps" "ps";
8785             tag: "tab" "\t";
8786          }
8787       }
8788       parts {
8789          part { name: "button_image";
8790             scale: 1;
8791             description { state: "default" 0.0;
8792                min: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_MIN_INC;
8793                rel1.offset: 0 0;
8794                rel2.offset: -1 -1;
8795                image {
8796                   normal: "00_Option_header_bt.png";
8797                   border: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_BORDER_INC;
8798                }
8799                color: 255 255 255 255;
8800             }
8801             description { state: "disabled" 0.0;
8802                inherit: "default" 0.0;
8803                image.normal: "00_Option_header_bt_dim.png";
8804             }
8805             description { state: "clicked" 0.0;
8806                inherit: "default" 0.0;
8807                image.normal: "00_Option_header_bt_press.png";
8808             }
8809             description { state: "focused" 0.0;
8810                inherit: "default" 0.0;
8811                image.normal: "00_Option_header_bt_focus.png";
8812             }
8813          }
8814          part { name: "padding_left_top";
8815             type: RECT;
8816             scale: 1;
8817             mouse_events: 0;
8818             description { state: "default" 0.0;
8819                align: 0.0 0.0;
8820                rel2.relative: 0.0 0.0;
8821                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8822                fixed: 1 1;
8823                visible: 0;
8824             }
8825          }
8826          part { name: "padding_right_bottom";
8827             type: RECT;
8828             scale: 1;
8829             mouse_events: 0;
8830             description { state: "default" 0.0;
8831                align: 1.0 1.0;
8832                rel1.relative: 1.0 1.0;
8833                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8834                fixed: 1 1;
8835                visible: 0;
8836             }
8837          }
8838          part { name: "icon_rect";
8839             type: RECT;
8840             scale: 1;
8841             mouse_events: 0;
8842             description { state: "default" 0.0;
8843                visible: 0;
8844                min: 0 0;
8845                fixed: 1 0;
8846                rel1 {
8847                   relative: 0.0 1.0;
8848                   to_x: "elm.swallow.content";
8849                   to_y: "padding_left_top";
8850                }
8851                rel2 {
8852                   relative: 1.0 0.0;
8853                   to_x: "elm.swallow.content";
8854                   to_y: "padding_right_bottom";
8855                }
8856                align: 0.0 0.5;
8857             }
8858          }
8859          part { name: "padding_icon_text";
8860             type: RECT;
8861             scale: 1;
8862             mouse_events: 0;
8863             description { state: "default" 0.0; //when only icon or no icon is there
8864                visible: 0;
8865                align: 0.0 0.0;
8866                rel1 {
8867                   relative: 1.0 0.0;
8868                   to: "icon_rect";
8869                }
8870                rel2 {
8871                   relative: 1.0 1.0;
8872                   to: "icon_rect";
8873                }
8874                fixed: 1 0;
8875                min: 0 0;
8876             }
8877             description { state: "visible" 0.0;
8878                inherit: "default" 0.0;
8879                min: BUTTON_NAVIFRAME_CENTER_PADDING_AFTER_ICON_VISIBLE_MIN_INC;
8880                rel1 {
8881                   relative: 1.0 0.0;
8882                   to: "icon_rect";
8883                }
8884                rel2 {
8885                   relative: 1.0 1.0;
8886                   to: "icon_rect";
8887                }
8888            }
8889             description { state: "icononly" 0.0;
8890                inherit: "default" 0.0;
8891             }
8892          }
8893          part { name: "elm.swallow.content";
8894             type: SWALLOW;
8895             scale: 1;
8896             clip_to: "clipper";
8897             description { state: "default" 0.0;
8898                visible: 0;
8899                align: 0.0 0.5;
8900                rel1 {
8901                   relative: 1.0 1.0;
8902                   to: "padding_left_top";
8903                }
8904                rel2 {
8905                   relative: 1.0 0.0;
8906                   to_x: "padding_left_top";
8907                   to_y: "padding_right_bottom";
8908                }
8909                fixed: 1 0;
8910             }
8911             description { state: "visible" 0.0;
8912                fixed: 1 0;
8913                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8914                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8915                align: 0.0 0.5;
8916                rel1 {
8917                   relative: 1.0 1.0;
8918                   to: "padding_left_top";
8919                }
8920                rel2 {
8921                   relative: 0.0 0.0;
8922                   to_x: "padding_left_top";
8923                   to_y: "padding_right_bottom";
8924                }
8925             }
8926             description { state: "icononly" 0.0;
8927                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8928                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8929                rel1 {
8930                   relative: 1.0 1.0;
8931                   to: "padding_left_top";
8932                }
8933                rel2 {
8934                   relative: 0.0 0.0;
8935                   to: "padding_right_bottom";
8936                }
8937             }
8938          }
8939          part { name: "elm.text";
8940             type: TEXTBLOCK;
8941             mouse_events: 0;
8942             scale: 1;
8943             clip_to: "clipper";
8944             description { state: "default" 0.0;
8945                visible: 0;
8946                rel1 {
8947                   relative: 1.0 1.0;
8948                   to_x: "padding_icon_text";
8949                   to_y: "padding_left_top";
8950                }
8951                rel2 {
8952                    relative: 0.0 0.0;
8953                    to: "padding_right_bottom";
8954                }
8955                color: BUTTON_NAVIFRAME_DEFAULT_TEXT_COLOR_INC;
8956                text {
8957                   style: "btn_multiline_naviframe_controlbar_style";
8958                   min: 0 0;
8959                   max: 0 1;
8960                }
8961             }
8962             description { state: "visible" 0.0;
8963                inherit: "default" 0.0;
8964                visible: 1;
8965                min: 80 0;
8966             }
8967             description { state: "clicked" 0.0;
8968                inherit: "default" 0.0;
8969                visible: 1;
8970                min: 0 0;
8971             }
8972             description { state: "focused" 0.0;
8973                inherit: "default" 0.0;
8974                visible: 1;
8975                min: 0 0;
8976                color: BUTTON_NAVIFRAME_FOCUSED_TEXT_COLOR_INC;
8977             }
8978          }
8979          part { name: "over2";
8980             type: RECT;
8981             repeat_events: 1;
8982             ignore_flags: ON_HOLD;
8983             description { state: "default" 0.0;
8984                color: 0 0 0 0;
8985             }
8986          }
8987          part { name: "over3";
8988             type: RECT;
8989             repeat_events: 1;
8990             description { state: "default" 0.0;
8991                color: 0 0 0 0;
8992             }
8993          }
8994          part { name: "clipper";
8995             type: RECT;
8996             description { state: "default" 0.0;
8997                color: 255 255 255 255;
8998             }
8999             description { state: "disabled" 0.0;
9000                color: 255 255 255 127;
9001             }
9002          }
9003          part { name: "disabler";
9004             type: RECT;
9005             description { state: "default" 0.0;
9006                color: 0 0 0 0;
9007                visible: 0;
9008             }
9009             description { state: "disabled" 0.0;
9010                inherit: "default" 0.0;
9011                visible: 1;
9012             }
9013          }
9014       }
9015       programs {
9016          program { name: "button_click";
9017             signal: "mouse,down,1";
9018             source: "over2";
9019             action: SIGNAL_EMIT "elm,action,press" "";
9020             after: "button_click_anim";
9021          }
9022          program { name: "button_click_anim";
9023             action: STATE_SET "clicked" 0.0;
9024             target: "button_image";
9025             after: "text_clicked";
9026          }
9027          program { name: "text_clicked";
9028             script {
9029                new st[31];
9030                new Float:vl;
9031                get_state(PART:"elm.text", st, 30, vl);
9032                if (!strcmp(st, "visible"))
9033                  set_state(PART:"elm.text", "clicked", 0.0);
9034             }
9035          }
9036          program { name: "button_unpress";
9037             action: SIGNAL_EMIT "elm,action,unpress" "";
9038          }
9039          program { name: "button_mouseout_clicked";
9040             signal: "mouse,up,1";
9041             source: "over3";
9042             script {
9043                new st[31];
9044                new Float:vl;
9045                get_state(PART:"elm.swallow.content", st, 30, vl);
9046                if (strcmp(st, "icononly"))
9047                  {
9048                     emit("elm,action,default,text,set", "");
9049                     set_state(PART:"elm.text", "visible", 0.0);
9050                  }
9051                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9052                  set_state(PART:"button_image", "default", 0.0);
9053             }
9054             after: button_unpress;
9055          }
9056          program { name: "touch_snd";
9057             signal: "mouse,clicked,1";
9058             source: "over2";
9059             action: PLAY_SAMPLE "touch_sound" 1.0;
9060             after: button_unclick3;
9061          }
9062          program { name: "button_unclick3";
9063             action: SIGNAL_EMIT "elm,action,click" "";
9064          }
9065          program { name: "text_show";
9066             signal: "elm,state,text,visible";
9067             source: "elm";
9068             script {
9069                new st[31];
9070                new Float:vl;
9071                get_state(PART:"elm.swallow.content", st, 30, vl);
9072                if (!strcmp(st, "icononly"))
9073                  {
9074                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9075                     set_state(PART:"padding_icon_text", "visible", 0.0);
9076                  }
9077                set_state(PART:"elm.text", "visible", 0.0);
9078             }
9079          }
9080          program { name: "text_hide";
9081             signal: "elm,state,text,hidden";
9082             source: "elm";
9083             script {
9084                new st[31];
9085                new Float:vl;
9086                get_state(PART:"elm.swallow.content", st, 30, vl);
9087                if (!strcmp(st, "visible"))
9088                  {
9089                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9090                     set_state(PART:"padding_icon_text", "icononly", 0.0);
9091                  }
9092                set_state(PART:"elm.text", "default", 0.0);
9093             }
9094          }
9095          program { name: "icon_show";
9096             signal: "elm,state,icon,visible";
9097             source: "elm";
9098             script {
9099                new st[31];
9100                new Float:vl;
9101                get_state(PART:"elm.text", st, 30, vl);
9102                if (!strcmp(st, "visible"))
9103                  {
9104                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9105                     set_state(PART:"padding_icon_text", "visible", 0.0);
9106                  }
9107                else
9108                  {
9109                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9110                     set_state(PART:"padding_icon_text", "icononly", 0.0);
9111                  }
9112             }
9113          }
9114          program { name: "icon_hide";
9115             signal: "elm,state,icon,hidden";
9116             source: "elm";
9117             action: STATE_SET "default" 0.0;
9118             target: "elm.swallow.content";
9119             target: "padding_icon_text";
9120          }
9121          program { name: "disable";
9122             signal: "elm,state,disabled";
9123             source: "elm";
9124             action: STATE_SET "disabled" 0.0;
9125             target: "button_image";
9126             target: "clipper";
9127             target: "disabler";
9128             after: "disable_text";
9129          }
9130          program { name: "disable_text";
9131             script {
9132                new st[31];
9133                new Float:vl;
9134                set_int(button_state, BUTTON_STATE_DISABLED);
9135                get_state(PART:"elm.text", st, 30, vl);
9136                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9137                  set_state(PART:"elm.text", "visible", 0.0);
9138             }
9139          }
9140          program { name: "enable";
9141             signal: "elm,state,enabled";
9142             source: "elm";
9143             action: STATE_SET "default" 0.0;
9144             target: "button_image";
9145             target: "clipper";
9146             target: "disabler";
9147             after: "enable_text";
9148          }
9149          program { name: "enable_text";
9150             script {
9151                new st[31];
9152                new Float:vl;
9153                set_int(button_state, BUTTON_STATE_ENABLED);
9154                get_state(PART:"elm.text", st, 30, vl);
9155                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9156                  set_state(PART:"elm.text", "visible", 0.0);
9157             }
9158          }
9159          program { name: "focused";
9160             //signal: "elm,action,focus";
9161             //source: "elm";
9162             action: STATE_SET "focused" 0.0;
9163             target: "button_image";
9164             target: "elm.text";
9165          }
9166          program { name: "unfocused";
9167             //signal: "elm,action,unfocus";
9168             //source: "elm";
9169             action: STATE_SET "default" 0.0;
9170             target: "button_image";
9171             after: "unfocus_text";
9172          }
9173          program { name: "unfocus_text";
9174             action: STATE_SET "visible" 0.0;
9175             target: "elm.text";
9176          }
9177       }
9178    }
9179
9180 /////////////////////////////////////////////////////////////
9181    group { name: "elm/button/base/naviframe/title1/default";
9182       images {
9183          image: "00_winset_Back_btn_normal.png" COMP;
9184          image: "00_winset_Back_btn_press.png" COMP;
9185          image: "00_winset_Back_btn_normal_focus.png" COMP;
9186       }
9187       script {
9188          public button_state = BUTTON_STATE_ENABLED;
9189       }
9190       parts {
9191          part { name: "button_image";
9192             scale: 1;
9193             description { state: "default" 0.0;
9194                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9195                image {
9196                   normal: "00_winset_Back_btn_normal.png";
9197                   border: BUTTON_NAVIFRAME_TITLE1_BG_BORDER_INC;
9198                   border_scale: 1;
9199                }
9200             }
9201             description { state: "clicked" 0.0;
9202                inherit: "default" 0.0;
9203                image.normal: "00_winset_Back_btn_press.png";
9204             }
9205             description { state: "disabled" 0.0;
9206                inherit: "default" 0.0;
9207                color: 127 127 127 127;
9208             }
9209             description { state: "focused" 0.0;
9210                inherit: "default" 0.0;
9211                image.normal: "00_winset_Back_btn_normal_focus.png";
9212             }
9213          }
9214          part { name: "padding_left_top";
9215             type: RECT;
9216             scale: 1;
9217             mouse_events: 0;
9218             description { state: "default" 0.0;
9219                align: 0.0 0.0;
9220                rel2.relative: 0.0 0.0;
9221                min: BUTTON_NAVIFRAME_TITLE1_PADDING_MIN_INC;
9222                fixed: 1 1;
9223                visible: 0;
9224             }
9225          }
9226          part { name: "bg";
9227             type: RECT;
9228             scale: 1;
9229             mouse_events: 0;
9230             description { state: "default" 0.0;
9231                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9232                visible: 0;
9233             }
9234             description { state: "visible" 0.0;
9235                inherit: "default" 0.0;
9236                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9237             }
9238             description { state: "icononly" 0.0;
9239                inherit: "default" 0.0;
9240                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9241             }
9242          }
9243          part { name: "padding_right_bottom";
9244             type: RECT;
9245             scale: 1;
9246             mouse_events: 0;
9247             description { state: "default" 0.0;
9248                align: 1.0 1.0;
9249                rel1.relative: 1.0 1.0;
9250                min: BUTTON_NAVIFRAME_TITLE1_PADDING_MIN_INC;
9251                fixed: 1 1;
9252                visible: 0;
9253             }
9254          }
9255          part { name: "icon_rect";
9256             type: RECT;
9257             scale: 1;
9258             mouse_events: 0;
9259             description { state: "default" 0.0;
9260                visible: 0;
9261                min: 0 0;
9262                fixed: 1 0;
9263                rel1 {
9264                   relative: 1.0 1.0;
9265                   to: "padding_left_top";
9266                }
9267                rel2 {
9268                   relative: 1.0 0.0;
9269                   to_x: "padding_left_top";
9270                   to_y: "padding_right_bottom";
9271                }
9272                align: 0.0 0.5;
9273             }
9274             description { state: "visible" 0.0;
9275                visible: 0;
9276                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
9277                max: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
9278                fixed: 1 0;
9279                rel1 {
9280                   relative: 1.0 1.0;
9281                   to: "padding_left_top";
9282                }
9283                rel2 {
9284                   relative: 1.0 0.0;
9285                   to_x: "padding_left_top";
9286                   to_y: "padding_right_bottom";
9287                }
9288                align: 0.0 0.5;
9289             }
9290             description { state: "icononly" 0.0;
9291                inherit: "default" 0.0;
9292             }
9293          }
9294          part { name: "padding_after_icon";
9295             type: RECT;
9296             scale: 1;
9297             mouse_events: 0;
9298             description { state: "default" 0.0; //when only icon or no icon is there
9299                align: 0.0 0.0;
9300                rel1 {
9301                   relative: 1.0 0.0;
9302                   to: "icon_rect";
9303                }
9304                rel2.to: "icon_rect";
9305                fixed: 1 0;
9306                min: 0 0;
9307                visible: 0;
9308             }
9309             description { state: "visible" 0.0;
9310                visible: 0;
9311                align: 0.0 0.0;
9312                rel1 {
9313                   relative: 1.0 0.0;
9314                   to: "icon_rect";
9315                }
9316                rel2.to: "icon_rect";
9317                fixed: 1 0;
9318                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9319             }
9320             description { state: "icononly" 0.0;
9321                inherit: "default" 0.0;
9322             }
9323          }
9324          part { name: "padding_before_text";
9325             type: RECT;
9326             scale: 1;
9327             mouse_events: 0;
9328             description { state: "default" 0.0; //when only icon or no icon is there
9329                align: 1.0 0.5;
9330                rel1 {
9331                   relative: 0.0 1.0;
9332                   to_x: "elm.text";
9333                   to_y: "padding_left_top";
9334                }
9335                rel2 {
9336                   relative: 0.0 0.0;
9337                   to_x: "elm.text";
9338                   to_y: "padding_right_bottom";
9339                }
9340                fixed: 1 0;
9341                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9342                visible: 0;
9343             }
9344          }
9345          part { name: "elm.swallow.content";
9346             type: SWALLOW;
9347             scale: 1;
9348             clip_to: "clipper";
9349             description { state: "default" 0.0;
9350                visible: 0;
9351                align: 0.0 0.5;
9352                rel1 {
9353                   relative: 1.0 1.0;
9354                   to: "padding_left_top";
9355                }
9356                rel2 {
9357                   relative: 1.0 0.0;
9358                   to_x: "padding_left_top";
9359                   to_y: "padding_right_bottom";
9360                }
9361                fixed: 1 0;
9362             }
9363             description { state: "visible" 0.0;
9364                fixed: 1 0;
9365                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_MIN_MAX_INC;
9366                max: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_MIN_MAX_INC;
9367                align: 1.0 0.5;
9368                rel1 {
9369                   relative: 0.0 1.0;
9370                   to_x: "padding_before_text";
9371                   to_y: "padding_left_top";
9372                }
9373                rel2 {
9374                   relative: 0.0 0.0;
9375                   to_x: "padding_before_text";
9376                   to_y: "padding_right_bottom";
9377                }
9378             }
9379             description { state: "icononly" 0.0;
9380                min: BUTTON_NAVIFRAME_TITLE1_ICONONLY_ICON_MIN_MAX_INC;
9381                max: BUTTON_NAVIFRAME_TITLE1_ICONONLY_ICON_MIN_MAX_INC;
9382             }
9383          }
9384          part { name: "elm.text";
9385             type: TEXT;
9386             mouse_events: 0;
9387             scale: 1;
9388             clip_to: "clipper";
9389             description { state: "default" 0.0;
9390                visible: 0;
9391                rel1 {
9392                   relative: 1.0 1.0;
9393                   to_x: "padding_after_icon";
9394                   to_y: "padding_left_top";
9395                }
9396                rel2 {
9397                   relative: 0.0 0.0;
9398                   to: "padding_right_bottom";
9399                }
9400                color: BUTTON_NAVIFRAME_TITLE1_NORMAL_COLOR_INC;
9401                text {
9402                   font: "SLP:style=Medium";
9403                   size: BUTTON_NAVIFRAME_TITLE1_FONT_SIZE_INC;
9404                   min: 1 0;
9405                   max: 1 0;
9406                   text_class: "slp_medium";
9407                }
9408             }
9409             description { state: "visible" 0.0;
9410                inherit: "default" 0.0;
9411                visible: 1;
9412             }
9413             description { state: "clicked" 0.0;
9414                inherit: "default" 0.0;
9415                visible: 1;
9416                color: BUTTON_NAVIFRAME_TITLE1_PRESSED_COLOR_INC;
9417             }
9418             description { state: "disabled" 0.0;
9419                inherit: "default" 0.0;
9420                color: 0 0 0 128;
9421             }
9422             description { state: "disabled_visible" 0.0;
9423                inherit: "default" 0.0;
9424                color: BUTTON_NAVIFRAME_TITLE1_DISABLED_COLOR_INC;
9425                visible: 1;
9426             }
9427             description { state: "focused" 0.0;
9428                inherit: "default" 0.0;
9429                visible: 1;
9430                color: BUTTON_NAVIFRAME_TITLE1_FOCUSED_COLOR_INC;
9431             }
9432          }
9433          part { name: "over2";
9434             type: RECT;
9435             repeat_events: 1;
9436             ignore_flags: ON_HOLD;
9437             description { state: "default" 0.0;
9438                color: 0 0 0 0;
9439             }
9440          }
9441          part { name: "over3";
9442             type: RECT;
9443             repeat_events: 1;
9444             description { state: "default" 0.0;
9445                color: 0 0 0 0;
9446             }
9447          }
9448          part { name: "clipper";
9449             type: RECT;
9450             description { state: "default" 0.0;
9451                color: 255 255 255 255;
9452             }
9453          }
9454          part { name: "disabler";
9455             type: RECT;
9456             description { state: "default" 0.0;
9457                color: 0 0 0 0;
9458                visible: 0;
9459             }
9460             description { state: "disabled" 0.0;
9461                inherit: "default" 0.0;
9462                visible: 1;
9463             }
9464          }
9465       }
9466       programs {
9467          program { name: "button_click";
9468             signal: "mouse,down,1";
9469             source: "over2";
9470             action: SIGNAL_EMIT "elm,action,press" "";
9471             after: "button_click_anim";
9472          }
9473          program { name: "button_click_anim";
9474             action: STATE_SET "clicked" 0.0;
9475             target: "button_image";
9476             after: "text_clicked";
9477          }
9478          program { name: "text_clicked";
9479             script {
9480                new st[31];
9481                new Float:vl;
9482                get_state(PART:"elm.text", st, 30, vl);
9483                if (!strcmp(st, "visible"))
9484                  set_state(PART:"elm.text", "clicked", 0.0);
9485             }
9486          }
9487          program { name: "button_unpress";
9488             action: SIGNAL_EMIT "elm,action,unpress" "";
9489          }
9490          program { name: "button_mouseout_clicked";
9491             signal: "mouse,up,1";
9492             source: "over3";
9493             script {
9494                new st[31];
9495                new Float:vl;
9496                get_state(PART:"elm.swallow.content", st, 30, vl);
9497                if (strcmp(st, "icononly"))
9498                  {
9499                     emit("elm,action,default,text,set", "");
9500                     set_state(PART:"elm.text", "visible", 0.0);
9501                  }
9502                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9503                  set_state(PART:"button_image", "default", 0.0);
9504             }
9505             after: button_unpress;
9506          }
9507          program { name: "touch_snd";
9508             signal: "mouse,clicked,1";
9509             source: "over2";
9510             action: PLAY_SAMPLE "touch_sound" 1.0;
9511             after: button_unclick3;
9512          }
9513          program { name: "button_unclick3";
9514             action: SIGNAL_EMIT "elm,action,click" "";
9515          }
9516          program { name: "text_show";
9517             signal: "elm,state,text,visible";
9518             source: "elm";
9519             script {
9520                new st[31];
9521                new Float:vl;
9522                get_state(PART:"elm.swallow.content", st, 30, vl);
9523                if (!strcmp(st, "icononly"))
9524                  {
9525                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9526                     set_state(PART:"icon_rect", "visible", 0.0);
9527                     set_state(PART:"padding_after_icon", "visible", 0.0);
9528                     set_state(PART:"bg", "visible", 0.0);
9529                  }
9530                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9531                  set_state(PART:"elm.text", "visible", 0.0);
9532                else
9533                  set_state(PART:"elm.text", "disabled_visible", 0.0);
9534             }
9535          }
9536          program { name: "text_hide";
9537             signal: "elm,state,text,hidden";
9538             source: "elm";
9539             script {
9540                new st[31];
9541                new Float:vl;
9542                get_state(PART:"elm.swallow.content", st, 30, vl);
9543                if (!strcmp(st, "visible"))
9544                  {
9545                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9546                     set_state(PART:"icon_rect", "icononly", 0.0);
9547                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9548                     set_state(PART:"bg", "icononly", 0.0);
9549                  }
9550                set_state(PART:"elm.text", "default", 0.0);
9551             }
9552          }
9553          program { name: "icon_show";
9554             signal: "elm,state,icon,visible";
9555             source: "elm";
9556             script {
9557                new st[31];
9558                new Float:vl;
9559                get_state(PART:"elm.text", st, 30, vl);
9560                if (!strcmp(st, "visible"))
9561                  {
9562                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9563                     set_state(PART:"icon_rect", "visible", 0.0);
9564                     set_state(PART:"padding_after_icon", "visible", 0.0);
9565                     set_state(PART:"bg", "visible", 0.0);
9566                  }
9567                else
9568                  {
9569                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9570                     set_state(PART:"icon_rect", "icononly", 0.0);
9571                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9572                     set_state(PART:"bg", "icononly", 0.0);
9573                  }
9574             }
9575          }
9576          program { name: "icon_hide";
9577             signal: "elm,state,icon,hidden";
9578             source: "elm";
9579             action: STATE_SET "default" 0.0;
9580             target: "elm.swallow.content";
9581             target: "padding_after_icon";
9582             target: "icon_rect";
9583             target: "bg";
9584          }
9585          program { name: "disable";
9586             signal: "elm,state,disabled";
9587             source: "elm";
9588             action: STATE_SET "disabled" 0.0;
9589             target: "button_image";
9590             target: "disabler";
9591             after: "disable_text";
9592          }
9593          program { name: "disable_text";
9594             script {
9595                new st[31];
9596                new Float:vl;
9597                get_state(PART:"elm.text", st, 30, vl);
9598                if (!strcmp(st, "visible"))
9599                  set_state(PART:"elm.text", "disabled_visible", 0.0);
9600                else
9601                  set_state(PART:"elm.text", "disabled", 0.0);
9602                set_int(button_state, BUTTON_STATE_DISABLED);
9603             }
9604          }
9605          program { name: "enable";
9606             signal: "elm,state,enabled";
9607             source: "elm";
9608             action: STATE_SET "default" 0.0;
9609             target: "button_image";
9610             target: "disabler";
9611             after: "enable_text";
9612          }
9613          program { name: "enable_text";
9614             script {
9615                new st[31];
9616                new Float:vl;
9617                get_state(PART:"elm.text", st, 30, vl);
9618                if (!strcmp(st, "disabled_visible"))
9619                  set_state(PART:"elm.text", "visible", 0.0);
9620                else
9621                  set_state(PART:"elm.text", "default", 0.0);
9622                set_int(button_state, BUTTON_STATE_ENABLED);
9623             }
9624          }
9625          program { name: "focused";
9626             //signal: "elm,action,focus";
9627             //source: "elm";
9628             action: STATE_SET "focused" 0.0;
9629             target: "button_image";
9630             target: "elm.text";
9631          }
9632          program { name: "unfocused";
9633             //signal: "elm,action,unfocus";
9634             //source: "elm";
9635             action: STATE_SET "default" 0.0;
9636             target: "button_image";
9637             after: "unfocus_text";
9638          }
9639          program { name: "unfocus_text";
9640             action: STATE_SET "visible" 0.0;
9641             target: "elm.text";
9642          }
9643       }
9644    }
9645
9646 //////////////////////////////////////////////////////////////
9647    group { name: "elm/button/base/naviframe/title/default";
9648       script {
9649          public button_state = BUTTON_STATE_ENABLED;
9650       }
9651       images {
9652          image: "00_title_btn_bg_press.png" COMP;
9653       }
9654       styles{
9655          style { name: "btn_naviframe_style";
9656             base: "font=SLP:style=Medium font_size="BUTTON_NAVIFRAME_TITLE_TEXT_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed ellipise=1.0 text_class=slp_medium";
9657             tag: "br" "\n";
9658             tag: "ps" "ps";
9659             tag: "tab" "\t";
9660          }
9661       }
9662       parts {
9663          part { name: "button_image";
9664             scale: 1;
9665             description { state: "default" 0.0;
9666                min: BUTTON_NAVIFRAME_TITLE_TEXT_BG_NORMAL_MIN_INC;
9667                max: BUTTON_NAVIFRAME_TITLE_TEXT_BG_NORMAL_MIN_INC;
9668                color: 0 0 0 0;
9669             }
9670             description { state: "clicked" 0.0;
9671                min: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_MIN_INC;
9672                max: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_MIN_INC;
9673                image {
9674                   normal: "00_title_btn_bg_press.png";
9675                   border: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_BORDER_INC;
9676                   border_scale: 1;
9677                }
9678             }
9679             description { state: "disabled" 0.0;
9680                inherit: "default" 0.0;
9681             }
9682             description { state: "focused" 0.0;
9683                inherit: "default" 0.0;
9684             }
9685          }
9686          part { name: "padding_left_top";
9687             type: RECT;
9688             scale: 1;
9689             mouse_events: 0;
9690             description { state: "default" 0.0;
9691                align: 0.0 0.0;
9692                rel2.relative: 0.0 0.0;
9693                min: BUTTON_NAVIFRAME_TITLE_TEXT_PADDING_MIN_INC;
9694                fixed: 1 1;
9695                visible: 0;
9696             }
9697          }
9698          part { name: "padding_right_bottom";
9699             type: RECT;
9700             scale: 1;
9701             mouse_events: 0;
9702             description { state: "default" 0.0;
9703                align: 1.0 1.0;
9704                rel1.relative: 1.0 1.0;
9705                min: BUTTON_NAVIFRAME_TITLE_TEXT_PADDING_MIN_INC;
9706                fixed: 1 1;
9707                visible: 0;
9708             }
9709          }
9710          part { name: "icon_rect";
9711             type: RECT;
9712             scale: 1;
9713             mouse_events: 0;
9714             description { state: "default" 0.0;
9715                visible: 0;
9716                min: 0 0;
9717                fixed: 1 0;
9718                rel1 {
9719                   relative: 1.0 1.0;
9720                   to: "padding_left_top";
9721                }
9722                rel2 {
9723                   relative: 1.0 0.0;
9724                   to_x: "padding_left_top";
9725                   to_y: "padding_right_bottom";
9726                }
9727                align: 0.0 0.5;
9728             }
9729             description { state: "visible" 0.0;
9730                visible: 0;
9731                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
9732                max: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
9733                fixed: 1 0;
9734                rel1 {
9735                   relative: 1.0 1.0;
9736                   to: "padding_left_top";
9737                }
9738                rel2 {
9739                   relative: 1.0 0.0;
9740                   to_x: "padding_left_top";
9741                   to_y: "padding_right_bottom";
9742                }
9743                align: 0.0 0.5;
9744             }
9745             description { state: "icononly" 0.0;
9746                inherit: "default" 0.0;
9747             }
9748          }
9749          part { name: "padding_after_icon";
9750             type: RECT;
9751             scale: 1;
9752             mouse_events: 0;
9753             description { state: "default" 0.0; //when only icon or no icon is there
9754                align: 0.0 0.0;
9755                rel1 {
9756                   relative: 1.0 0.0;
9757                   to: "icon_rect";
9758                }
9759                rel2.to: "icon_rect";
9760                fixed: 1 0;
9761                min: 0 0;
9762                visible: 0;
9763             }
9764             description { state: "visible" 0.0;
9765                visible: 0;
9766                align: 0.0 0.0;
9767                rel1 {
9768                   relative: 1.0 0.0;
9769                   to: "icon_rect";
9770                }
9771                rel2.to: "icon_rect";
9772                fixed: 1 0;
9773                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9774             }
9775             description { state: "icononly" 0.0;
9776                inherit: "default" 0.0;
9777             }
9778          }
9779          part { name: "padding_before_text";
9780             type: RECT;
9781             scale: 1;
9782             mouse_events: 0;
9783             description { state: "default" 0.0; //when only icon or no icon is there
9784                align: 1.0 0.5;
9785                rel1 {
9786                   relative: 0.0 1.0;
9787                   to_x: "elm.text";
9788                   to_y: "padding_left_top";
9789                }
9790                rel2 {
9791                   relative: 0.0 0.0;
9792                   to_x: "elm.text";
9793                   to_y: "padding_right_bottom";
9794                }
9795                fixed: 1 0;
9796                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9797                visible: 0;
9798             }
9799          }
9800          part { name: "elm.swallow.content";
9801             type: SWALLOW;
9802             scale: 1;
9803             clip_to: "clipper";
9804             description { state: "default" 0.0;
9805                visible: 0;
9806                align: 0.0 0.5;
9807                rel1 {
9808                   relative: 1.0 1.0;
9809                   to: "padding_left_top";
9810                }
9811                rel2 {
9812                   relative: 1.0 0.0;
9813                   to_x: "padding_left_top";
9814                   to_y: "padding_right_bottom";
9815                }
9816                fixed: 1 0;
9817             }
9818             description { state: "visible" 0.0;
9819                fixed: 1 0;
9820                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
9821                max: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
9822                align: 1.0 0.5;
9823                rel1 {
9824                   relative: 0.0 1.0;
9825                   to_x: "padding_before_text";
9826                   to_y: "padding_left_top";
9827                }
9828                rel2 {
9829                   relative: 0.0 0.0;
9830                   to_x: "padding_before_text";
9831                   to_y: "padding_right_bottom";
9832                }
9833             }
9834             description { state: "icononly" 0.0;
9835                min: BUTTON_NAVIFRAME_TITLE_ICONONLY_ICON_MIN_MAX_INC;
9836                max: BUTTON_NAVIFRAME_TITLE_ICONONLY_ICON_MIN_MAX_INC;
9837             }
9838          }
9839          part { name: "elm.text";
9840             type: TEXTBLOCK;
9841             mouse_events: 0;
9842             scale: 1;
9843             clip_to: "clipper";
9844             description { state: "default" 0.0;
9845                visible: 0;
9846                rel1 {
9847                   relative: 1.0 1.0;
9848                   to_x: "padding_after_icon";
9849                   to_y: "padding_left_top";
9850                }
9851                rel2 {
9852                   relative: 0.0 0.0;
9853                   to: "padding_right_bottom";
9854                }
9855                color: BUTTON_NAVIFRAME_TITLE_TEXT_NORMAL_COLOR_INC;
9856                text {
9857                    style: "btn_naviframe_style";
9858                    min: 0 0;
9859                    max: 0 1;
9860                }
9861             }
9862             description { state: "visible" 0.0;
9863                inherit: "default" 0.0;
9864                visible: 1;
9865             }
9866             description { state: "clicked" 0.0;
9867                inherit: "default" 0.0;
9868                visible: 1;
9869                color: BUTTON_NAVIFRAME_TITLE_TEXT_PRESSED_COLOR_INC;
9870             }
9871             description { state: "disabled" 0.0;
9872                inherit: "default" 0.0;
9873                color: 0 0 0 128;
9874             }
9875             description { state: "disabled_visible" 0.0;
9876                inherit: "default" 0.0;
9877                color: BUTTON_NAVIFRAME_TITLE_TEXT_DISABLED_COLOR_INC;
9878                visible: 1;
9879             }
9880             description { state: "focused" 0.0;
9881                inherit: "default" 0.0;
9882                visible: 1;
9883                color: BUTTON_NAVIFRAME_TITLE_TEXT_FOCUSED_COLOR_INC;
9884             }
9885          }
9886          part { name: "over2";
9887             type: RECT;
9888             repeat_events: 1;
9889             ignore_flags: ON_HOLD;
9890             description { state: "default" 0.0;
9891                color: 0 0 0 0;
9892             }
9893          }
9894          part { name: "over3";
9895             type: RECT;
9896             repeat_events: 1;
9897             description { state: "default" 0.0;
9898                color: 0 0 0 0;
9899             }
9900          }
9901          part { name: "clipper";
9902             type: RECT;
9903             description { state: "default" 0.0;
9904                color: 255 255 255 255;
9905             }
9906          }
9907          part { name: "disabler";
9908             type: RECT;
9909             description { state: "default" 0.0;
9910                color: 0 0 0 0;
9911                visible: 0;
9912             }
9913             description { state: "disabled" 0.0;
9914                inherit: "default" 0.0;
9915                visible: 1;
9916             }
9917          }
9918       }
9919       programs {
9920          program { name: "button_click";
9921             signal: "mouse,down,1";
9922             source: "over2";
9923             action: SIGNAL_EMIT "elm,action,press" "";
9924             after: "button_click_anim";
9925          }
9926          program { name: "button_click_anim";
9927             action: STATE_SET "clicked" 0.0;
9928             target: "button_image";
9929             after: "text_clicked";
9930          }
9931          program { name: "text_clicked";
9932             script {
9933                new st[31];
9934                new Float:vl;
9935                get_state(PART:"elm.text", st, 30, vl);
9936                if (!strcmp(st, "visible"))
9937                  set_state(PART:"elm.text", "clicked", 0.0);
9938             }
9939          }
9940          program { name: "button_unpress";
9941             action: SIGNAL_EMIT "elm,action,unpress" "";
9942          }
9943          program { name: "button_mouseout_clicked";
9944             signal: "mouse,up,1";
9945             source: "over3";
9946             script {
9947                new st[31];
9948                new Float:vl;
9949                get_state(PART:"elm.swallow.content", st, 30, vl);
9950                if (strcmp(st, "icononly"))
9951                  {
9952                     emit("elm,action,default,text,set", "");
9953                     set_state(PART:"elm.text", "visible", 0.0);
9954                  }
9955                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9956                  set_state(PART:"button_image", "default", 0.0);
9957             }
9958             after: button_unpress;
9959          }
9960          program { name: "touch_snd";
9961             signal: "mouse,clicked,1";
9962             source: "over2";
9963             action: PLAY_SAMPLE "touch_sound" 1.0;
9964             after: button_unclick3;
9965          }
9966          program { name: "button_unclick3";
9967             action: SIGNAL_EMIT "elm,action,click" "";
9968          }
9969          program { name: "text_show";
9970             signal: "elm,state,text,visible";
9971             source: "elm";
9972             script {
9973                new st[31];
9974                new Float:vl;
9975                get_state(PART:"elm.swallow.content", st, 30, vl);
9976                if (!strcmp(st, "icononly"))
9977                  {
9978                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9979                     set_state(PART:"icon_rect", "visible", 0.0);
9980                     set_state(PART:"padding_after_icon", "visible", 0.0);
9981                  }
9982                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9983                  set_state(PART:"elm.text", "visible", 0.0);
9984                else
9985                  set_state(PART:"elm.text", "disabled_visible", 0.0);
9986             }
9987          }
9988          program { name: "text_hide";
9989             signal: "elm,state,text,hidden";
9990             source: "elm";
9991             script {
9992                new st[31];
9993                new Float:vl;
9994                get_state(PART:"elm.swallow.content", st, 30, vl);
9995                if (!strcmp(st, "visible"))
9996                  {
9997                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9998                     set_state(PART:"icon_rect", "icononly", 0.0);
9999                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10000                  }
10001                set_state(PART:"elm.text", "default", 0.0);
10002             }
10003          }
10004          program { name: "icon_show";
10005             signal: "elm,state,icon,visible";
10006             source: "elm";
10007             script {
10008                new st[31];
10009                new Float:vl;
10010                get_state(PART:"elm.text", st, 30, vl);
10011                if (!strcmp(st, "visible"))
10012                  {
10013                     set_state(PART:"elm.swallow.content", "visible", 0.0);
10014                     set_state(PART:"icon_rect", "visible", 0.0);
10015                     set_state(PART:"padding_after_icon", "visible", 0.0);
10016                  }
10017                else
10018                  {
10019                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
10020                     set_state(PART:"icon_rect", "icononly", 0.0);
10021                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10022                  }
10023             }
10024          }
10025          program { name: "icon_hide";
10026             signal: "elm,state,icon,hidden";
10027             source: "elm";
10028             action: STATE_SET "default" 0.0;
10029             target: "elm.swallow.content";
10030             target: "padding_after_icon";
10031             target: "icon_rect";
10032          }
10033          program { name: "disable";
10034             signal: "elm,state,disabled";
10035             source: "elm";
10036             action: STATE_SET "disabled" 0.0;
10037             target: "button_image";
10038             target: "disabler";
10039             after: "disable_text";
10040          }
10041          program { name: "disable_text";
10042             script {
10043                new st[31];
10044                new Float:vl;
10045                get_state(PART:"elm.text", st, 30, vl);
10046                if (!strcmp(st, "visible"))
10047                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10048                else
10049                  set_state(PART:"elm.text", "disabled", 0.0);
10050                set_int(button_state, BUTTON_STATE_DISABLED);
10051             }
10052          }
10053          program { name: "enable";
10054             signal: "elm,state,enabled";
10055             source: "elm";
10056             action: STATE_SET "default" 0.0;
10057             target: "button_image";
10058             target: "disabler";
10059             after: "enable_text";
10060          }
10061          program { name: "enable_text";
10062             script {
10063                new st[31];
10064                new Float:vl;
10065                get_state(PART:"elm.text", st, 30, vl);
10066                if (!strcmp(st, "disabled_visible"))
10067                  set_state(PART:"elm.text", "visible", 0.0);
10068                else
10069                  set_state(PART:"elm.text", "default", 0.0);
10070                set_int(button_state, BUTTON_STATE_ENABLED);
10071             }
10072          }
10073          program { name: "focused";
10074             //signal: "elm,action,focus";
10075             //source: "elm";
10076             action: STATE_SET "focused" 0.0;
10077             target: "button_image";
10078             target: "elm.text";
10079          }
10080          program { name: "unfocused";
10081             //signal: "elm,action,unfocus";
10082             //source: "elm";
10083             action: STATE_SET "default" 0.0;
10084             target: "button_image";
10085             after: "unfocus_text";
10086          }
10087          program { name: "unfocus_text";
10088             action: STATE_SET "visible" 0.0;
10089             target: "elm.text";
10090          }
10091       }
10092    }
10093
10094 ///////////////////////////////////////////////////////////////////////////////////////
10095 #define BUTTON_NAVIFRAME_TITLE_ICON_STYLES(style_name, image_normal, image_press, min_width, min_height) \
10096    group { name: "elm/button/base/naviframe/title/icon/"style_name; \
10097       images { \
10098          image: image_normal COMP; \
10099          image: image_press COMP; \
10100          image: "00_title_btn_bg_press.png" COMP; \
10101       } \
10102       parts { \
10103          part { name: "button_image"; \
10104             scale: 1; \
10105             description { state: "default" 0.0; \
10106                min: BUTTON_NAVIFRAME_TITLE_ICON_BG_NORMAL_MIN_INC; \
10107                max: BUTTON_NAVIFRAME_TITLE_ICON_BG_NORMAL_MIN_INC; \
10108                color: 0 0 0 0; \
10109             } \
10110             description { \
10111                state: "clicked" 0.0; \
10112                min: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_MIN_INC; \
10113                max: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_MIN_INC; \
10114                image { \
10115                   normal: "00_title_btn_bg_press.png"; \
10116                   border: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_BORDER_INC; \
10117                   border_scale: 1; \
10118                } \
10119             } \
10120             description { \
10121                state: "disabled" 0.0; \
10122                inherit: "default" 0.0; \
10123             } \
10124             description { state: "focused" 0.0; \
10125                inherit: "default" 0.0;\
10126             } \
10127          } \
10128          part { name: "icon_part"; \
10129             scale: 1; \
10130             description { state: "default" 0.0; \
10131                min: min_width min_height; \
10132                max: min_width min_height; \
10133                rel1.to: "button_image"; \
10134                rel2.to: "button_image"; \
10135                image.normal: image_normal; \
10136             } \
10137             description { \
10138                state: "clicked" 0.0; \
10139                inherit: "default" 0.0; \
10140                image.normal: image_press; \
10141             } \
10142             description { \
10143                state: "disabled" 0.0; \
10144                inherit: "default" 0.0; \
10145                color: 127 127 127 127; \
10146             } \
10147          } \
10148          part { name: "over1"; \
10149             type: RECT; \
10150             ignore_flags: ON_HOLD; \
10151             description { state: "default" 0.0; \
10152                color: 0 0 0 0; \
10153             } \
10154          } \
10155          part { name: "over2"; \
10156             repeat_events: 1; \
10157             description { state: "default" 0.0; \
10158                color: 0 0 0 0; \
10159             } \
10160          } \
10161          part { name: "disabler"; \
10162             type: RECT; \
10163             description { state: "default" 0.0; \
10164                color: 0 0 0 0; \
10165                visible: 0; \
10166             } \
10167             description { state: "disabled" 0.0; \
10168                inherit: "default" 0.0; \
10169                visible: 1; \
10170             } \
10171          } \
10172       } \
10173       programs { \
10174          program { name: "button_click"; \
10175             signal: "mouse,down,1"; \
10176             source: "over1"; \
10177             action: SIGNAL_EMIT "elm,action,press" ""; \
10178             after: "button_click_anim"; \
10179          } \
10180          program { name: "button_click_anim"; \
10181             action: STATE_SET "clicked" 0.0; \
10182             target: "button_image"; \
10183             target: "icon_part"; \
10184          } \
10185          program { name: "button_unclick"; \
10186             signal: "mouse,up,1"; \
10187             source: "over2"; \
10188             action: SIGNAL_EMIT "elm,action,unpress" ""; \
10189             after: "button_unclick_anim"; \
10190          } \
10191          program { name: "button_unclick_anim"; \
10192             action: STATE_SET "default" 0.0; \
10193             target: "button_image"; \
10194             target: "icon_part"; \
10195          } \
10196          program { name: "touch_snd"; \
10197             signal: "mouse,clicked,1"; \
10198             source: "over1"; \
10199             action: PLAY_SAMPLE "touch_sound" 1.0; \
10200             after: button_unclick3; \
10201          } \
10202          program { name: "button_unclick3"; \
10203             action: SIGNAL_EMIT "elm,action,click" ""; \
10204          } \
10205          program { name: "disable"; \
10206             signal: "elm,state,disabled"; \
10207             source: "elm"; \
10208             action: STATE_SET "disabled" 0.0; \
10209             target: "disabler"; \
10210             target: "button_image"; \
10211             target: "icon_part"; \
10212          } \
10213          program { name: "enable"; \
10214             signal: "elm,state,enabled"; \
10215             source: "elm"; \
10216             action: STATE_SET "default" 0.0; \
10217             target: "disabler"; \
10218             target: "button_image"; \
10219             target: "icon_part"; \
10220          } \
10221       } \
10222    }
10223 ///////////////////////////////////////////////////////////////////////////////////////
10224    BUTTON_NAVIFRAME_TITLE_ICON_STYLES("cancel", "00_button_cancel.png", "00_button_cancel_pressed.png", BUTTON_NAVIFRAME_TITLE_ICON_CANCEL_MIN_WIDTH_INC, BUTTON_NAVIFRAME_TITLE_ICON_CANCEL_MIN_HEIGHT_INC)
10225
10226    BUTTON_NAVIFRAME_TITLE_ICON_STYLES("plus", "00_button_plus.png", "00_button_plus_pressed.png", BUTTON_NAVIFRAME_TITLE_ICON_PLUS_MIN_WIDTH_INC, BUTTON_NAVIFRAME_TITLE_ICON_PLUS_MIN_HEIGHT_INC)
10227
10228    BUTTON_NAVIFRAME_TITLE_ICON_STYLES("more", "00_winset_more.png", "00_winset_more_press.png", BUTTON_NAVIFRAME_TITLE_ICON_MORE_MIN_WIDTH_INC, BUTTON_NAVIFRAME_TITLE_ICON_MORE_MIN_HEIGHT_INC)
10229
10230    BUTTON_NAVIFRAME_TITLE_ICON_STYLES("search", "00_title_icon_search.png", "00_title_icon_search_press.png", BUTTON_NAVIFRAME_TITLE_ICON_SEARCH_MIN_WIDTH_INC, BUTTON_NAVIFRAME_TITLE_ICON_SEARCH_MIN_HEIGHT_INC)
10231
10232    BUTTON_NAVIFRAME_TITLE_ICON_STYLES("previous", "00_winset_Back.png", "00_winset_Back.png", BUTTON_NAVIFRAME_TITLE_ICON_PREV_MIN_WIDTH_INC, BUTTON_NAVIFRAME_TITLE_ICON_PREV_MIN_HEIGHT_INC)
10233
10234 /////////////////////////////////////////////////////////////////////////////////////////
10235    group { name: "elm/button/base/naviframe/more/default";
10236       images {
10237          image: "00_winset_more.png" COMP;
10238          image: "00_winset_more_press.png" COMP;
10239          image: "00_title_btn_bg_press.png" COMP;
10240       }
10241       parts {
10242          part { name: "button_image";
10243             scale: 1;
10244             description { state: "default" 0.0;
10245                min: BUTTON_NAVIFRAME_MORE_BG_MIN_MAX_INC;
10246                max: BUTTON_NAVIFRAME_MORE_BG_MIN_MAX_INC;
10247                color: 0 0 0 0;
10248             }
10249             description { state: "clicked" 0.0;
10250                min: BUTTON_NAVIFRAME_MORE_BG_PRESSED_MIN_MAX_INC;
10251                max: BUTTON_NAVIFRAME_MORE_BG_PRESSED_MIN_MAX_INC;
10252                image {
10253                   normal: "00_title_btn_bg_press.png";
10254                   border: BUTTON_NAVIFRAME_MORE_BG_PRESSED_BORDER_INC;
10255                   border_scale: 1;
10256                }
10257             }
10258             description { state: "disabled" 0.0;
10259                inherit: "default" 0.0;
10260             }
10261             description { state: "focused" 0.0;
10262                inherit: "default" 0.0;
10263             }
10264          }
10265          part { name: "more_image";
10266             scale: 1;
10267             mouse_events: 0;
10268             description { state: "default" 0.0;
10269                min: BUTTON_NAVIFRAME_MORE_DEFAULT_IMAGE_MIN_MAX_INC;
10270                max: BUTTON_NAVIFRAME_MORE_DEFAULT_IMAGE_MIN_MAX_INC;
10271                rel1.to: "button_image";
10272                rel2.to: "button_image";
10273                image.normal: "00_winset_more.png";
10274             }
10275             description { state: "clicked" 0.0;
10276                inherit: "default" 0.0;
10277                image.normal: "00_winset_more_press.png";
10278             }
10279             description { state: "disabled" 0.0;
10280                inherit: "default" 0.0;
10281                color: 255 255 255 127;
10282             }
10283          }
10284          part { name: "over2";
10285             type: RECT;
10286             repeat_events: 1;
10287             ignore_flags: ON_HOLD;
10288             description { state: "default" 0.0;
10289                color: 0 0 0 0;
10290             }
10291          }
10292          part { name: "over3";
10293             type: RECT;
10294             repeat_events: 1;
10295             description { state: "default" 0.0;
10296                color: 0 0 0 0;
10297             }
10298          }
10299          part { name: "disabler";
10300             type: RECT;
10301             description { state: "default" 0.0;
10302                color: 0 0 0 0;
10303                visible: 0;
10304             }
10305             description { state: "disabled" 0.0;
10306                inherit: "default" 0.0;
10307                visible: 1;
10308             }
10309          }
10310       }
10311       programs {
10312          program { name: "button_click";
10313             signal: "mouse,down,1";
10314             source: "over2";
10315             action: SIGNAL_EMIT "elm,action,press" "";
10316             after: "button_click_anim";
10317          }
10318          program { name: "button_click_anim";
10319             action: STATE_SET "clicked" 0.0;
10320             target: "button_image";
10321             target: "more_image";
10322          }
10323          program { name: "button_unclick";
10324             signal: "mouse,up,1";
10325             source: "over3";
10326             action: SIGNAL_EMIT "elm,action,unpress" "";
10327             after: "button_unclick_anim";
10328          }
10329          program { name: "button_unclick_anim";
10330             action: STATE_SET "default" 0.0;
10331             target: "button_image";
10332             target: "more_image";
10333          }
10334          program { name: "touch_snd";
10335             signal: "mouse,clicked,1";
10336             source: "over2";
10337             action: PLAY_SAMPLE "touch_sound" 1.0;
10338             after: button_unclick3;
10339          }
10340          program { name: "button_unclick3";
10341             action: SIGNAL_EMIT "elm,action,click" "";
10342          }
10343          program { name: "disable";
10344             signal: "elm,state,disabled";
10345             source: "elm";
10346             action: STATE_SET "disabled" 0.0;
10347             target: "disabler";
10348             target: "button_image";
10349             target: "more_image";
10350          }
10351          program { name: "enable";
10352             signal: "elm,state,enabled";
10353             source: "elm";
10354             action: STATE_SET "default" 0.0;
10355             target: "disabler";
10356             target: "button_image";
10357             target: "more_image";
10358          }
10359       }
10360    }
10361
10362 ///////////////////////////////////////////////////////////////////////////////////////
10363    group { name: "elm/button/base/tickernoti";
10364       images {
10365          image: "00_button_06_normal.png" COMP;
10366          image: "00_button_06_press.png" COMP;
10367          image: "00_button_06_dim.png" COMP;
10368          image: "00_button_06_normal_focus.png" COMP;
10369       }
10370       script {
10371          public button_state = BUTTON_STATE_ENABLED;
10372       }
10373       parts {
10374          part { name: "button_image";
10375             scale: 1;
10376             description { state: "default" 0.0;
10377                image {
10378                   normal: "00_button_06_normal.png";
10379                   border: BUTTON_TICKERNOTI_BG_BORDER_INC;
10380                   border_scale: 1;
10381                }
10382             }
10383             description { state: "clicked" 0.0;
10384                inherit: "default" 0.0;
10385                image.normal: "00_button_06_press.png";
10386             }
10387             description { state: "disabled" 0.0;
10388                inherit: "default" 0.0;
10389                image.normal: "00_button_06_dim.png";
10390             }
10391             description { state: "focused" 0.0;
10392                inherit: "default" 0.0;
10393                image.normal: "00_button_06_normal_focus.png";
10394             }
10395          }
10396          part { name: "padding_left_top";
10397             type: RECT;
10398             scale: 1;
10399             mouse_events: 0;
10400             description { state: "default" 0.0;
10401                align: 0.0 0.0;
10402                rel2.relative: 0.0 0.0;
10403                min: BUTTON_TICKERNOTI_PADDING_MIN_INC;
10404                fixed: 1 1;
10405                visible: 0;
10406             }
10407          }
10408          part { name: "bg";
10409             type: RECT;
10410             scale: 1;
10411             mouse_events: 0;
10412             description { state: "default" 0.0;
10413                min: BUTTON_TICKERNOTI_BG_MIN_INC;
10414                visible: 0;
10415             }
10416             description { state: "visible" 0.0;
10417                inherit: "default" 0.0;
10418                min: BUTTON_TICKERNOTI_VISIBLE_BG_MIN_INC;
10419             }
10420             description { state: "icononly" 0.0;
10421                inherit: "default" 0.0;
10422                min: BUTTON_TICKERNOTI_ICONONLY_BG_MIN_INC;
10423             }
10424          }
10425          part { name: "padding_right_bottom";
10426             type: RECT;
10427             scale: 1;
10428             mouse_events: 0;
10429             description { state: "default" 0.0;
10430                align: 1.0 1.0;
10431                rel1.relative: 1.0 1.0;
10432                min: BUTTON_TICKERNOTI_PADDING_MIN_INC;
10433                fixed: 1 1;
10434                visible: 0;
10435             }
10436          }
10437          part { name: "icon_rect";
10438             type: RECT;
10439             scale: 1;
10440             mouse_events: 0;
10441             description { state: "default" 0.0;
10442                visible: 0;
10443                min: 0 0;
10444                fixed: 1 0;
10445                rel1 {
10446                   relative: 1.0 1.0;
10447                   to: "padding_left_top";
10448                }
10449                rel2 {
10450                   relative: 1.0 0.0;
10451                   to_x: "padding_left_top";
10452                   to_y: "padding_right_bottom";
10453                }
10454                align: 0.0 0.5;
10455             }
10456             description { state: "visible" 0.0;
10457                visible: 0;
10458                min: BUTTON_TICKERNOTI_VISIBLE_ICON_RECT_MIN_MAX_INC;
10459                max: BUTTON_TICKERNOTI_VISIBLE_ICON_RECT_MIN_MAX_INC;
10460                fixed: 1 0;
10461                rel1 {
10462                   relative: 1.0 1.0;
10463                   to: "padding_left_top";
10464                }
10465                rel2 {
10466                   relative: 1.0 0.0;
10467                   to_x: "padding_left_top";
10468                   to_y: "padding_right_bottom";
10469                }
10470                align: 0.0 0.5;
10471             }
10472             description { state: "icononly" 0.0;
10473                inherit: "default" 0.0;
10474             }
10475          }
10476          part { name: "padding_after_icon";
10477             type: RECT;
10478             scale: 1;
10479             mouse_events: 0;
10480             description { state: "default" 0.0; //when only icon or no icon is there
10481                align: 0.0 0.0;
10482                rel1 {
10483                   relative: 1.0 0.0;
10484                   to: "icon_rect";
10485                }
10486                rel2.to: "icon_rect";
10487                fixed: 1 0;
10488                min: 0 0;
10489                visible: 0;
10490             }
10491             description { state: "visible" 0.0;
10492                visible: 0;
10493                align: 0.0 0.0;
10494                rel1 {
10495                   relative: 1.0 0.0;
10496                   to: "icon_rect";
10497                }
10498                rel2.to: "icon_rect";
10499                fixed: 1 0;
10500                min: BUTTON_TICKERNOTI_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10501             }
10502             description { state: "icononly" 0.0;
10503                inherit: "default" 0.0;
10504             }
10505          }
10506          part { name: "padding_before_text";
10507             type: RECT;
10508             scale: 1;
10509             mouse_events: 0;
10510             description { state: "default" 0.0; //when only icon or no icon is there
10511                align: 1.0 0.5;
10512                rel1 {
10513                   relative: 0.0 1.0;
10514                   to_x: "elm.text";
10515                   to_y: "padding_left_top";
10516                }
10517                rel2 {
10518                   relative: 0.0 0.0;
10519                   to_x: "elm.text";
10520                   to_y: "padding_right_bottom";
10521                }
10522                fixed: 1 0;
10523                min: BUTTON_TICKERNOTI_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10524                visible: 0;
10525             }
10526          }
10527          part { name: "elm.swallow.content";
10528             type: SWALLOW;
10529             scale: 1;
10530             clip_to: "clipper";
10531             description { state: "default" 0.0;
10532                visible: 0;
10533                align: 0.0 0.5;
10534                rel1 {
10535                   relative: 1.0 1.0;
10536                   to: "padding_left_top";
10537                }
10538                rel2 {
10539                   relative: 1.0 0.0;
10540                   to_x: "padding_left_top";
10541                   to_y: "padding_right_bottom";
10542                }
10543                fixed: 1 0;
10544             }
10545             description { state: "visible" 0.0;
10546                fixed: 1 0;
10547                min: BUTTON_TICKERNOTI_VISIBLE_ICON_MIN_MAX_INC;
10548                max: BUTTON_TICKERNOTI_VISIBLE_ICON_MIN_MAX_INC;
10549                align: 1.0 0.5;
10550                rel1 {
10551                   relative: 0.0 1.0;
10552                   to_x: "padding_before_text";
10553                   to_y: "padding_left_top";
10554                }
10555                rel2 {
10556                   relative: 0.0 0.0;
10557                   to_x: "padding_before_text";
10558                   to_y: "padding_right_bottom";
10559                }
10560             }
10561             description { state: "icononly" 0.0;
10562                min: BUTTON_TICKERNOTI_ICONONLY_ICON_MIN_MAX_INC;
10563                max: BUTTON_TICKERNOTI_ICONONLY_ICON_MIN_MAX_INC;
10564             }
10565          }
10566          part { name: "elm.text";
10567             type: TEXT;
10568             mouse_events: 0;
10569             scale: 1;
10570             clip_to: "clipper";
10571             description { state: "default" 0.0;
10572                visible: 0;
10573                rel1 {
10574                   relative: 1.0 1.0;
10575                   to_x: "padding_after_icon";
10576                   to_y: "padding_left_top";
10577                }
10578                rel2 {
10579                   relative: 0.0 0.0;
10580                   to: "padding_right_bottom";
10581                }
10582                color: BUTTON_TICKERNOTI_NORMAL_COLOR_INC;
10583                text {
10584                   font: "SLP:style=Medium";
10585                   size: BUTTON_TICKERNOTI_FONT_SIZE_INC;
10586                   min: 1 0;
10587                   max: 1 0;
10588                   text_class: "slp_medium";
10589                }
10590             }
10591             description { state: "visible" 0.0;
10592                inherit: "default" 0.0;
10593                visible: 1;
10594             }
10595             description { state: "clicked" 0.0;
10596                inherit: "default" 0.0;
10597                visible: 1;
10598                color: BUTTON_TICKERNOTI_PRESSED_COLOR_INC;
10599             }
10600             description { state: "disabled" 0.0;
10601                inherit: "default" 0.0;
10602                color: 0 0 0 128;
10603             }
10604             description { state: "disabled_visible" 0.0;
10605                inherit: "default" 0.0;
10606                color: BUTTON_TICKERNOTI_DISABLED_COLOR_INC;
10607                visible: 1;
10608             }
10609             description { state: "focused" 0.0;
10610                inherit: "default" 0.0;
10611                visible: 1;
10612                color: BUTTON_TICKERNOTI_PRESSED_COLOR_INC;
10613             }
10614          }
10615          part { name: "over2";
10616             type: RECT;
10617             repeat_events: 1;
10618             ignore_flags: ON_HOLD;
10619             description { state: "default" 0.0;
10620                color: 0 0 0 0;
10621             }
10622          }
10623          part { name: "over3";
10624             type: RECT;
10625             repeat_events: 1;
10626             description { state: "default" 0.0;
10627                color: 0 0 0 0;
10628             }
10629          }
10630          part { name: "clipper";
10631             type: RECT;
10632             description { state: "default" 0.0;
10633                color: 255 255 255 255;
10634             }
10635          }
10636          part { name: "disabler";
10637             type: RECT;
10638             description { state: "default" 0.0;
10639                color: 0 0 0 0;
10640                visible: 0;
10641             }
10642             description { state: "disabled" 0.0;
10643                inherit: "default" 0.0;
10644                visible: 1;
10645             }
10646          }
10647       }
10648       programs {
10649          program { name: "button_click";
10650             signal: "mouse,down,1";
10651             source: "over2";
10652             action: SIGNAL_EMIT "elm,action,press" "";
10653             after: "button_click_anim";
10654          }
10655          program { name: "button_click_anim";
10656             action: STATE_SET "clicked" 0.0;
10657             target: "button_image";
10658             after: "text_clicked";
10659          }
10660          program { name: "text_clicked";
10661             script {
10662                new st[31];
10663                new Float:vl;
10664                get_state(PART:"elm.text", st, 30, vl);
10665                if (!strcmp(st, "visible"))
10666                  set_state(PART:"elm.text", "clicked", 0.0);
10667             }
10668          }
10669          program { name: "button_unpress";
10670             action: SIGNAL_EMIT "elm,action,unpress" "";
10671          }
10672          program { name: "button_mouseout_clicked";
10673             signal: "mouse,up,1";
10674             source: "over3";
10675             script {
10676                new st[31];
10677                new Float:vl;
10678                get_state(PART:"elm.swallow.content", st, 30, vl);
10679                if (strcmp(st, "icononly"))
10680                  {
10681                     emit("elm,action,default,text,set", "");
10682                     set_state(PART:"elm.text", "visible", 0.0);
10683                  }
10684                if (get_int(button_state) != BUTTON_STATE_DISABLED)
10685                  set_state(PART:"button_image", "default", 0.0);
10686             }
10687             after: button_unpress;
10688          }
10689          program { name: "touch_snd";
10690             signal: "mouse,clicked,1";
10691             source: "over2";
10692             action: PLAY_SAMPLE "touch_sound" 1.0;
10693             after: button_unclick3;
10694          }
10695          program { name: "button_unclick3";
10696             action: SIGNAL_EMIT "elm,action,click" "";
10697          }
10698          program { name: "text_show";
10699             signal: "elm,state,text,visible";
10700             source: "elm";
10701             script {
10702                new st[31];
10703                new Float:vl;
10704                get_state(PART:"elm.swallow.content", st, 30, vl);
10705                if (!strcmp(st, "icononly"))
10706                  {
10707                     set_state(PART:"elm.swallow.content", "visible", 0.0);
10708                     set_state(PART:"icon_rect", "visible", 0.0);
10709                     set_state(PART:"padding_after_icon", "visible", 0.0);
10710                     set_state(PART:"bg", "visible", 0.0);
10711                  }
10712                if (get_int(button_state) != BUTTON_STATE_DISABLED)
10713                  set_state(PART:"elm.text", "visible", 0.0);
10714                else
10715                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10716             }
10717          }
10718          program { name: "text_hide";
10719             signal: "elm,state,text,hidden";
10720             source: "elm";
10721             script {
10722                new st[31];
10723                new Float:vl;
10724                get_state(PART:"elm.swallow.content", st, 30, vl);
10725                if (!strcmp(st, "visible"))
10726                  {
10727                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
10728                     set_state(PART:"icon_rect", "icononly", 0.0);
10729                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10730                     set_state(PART:"bg", "icononly", 0.0);
10731                  }
10732                set_state(PART:"elm.text", "default", 0.0);
10733             }
10734          }
10735          program { name: "icon_show";
10736             signal: "elm,state,icon,visible";
10737             source: "elm";
10738             script {
10739                new st[31];
10740                new Float:vl;
10741                get_state(PART:"elm.text", st, 30, vl);
10742                if (!strcmp(st, "visible"))
10743                  {
10744                     set_state(PART:"elm.swallow.content", "visible", 0.0);
10745                     set_state(PART:"icon_rect", "visible", 0.0);
10746                     set_state(PART:"padding_after_icon", "visible", 0.0);
10747                     set_state(PART:"bg", "visible", 0.0);
10748                  }
10749                else
10750                  {
10751                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
10752                     set_state(PART:"icon_rect", "icononly", 0.0);
10753                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10754                     set_state(PART:"bg", "icononly", 0.0);
10755                  }
10756             }
10757          }
10758          program { name: "icon_hide";
10759             signal: "elm,state,icon,hidden";
10760             source: "elm";
10761             action: STATE_SET "default" 0.0;
10762             target: "elm.swallow.content";
10763             target: "padding_after_icon";
10764             target: "icon_rect";
10765             target: "bg";
10766          }
10767          program { name: "disable";
10768             signal: "elm,state,disabled";
10769             source: "elm";
10770             action: STATE_SET "disabled" 0.0;
10771             target: "button_image";
10772             target: "disabler";
10773             after: "disable_text";
10774          }
10775          program { name: "disable_text";
10776             script {
10777                new st[31];
10778                new Float:vl;
10779                get_state(PART:"elm.text", st, 30, vl);
10780                if (!strcmp(st, "visible"))
10781                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10782                else
10783                  set_state(PART:"elm.text", "disabled", 0.0);
10784                set_int(button_state, BUTTON_STATE_DISABLED);
10785             }
10786          }
10787          program { name: "enable";
10788             signal: "elm,state,enabled";
10789             source: "elm";
10790             action: STATE_SET "default" 0.0;
10791             target: "button_image";
10792             target: "disabler";
10793             after: "enable_text";
10794          }
10795          program { name: "enable_text";
10796             script {
10797                new st[31];
10798                new Float:vl;
10799                get_state(PART:"elm.text", st, 30, vl);
10800                if (!strcmp(st, "disabled_visible"))
10801                  set_state(PART:"elm.text", "visible", 0.0);
10802                else
10803                  set_state(PART:"elm.text", "default", 0.0);
10804                set_int(button_state, BUTTON_STATE_ENABLED);
10805             }
10806          }
10807          program { name: "focused";
10808             //signal: "elm,action,focus";
10809             //source: "elm";
10810             action: STATE_SET "focused" 0.0;
10811             target: "button_image";
10812             target: "elm.text";
10813          }
10814          program { name: "unfocused";
10815             //signal: "elm,action,unfocus";
10816             //source: "elm";
10817             action: STATE_SET "default" 0.0;
10818             target: "button_image";
10819             after: "unfocus_text";
10820          }
10821          program { name: "unfocus_text";
10822             action: STATE_SET "visible" 0.0;
10823             target: "elm.text";
10824          }
10825       }
10826    }
10827
10828 ///////////////////////////////////////////////////////////////////////////////////////
10829    group { name: "elm/button/base/expandable_number";
10830       alias: "elm/button/base/text_only/expandable_number";
10831       images {
10832          image: "00_button_05_normal.png" COMP;
10833          image: "00_button_05_press.png" COMP;
10834          image: "00_button_05_dim.png" COMP;
10835          image: "00_button_05_normal_focus.png" COMP;
10836          image: "00_arrow_expand.png" COMP;
10837          image: "00_arrow_expand_press.png" COMP;
10838          image: "00_arrow_expand_dim.png" COMP;
10839       }
10840       script {
10841          public button_state = BUTTON_STATE_ENABLED;
10842       }
10843       parts {
10844          part { name: "button_image";
10845             scale: 1;
10846             description { state: "default" 0.0;
10847                min: BUTTON_EXPANDABLE_NUMBER_BG_NORMAL_MIN_MAX_INC;
10848                max: BUTTON_EXPANDABLE_NUMBER_BG_NORMAL_MIN_MAX_INC;
10849                image {
10850                   normal: "00_button_05_normal.png";
10851                   border: BUTTON_EXPANDABLE_NUMBER_BG_BORDER_INC;
10852                   border_scale: 1;
10853                }
10854             }
10855             description { state: "clicked" 0.0;
10856                inherit: "default" 0.0;
10857                image.normal: "00_button_05_press.png";
10858             }
10859             description { state: "disabled" 0.0;
10860                inherit: "default" 0.0;
10861                image.normal: "00_button_05_dim.png";
10862             }
10863             description { state: "focused" 0.0;
10864                inherit: "default" 0.0;
10865                image.normal: "00_button_05_normal_focus.png";
10866             }
10867          }
10868          part { name: "padding_left_top";
10869             type: RECT;
10870             scale: 1;
10871             mouse_events: 0;
10872             description { state: "default" 0.0;
10873                align: 0.0 0.0;
10874                rel2.relative: 0.0 0.0;
10875                min: BUTTON_EXPANDABLE_NUMBER_PADDING_MIN_INC;
10876                fixed: 1 1;
10877                visible: 0;
10878             }
10879          }
10880          part { name: "padding_right_bottom";
10881             type: RECT;
10882             scale: 1;
10883             mouse_events: 0;
10884             description { state: "default" 0.0;
10885                align: 1.0 1.0;
10886                rel1.relative: 1.0 1.0;
10887                min: BUTTON_EXPANDABLE_NUMBER_PADDING_MIN_INC;
10888                fixed: 1 1;
10889                visible: 0;
10890             }
10891          }
10892          part { name: "icon_rect";
10893             type: RECT;
10894             scale: 1;
10895             mouse_events: 0;
10896             description { state: "default" 0.0;
10897                visible: 0;
10898                min: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
10899                max: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
10900                fixed: 1 0;
10901                rel1 {
10902                   relative: 0.0 1.0;
10903                   to_x: "padding_right_bottom";
10904                   to_y: "padding_left_top";
10905                }
10906                rel2 {
10907                   relative: 0.0 0.0;
10908                   to: "padding_right_bottom";
10909                }
10910                align: 1.0 0.5;
10911                color: 0 0 0 0;
10912             }
10913          }
10914          part { name: "arrow_expand";
10915             scale: 1;
10916             mouse_events: 0;
10917             description { state: "default" 0.0;
10918                align: 0.0 0.5;
10919                min: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
10920                max: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
10921                fixed: 0 0;
10922                rel1.to: "icon_rect";
10923                rel2.to: "icon_rect";
10924                image.normal:"00_arrow_expand.png";
10925             }
10926             description { state: "clicked" 0.0;
10927                inherit: "default" 0.0;
10928                image.normal:"00_arrow_expand_press.png";
10929             }
10930             description { state: "disabled" 0.0;
10931                inherit: "default" 0.0;
10932                image.normal:"00_arrow_expand_dim.png";
10933             }
10934          }
10935          part { name: "elm.text";
10936             type: TEXT;
10937             mouse_events: 0;
10938             scale: 1;
10939             description { state: "default" 0.0;
10940                min: BUTTON_EXPANDABLE_NUMBER_TEXT_MIN_MAX_INC;
10941                max: BUTTON_EXPANDABLE_NUMBER_TEXT_MIN_MAX_INC;
10942                fixed:1 0;
10943                rel1 {
10944                   relative: 1.0 1.0;
10945                   to: "padding_left_top";
10946                }
10947                rel2 {
10948                   relative: 1.0 1.0;
10949                   to_x:"padding_left_top";
10950                   to_y:"padding_right_bottom";
10951                }
10952                align: 0.0 0.5;
10953                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
10954                text {
10955                   font: "SLP:style=Medium";
10956                   size: BUTTON_EXPANDABLE_NUMBER_FONT_SIZE_INC;
10957                   min: 0 0;
10958                   fit: 1 1;
10959                   size_range: 14 20;
10960                   text_class: "slp_medium";
10961                }
10962             }
10963             description { state: "visible" 0.0;
10964                inherit: "default" 0.0;
10965             }
10966             description { state: "clicked" 0.0;
10967                inherit: "default" 0.0;
10968                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
10969             }
10970             description { state: "disabled" 0.0;
10971                inherit: "default" 0.0;
10972                color: 0 0 0 128;
10973             }
10974             description { state: "disabled_visible" 0.0;
10975                inherit: "default" 0.0;
10976                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
10977             }
10978             description { state: "focused" 0.0;
10979                inherit: "default" 0.0;
10980                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
10981             }
10982          }
10983          part { name: "over2";
10984             type: RECT;
10985             repeat_events: 1;
10986             ignore_flags: ON_HOLD;
10987             description { state: "default" 0.0;
10988                color: 0 0 0 0;
10989             }
10990          }
10991          part { name: "over3";
10992             type: RECT;
10993             repeat_events: 1;
10994             description { state: "default" 0.0;
10995                color: 0 0 0 0;
10996             }
10997          }
10998          part { name: "disabler";
10999             type: RECT;
11000             description { state: "default" 0.0;
11001                color: 0 0 0 0;
11002                visible: 0;
11003             }
11004             description { state: "disabled" 0.0;
11005                inherit: "default" 0.0;
11006                visible: 1;
11007             }
11008          }
11009       }
11010       programs {
11011          program { name: "button_click";
11012             signal: "mouse,down,1";
11013             source: "over2";
11014             action: SIGNAL_EMIT "elm,action,press" "";
11015             after: "button_click_anim";
11016          }
11017          program { name: "button_click_anim";
11018             action: STATE_SET "clicked" 0.0;
11019             target: "button_image";
11020             target: "arrow_expand";
11021             after: "text_clicked";
11022          }
11023          program { name: "text_clicked";
11024             script {
11025                new st[31];
11026                new Float:vl;
11027                get_state(PART:"elm.text", st, 30, vl);
11028                if (!strcmp(st, "visible"))
11029                  set_state(PART:"elm.text", "clicked", 0.0);
11030             }
11031          }
11032          program { name: "button_unpress";
11033             action: SIGNAL_EMIT "elm,action,unpress" "";
11034          }
11035          program { name: "button_mouseout_clicked";
11036             signal: "mouse,up,1";
11037             source: "over3";
11038             script {
11039                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11040                  {
11041                     set_state(PART:"button_image", "default", 0.0);
11042                     set_state(PART:"elm.text", "visible", 0.0);
11043                     set_state(PART:"arrow_expand", "default", 0.0);
11044                  }
11045             }
11046             after: button_unpress;
11047          }
11048          program { name: "touch_snd";
11049             signal: "mouse,clicked,1";
11050             source: "over2";
11051             action: PLAY_SAMPLE "touch_sound" 1.0;
11052             after: button_unclick3;
11053          }
11054          program { name: "button_unclick3";
11055             action: SIGNAL_EMIT "elm,action,click" "";
11056          }
11057          program { name: "text_show";
11058             signal: "elm,state,text,visible";
11059             source: "elm";
11060             script {
11061                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11062                  set_state(PART:"elm.text", "visible", 0.0);
11063                else
11064                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11065             }
11066          }
11067          program { name: "text_hide";
11068             signal: "elm,state,text,hidden";
11069             source: "elm";
11070             script {
11071                set_state(PART:"elm.text", "default", 0.0);
11072             }
11073          }
11074          program { name: "disable";
11075             signal: "elm,state,disabled";
11076             source: "elm";
11077             action: STATE_SET "disabled" 0.0;
11078             target: "button_image";
11079             target: "disabler";
11080             after: "disable_text";
11081          }
11082          program { name: "disable_text";
11083             script {
11084                new st[31];
11085                new Float:vl;
11086                get_state(PART:"elm.text", st, 30, vl);
11087                if (!strcmp(st, "visible"))
11088                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11089                else
11090                  set_state(PART:"elm.text", "disabled", 0.0);
11091                set_int(button_state, BUTTON_STATE_DISABLED);
11092             }
11093          }
11094          program { name: "enable";
11095             signal: "elm,state,enabled";
11096             source: "elm";
11097             action: STATE_SET "default" 0.0;
11098             target: "button_image";
11099             target: "disabler";
11100             after: "enable_text";
11101          }
11102          program { name: "enable_text";
11103             script {
11104                new st[31];
11105                new Float:vl;
11106                get_state(PART:"elm.text", st, 30, vl);
11107                if (!strcmp(st, "disabled_visible"))
11108                  set_state(PART:"elm.text", "visible", 0.0);
11109                else
11110                  set_state(PART:"elm.text", "default", 0.0);
11111                set_int(button_state, BUTTON_STATE_ENABLED);
11112             }
11113          }
11114          program { name: "focused";
11115             //signal: "elm,action,focus";
11116             //source: "elm";
11117             action: STATE_SET "focused" 0.0;
11118             target: "button_image";
11119             target: "elm.text";
11120          }
11121          program { name: "unfocused";
11122             //signal: "elm,action,unfocus";
11123             //source: "elm";
11124             action: STATE_SET "default" 0.0;
11125             target: "button_image";
11126             after: "unfocus_text";
11127          }
11128          program { name: "unfocus_text";
11129             action: STATE_SET "visible" 0.0;
11130             target: "elm.text";
11131          }
11132       }
11133    }
11134
11135 #undef BUTTON_STATE_ENABLED
11136 #undef BUTTON_STATE_DISABLED