[Button] Modified back button style according to white theme.
[framework/uifw/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 group { name: "elm/button/base/searchbar/default";
3208       images {
3209          image: "00_search_input_field_bg.png" COMP;
3210          image: "00_button_sweep_press.png" COMP;
3211          image: "00_button_sweep_dim.png" COMP;
3212          image: "00_button_sweep_focus.png" COMP;
3213       }
3214       script {
3215          public button_state = BUTTON_STATE_ENABLED;
3216       }
3217       parts {
3218          part { name: "button_image";
3219             scale: 1;
3220             description { state: "default" 0.0;
3221                min: BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC;
3222                image {
3223                   normal: "00_search_input_field_bg.png";
3224                   border: BUTTON_SEARCHBAR_BG_BORDER_INC;
3225                   border_scale: 1;
3226                }
3227             }
3228             description { state: "clicked" 0.0;
3229                inherit: "default" 0.0;
3230                image {
3231                   normal: "00_button_sweep_press.png";
3232                   border: BUTTON_SWEEP_BG_BORDER_INC;
3233                   border_scale: 1;
3234                }
3235             }
3236             description { state: "disabled" 0.0;
3237                inherit: "default" 0.0;
3238                image {
3239                   normal: "00_button_sweep_dim.png";
3240                   border: BUTTON_SWEEP_BG_BORDER_INC;
3241                   border_scale: 1;
3242                }
3243             }
3244             description { state: "focused" 0.0;
3245                inherit: "default" 0.0;
3246                image {
3247                   normal: "00_button_sweep_focus.png";
3248                   border: BUTTON_SWEEP_BG_BORDER_INC;
3249                   border_scale: 1;
3250                }
3251             }
3252          }
3253          part { name: "padding_left_top";
3254             type: RECT;
3255             scale: 1;
3256             mouse_events: 0;
3257             description { state: "default" 0.0;
3258                align: 0.0 0.0;
3259                rel2.relative: 0.0 0.0;
3260                min: BUTTON_SEARCHBAR_PADDING_MIN_INC;
3261                fixed: 1 1;
3262                visible: 0;
3263             }
3264          }
3265          part { name: "padding_right_bottom";
3266             type: RECT;
3267             scale: 1;
3268             mouse_events: 0;
3269             description { state: "default" 0.0;
3270                align: 1.0 1.0;
3271                rel1.relative: 1.0 1.0;
3272                min: BUTTON_SEARCHBAR_PADDING_MIN_INC;
3273                fixed: 1 1;
3274                visible: 0;
3275             }
3276          }
3277          part { name: "icon_rect";
3278             type: RECT;
3279             scale: 1;
3280             mouse_events: 0;
3281             description { state: "default" 0.0;
3282                min: BUTTON_SEARCHBAR_ICON_RECT_MIN_INC;
3283                fixed: 1 0;
3284                rel1 {
3285                   relative: 0.0 1.0;
3286                   to_x: "elm.swallow.content";
3287                   to_y: "padding_left_top";
3288                }
3289                rel2 {
3290                   relative: 1.0 0.0;
3291                   to_x: "elm.swallow.content";
3292                   to_y: "padding_right_bottom";
3293                }
3294                align: 0.0 0.5;
3295                color: 0 0 0 0;
3296             }
3297          }
3298          part { name: "padding_icon_text";
3299             type: RECT;
3300             scale: 1;
3301             mouse_events: 0;
3302             description { state: "default" 0.0; //when only icon or no icon is there
3303                align: 0.0 0.0;
3304                rel1 {
3305                   relative: 1.0 0.0;
3306                   to: "icon_rect";
3307                }
3308                rel2.to: "icon_rect";
3309                fixed: 1 0;
3310                min: 0 0;
3311                color: 0 0 0 0;
3312             }
3313             description { state: "icononly" 0.0;
3314                inherit: "default" 0.0;
3315             }
3316             description { state: "visible" 0.0; //when icon is visible
3317                align: 0.0 0.0;
3318                rel1 {
3319                   relative: 1.0 0.0;
3320                   to: "icon_rect";
3321                }
3322                rel2.to: "icon_rect";
3323                fixed: 1 0;
3324                min: BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
3325                color: 0 0 0 0;
3326             }
3327          }
3328          part { name: "elm.swallow.content";
3329             type: SWALLOW;
3330             scale: 1;
3331             clip_to: "clipper";
3332             description { state: "default" 0.0;
3333                visible: 0;
3334                align: 0.0 0.5;
3335                rel1 {
3336                   relative: 1.0 1.0;
3337                   to: "padding_left_top";
3338                }
3339                rel2 {
3340                   relative: 1.0 0.0;
3341                   to_x: "padding_left_top";
3342                   to_y: "padding_right_bottom";
3343                }
3344                fixed: 1 0;
3345             }
3346             description { state: "visible" 0.0;
3347                fixed: 1 0;
3348                align: 0.0 0.5;
3349                rel1 {
3350                   relative: 1.0 1.0;
3351                   to: "padding_left_top";
3352                }
3353                rel2 {
3354                   relative: 1.0 0.0;
3355                   to_x: "padding_left_top";
3356                   to_y: "padding_right_bottom";
3357                }
3358                aspect: 1.0 1.0;
3359                aspect_preference: VERTICAL;
3360             }
3361             description { state: "icononly" 0.0;
3362                min: BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC;
3363                rel1 {
3364                   relative: 1.0 1.0;
3365                   to: "padding_left_top";
3366                }
3367                rel2 {
3368                   relative: 1.0 0.0;
3369                   to_x: "padding_left_top";
3370                   to_y: "padding_right_bottom";
3371                }
3372             }
3373          }
3374          part { name: "elm.text";
3375             type: TEXT;
3376             mouse_events: 0;
3377             scale: 1;
3378             clip_to: "clipper";
3379             description { state: "default" 0.0;
3380                visible: 0;
3381                rel1 {
3382                   relative: 1.0 1.0;
3383                   to_x: "padding_icon_text";
3384                   to_y: "padding_left_top";
3385                }
3386                rel2 {
3387                   relative: 0.0 0.0;
3388                   to: "padding_right_bottom";
3389                }
3390                color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC;
3391                text {
3392                   font: "SLP:style=Medium";
3393                   size: BUTTON_SEARCHBAR_FONT_SIZE_INC;
3394                   min: 0 0;
3395                   text_class: "slp_medium";
3396                }
3397             }
3398             description { state: "visible" 0.0;
3399                inherit: "default" 0.0;
3400                visible: 1;
3401                min: BUTTON_SEARCHBAR_TEXT_MIN_INC;
3402             }
3403             description { state: "clicked" 0.0;
3404                inherit: "default" 0.0;
3405                visible: 1;
3406                min: 0 0;
3407                color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC;
3408             }
3409             description { state: "disabled" 0.0;
3410                inherit: "default" 0.0;
3411                color: 0 0 0 128;
3412             }
3413             description { state: "disabled_visible" 0.0;
3414                inherit: "default" 0.0;
3415                color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC;
3416                visible: 1;
3417                min: BUTTON_SWEEP_TEXT_MIN_INC;
3418             }
3419             description { state: "focused" 0.0;
3420                inherit: "default" 0.0;
3421                visible: 1;
3422                min: 0 0;
3423                color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC;
3424             }
3425          }
3426          part { name: "over2";
3427             type: RECT;
3428             repeat_events: 1;
3429             ignore_flags: ON_HOLD;
3430             description { state: "default" 0.0;
3431                color: 0 0 0 0;
3432             }
3433          }
3434          part { name: "over3";
3435             type: RECT;
3436             repeat_events: 1;
3437             description { state: "default" 0.0;
3438                color: 0 0 0 0;
3439             }
3440          }
3441          part { name: "clipper";
3442             type: RECT;
3443             description { state: "default" 0.0;
3444                color: 255 255 255 255;
3445             }
3446          }
3447          part { name: "disabler";
3448             type: RECT;
3449             description { state: "default" 0.0;
3450                color: 0 0 0 0;
3451                visible: 0;
3452             }
3453             description { state: "disabled" 0.0;
3454                inherit: "default" 0.0;
3455                visible: 1;
3456             }
3457          }
3458       }
3459       programs {
3460          program { name: "button_click";
3461             signal: "mouse,down,1";
3462             source: "over2";
3463             action: SIGNAL_EMIT "elm,action,press" "";
3464             after: "button_click_anim";
3465          }
3466          program { name: "button_click_anim";
3467             action: STATE_SET "clicked" 0.0;
3468             target: "button_image";
3469             after: "text_clicked";
3470          }
3471          program { name: "text_clicked";
3472             script {
3473                new st[31];
3474                new Float:vl;
3475                get_state(PART:"elm.text", st, 30, vl);
3476                if (!strcmp(st, "visible"))
3477                  set_state(PART:"elm.text", "clicked", 0.0);
3478             }
3479          }
3480          program { name: "button_unpress";
3481             action: SIGNAL_EMIT "elm,action,unpress" "";
3482          }
3483          program { name: "button_mouseout_clicked";
3484             signal: "mouse,up,1";
3485             source: "over3";
3486             script {
3487                new st[31];
3488                new Float:vl;
3489                get_state(PART:"elm.swallow.content", st, 30, vl);
3490                if (strcmp(st, "icononly"))
3491                  {
3492                     emit("elm,action,default,text,set", "");
3493                     set_state(PART:"elm.text", "visible", 0.0);
3494                  }
3495                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3496                  set_state(PART:"button_image", "default", 0.0);
3497             }
3498             after: button_unpress;
3499          }
3500          program { name: "touch_snd";
3501             signal: "mouse,clicked,1";
3502             source: "over2";
3503             action: PLAY_SAMPLE "touch_sound" 1.0;
3504             after: button_unclick3;
3505          }
3506          program { name: "button_unclick3";
3507             action: SIGNAL_EMIT "elm,action,click" "";
3508          }
3509          program { name: "text_show";
3510             signal: "elm,state,text,visible";
3511             source: "elm";
3512             script {
3513                new st[31];
3514                new Float:vl;
3515                get_state(PART:"elm.swallow.content", st, 30, vl);
3516                if (!strcmp(st, "icononly"))
3517                  {
3518                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3519                     set_state(PART:"padding_icon_text", "visible", 0.0);
3520                  }
3521                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3522                  set_state(PART:"elm.text", "visible", 0.0);
3523                else
3524                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3525             }
3526          }
3527          program { name: "text_hide";
3528             signal: "elm,state,text,hidden";
3529             source: "elm";
3530             script {
3531                new st[31];
3532                new Float:vl;
3533                get_state(PART:"elm.swallow.content", st, 30, vl);
3534                if (!strcmp(st, "visible"))
3535                  {
3536                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3537                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3538                  }
3539                set_state(PART:"elm.text", "default", 0.0);
3540             }
3541          }
3542          program { name: "icon_show";
3543             signal: "elm,state,icon,visible";
3544             source: "elm";
3545             script {
3546                new st[31];
3547                new Float:vl;
3548                get_state(PART:"elm.text", st, 30, vl);
3549                if (!strcmp(st, "visible"))
3550                  {
3551                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3552                     set_state(PART:"padding_icon_text", "visible", 0.0);
3553                  }
3554                else
3555                  {
3556                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3557                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3558                  }
3559             }
3560          }
3561          program { name: "icon_hide";
3562             signal: "elm,state,icon,hidden";
3563             source: "elm";
3564             action: STATE_SET "default" 0.0;
3565             target: "elm.swallow.content";
3566             target: "padding_icon_text";
3567          }
3568          program { name: "disable";
3569             signal: "elm,state,disabled";
3570             source: "elm";
3571             action: STATE_SET "disabled" 0.0;
3572             target: "button_image";
3573             target: "disabler";
3574             after: "disable_text";
3575          }
3576          program { name: "disable_text";
3577             script {
3578                new st[31];
3579                new Float:vl;
3580                get_state(PART:"elm.text", st, 30, vl);
3581                if (!strcmp(st, "visible"))
3582                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3583                else
3584                  set_state(PART:"elm.text", "disabled", 0.0);
3585                set_int(button_state, BUTTON_STATE_DISABLED);
3586             }
3587          }
3588          program { name: "enable";
3589             signal: "elm,state,enabled";
3590             source: "elm";
3591             action: STATE_SET "default" 0.0;
3592             target: "button_image";
3593             target: "disabler";
3594             after: "enable_text";
3595          }
3596          program { name: "enable_text";
3597             script {
3598                new st[31];
3599                new Float:vl;
3600                get_state(PART:"elm.text", st, 30, vl);
3601                if (!strcmp(st, "disabled_visible"))
3602                  set_state(PART:"elm.text", "visible", 0.0);
3603                else
3604                  set_state(PART:"elm.text", "default", 0.0);
3605                set_int(button_state, BUTTON_STATE_ENABLED);
3606             }
3607          }
3608          program { name: "focused";
3609             //signal: "elm,action,focus";
3610             //source: "elm";
3611             action: STATE_SET "focused" 0.0;
3612             target: "button_image";
3613             target: "elm.text";
3614          }
3615          program { name: "unfocused";
3616             //signal: "elm,action,unfocus";
3617             //source: "elm";
3618             action: STATE_SET "default" 0.0;
3619             target: "button_image";
3620             after: "unfocus_text";
3621          }
3622          program { name: "unfocus_text";
3623             action: STATE_SET "visible" 0.0;
3624             target: "elm.text";
3625          }
3626       }
3627    }
3628
3629 ///////////////////////////////////////////////////////////////////////////////////////
3630    group { name: "elm/button/base/sweep/delete";
3631       images {
3632          image: "00_button_sweep_dim.png" COMP;
3633          image: "00_button_sweep_delete.png" COMP;
3634          image: "00_button_sweep_delete_press.png" COMP;
3635          image: "00_button_sweep_focus.png" COMP;
3636       }
3637       script {
3638          public button_state = BUTTON_STATE_ENABLED;
3639       }
3640       parts {
3641          part { name: "button_image";
3642             scale: 1;
3643             description { state: "default" 0.0;
3644                min: BUTTON_SWEEP_BG_NORMAL_MIN_INC;
3645                image {
3646                   normal: "00_button_sweep_delete.png";
3647                   border: BUTTON_SWEEP_BG_BORDER_INC;
3648                   border_scale: 1;
3649                }
3650             }
3651             description { state: "clicked" 0.0;
3652                inherit: "default" 0.0;
3653                image.normal: "00_button_sweep_delete_press.png";
3654             }
3655             description { state: "disabled" 0.0;
3656                inherit: "default" 0.0;
3657                image.normal: "00_button_sweep_dim.png";
3658             }
3659             description { state: "focused" 0.0;
3660                inherit: "default" 0.0;
3661                image.normal: "00_button_sweep_focus.png";
3662             }
3663          }
3664          part { name: "padding_left_top";
3665             type: RECT;
3666             scale: 1;
3667             mouse_events: 0;
3668             description { state: "default" 0.0;
3669                align: 0.0 0.0;
3670                rel2.relative: 0.0 0.0;
3671                min: BUTTON_SWEEP_PADDING_MIN_INC;
3672                fixed: 1 1;
3673                visible: 0;
3674             }
3675          }
3676          part { name: "padding_right_bottom";
3677             type: RECT;
3678             scale: 1;
3679             mouse_events: 0;
3680             description { state: "default" 0.0;
3681                align: 1.0 1.0;
3682                rel1.relative: 1.0 1.0;
3683                min: BUTTON_SWEEP_PADDING_MIN_INC;
3684                fixed: 1 1;
3685                visible: 0;
3686             }
3687          }
3688          part { name: "icon_rect";
3689             type: RECT;
3690             scale: 1;
3691             mouse_events: 0;
3692             description { state: "default" 0.0;
3693                min: BUTTON_SWEEP_ICON_RECT_MIN_INC;
3694                fixed: 1 0;
3695                rel1 {
3696                   relative: 0.0 1.0;
3697                   to_x: "elm.swallow.content";
3698                   to_y: "padding_left_top";
3699                }
3700                rel2 {
3701                   relative: 1.0 0.0;
3702                   to_x: "elm.swallow.content";
3703                   to_y: "padding_right_bottom";
3704                }
3705                align: 0.0 0.5;
3706                color: 0 0 0 0;
3707             }
3708          }
3709          part { name: "padding_icon_text";
3710             type: RECT;
3711             scale: 1;
3712             mouse_events: 0;
3713             description { state: "default" 0.0; //when only icon or no icon is there
3714                align: 0.0 0.0;
3715                rel1 {
3716                   relative: 1.0 0.0;
3717                   to: "icon_rect";
3718                }
3719                rel2.to: "icon_rect";
3720                fixed: 1 0;
3721                min: 0 0;
3722                color: 0 0 0 0;
3723             }
3724             description { state: "icononly" 0.0;
3725                inherit: "default" 0.0;
3726             }
3727             description { state: "visible" 0.0; //when icon is visible
3728                align: 0.0 0.0;
3729                rel1 {
3730                   relative: 1.0 0.0;
3731                   to: "icon_rect";
3732                }
3733                rel2.to: "icon_rect";
3734                fixed: 1 0;
3735                min: BUTTON_SWEEP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
3736                color: 0 0 0 0;
3737             }
3738          }
3739          part { name: "elm.swallow.content";
3740             type: SWALLOW;
3741             scale: 1;
3742             clip_to: "clipper";
3743             description { state: "default" 0.0;
3744                visible: 0;
3745                align: 0.0 0.5;
3746                rel1 {
3747                   relative: 1.0 1.0;
3748                   to: "padding_left_top";
3749                }
3750                rel2 {
3751                   relative: 1.0 0.0;
3752                   to_x: "padding_left_top";
3753                   to_y: "padding_right_bottom";
3754                }
3755                fixed: 1 0;
3756             }
3757             description { state: "visible" 0.0;
3758                fixed: 1 0;
3759                align: 0.0 0.5;
3760                rel1 {
3761                   relative: 1.0 1.0;
3762                   to: "padding_left_top";
3763                }
3764                rel2 {
3765                   relative: 1.0 0.0;
3766                   to_x: "padding_left_top";
3767                   to_y: "padding_right_bottom";
3768                }
3769                aspect: 1.0 1.0;
3770                aspect_preference: VERTICAL;
3771             }
3772             description { state: "icononly" 0.0;
3773                min: BUTTON_SWEEP_ICONONLY_ICON_MIN_INC;
3774                rel1 {
3775                   relative: 1.0 1.0;
3776                   to: "padding_left_top";
3777                }
3778                rel2 {
3779                   relative: 1.0 0.0;
3780                   to_x: "padding_left_top";
3781                   to_y: "padding_right_bottom";
3782                }
3783             }
3784          }
3785          part { name: "elm.text";
3786             type: TEXT;
3787             mouse_events: 0;
3788             scale: 1;
3789             clip_to: "clipper";
3790             description { state: "default" 0.0;
3791                rel1 {
3792                   relative: 1.0 1.0;
3793                   to_x: "padding_icon_text";
3794                   to_y: "padding_left_top";
3795                }
3796                rel2 {
3797                   relative: 0.0 0.0;
3798                   to: "padding_right_bottom";
3799                }
3800                color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC;
3801                text {
3802                   font: "SLP:style=Medium";
3803                   size: BUTTON_SWEEP_FONT_SIZE_INC;
3804                   min: 1 0;
3805                   text: "Delete";
3806                   max: 1 0;
3807                   text_class: "slp_medium";
3808                }
3809             }
3810             description { state: "visible" 0.0;
3811                inherit: "default" 0.0;
3812             }
3813             description { state: "clicked" 0.0;
3814                inherit: "default" 0.0;
3815                color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC;
3816             }
3817             description { state: "disabled" 0.0;
3818                inherit: "default" 0.0;
3819                color: 0 0 0 128;
3820             }
3821             description { state: "disabled_visible" 0.0;
3822                inherit: "default" 0.0;
3823                color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC;
3824             }
3825             description { state: "focused" 0.0;
3826                inherit: "default" 0.0;
3827                visible: 1;
3828                min: 0 0;
3829                color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC;
3830             }
3831          }
3832          part { name: "over2";
3833             type: RECT;
3834             repeat_events: 1;
3835             ignore_flags: ON_HOLD;
3836             description { state: "default" 0.0;
3837                color: 0 0 0 0;
3838             }
3839          }
3840          part { name: "over3";
3841             type: RECT;
3842             repeat_events: 1;
3843             description { state: "default" 0.0;
3844                color: 0 0 0 0;
3845             }
3846          }
3847          part { name: "clipper";
3848             type: RECT;
3849             description { state: "default" 0.0;
3850                color: 255 255 255 255;
3851             }
3852          }
3853          part { name: "disabler";
3854             type: RECT;
3855             description { state: "default" 0.0;
3856                color: 0 0 0 0;
3857                visible: 0;
3858             }
3859             description { state: "disabled" 0.0;
3860                inherit: "default" 0.0;
3861                visible: 1;
3862             }
3863          }
3864       }
3865       programs {
3866          program { name: "button_click";
3867             signal: "mouse,down,1";
3868             source: "over2";
3869             action: SIGNAL_EMIT "elm,action,press" "";
3870             after: "button_click_anim";
3871          }
3872          program { name: "button_click_anim";
3873             action: STATE_SET "clicked" 0.0;
3874             target: "button_image";
3875             after: "text_clicked";
3876          }
3877          program { name: "text_clicked";
3878             script {
3879                new st[31];
3880                new Float:vl;
3881                get_state(PART:"elm.text", st, 30, vl);
3882                if (!strcmp(st, "visible"))
3883                  set_state(PART:"elm.text", "clicked", 0.0);
3884             }
3885          }
3886          program { name: "button_unpress";
3887             action: SIGNAL_EMIT "elm,action,unpress" "";
3888          }
3889          program { name: "button_mouseout_clicked";
3890             signal: "mouse,up,1";
3891             source: "over3";
3892             script {
3893                new st[31];
3894                new Float:vl;
3895                get_state(PART:"elm.swallow.content", st, 30, vl);
3896                if (strcmp(st, "icononly"))
3897                  {
3898                     emit("elm,action,default,text,set", "");
3899                     set_state(PART:"elm.text", "visible", 0.0);
3900                  }
3901                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3902                  set_state(PART:"button_image", "default", 0.0);
3903             }
3904             after: button_unpress;
3905          }
3906          program { name: "touch_snd";
3907             signal: "mouse,clicked,1";
3908             source: "over2";
3909             action: PLAY_SAMPLE "touch_sound" 1.0;
3910             after: button_unclick3;
3911          }
3912          program { name: "button_unclick3";
3913             action: SIGNAL_EMIT "elm,action,click" "";
3914          }
3915          program { name: "text_show";
3916             signal: "elm,state,text,visible";
3917             source: "elm";
3918             script {
3919                new st[31];
3920                new Float:vl;
3921                get_state(PART:"elm.swallow.content", st, 30, vl);
3922                if (!strcmp(st, "icononly"))
3923                  {
3924                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3925                     set_state(PART:"padding_icon_text", "visible", 0.0);
3926                  }
3927                if (get_int(button_state) != BUTTON_STATE_DISABLED)
3928                  set_state(PART:"elm.text", "visible", 0.0);
3929                else
3930                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3931             }
3932          }
3933          program { name: "text_hide";
3934             signal: "elm,state,text,hidden";
3935             source: "elm";
3936             script {
3937                new st[31];
3938                new Float:vl;
3939                get_state(PART:"elm.swallow.content", st, 30, vl);
3940                if (!strcmp(st, "visible"))
3941                  {
3942                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3943                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3944                  }
3945                set_state(PART:"elm.text", "default", 0.0);
3946             }
3947          }
3948          program { name: "icon_show";
3949             signal: "elm,state,icon,visible";
3950             source: "elm";
3951             script {
3952                new st[31];
3953                new Float:vl;
3954                get_state(PART:"elm.text", st, 30, vl);
3955                if (!strcmp(st, "visible"))
3956                  {
3957                     set_state(PART:"elm.swallow.content", "visible", 0.0);
3958                     set_state(PART:"padding_icon_text", "visible", 0.0);
3959                  }
3960                else
3961                  {
3962                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
3963                     set_state(PART:"padding_icon_text", "icononly", 0.0);
3964                  }
3965             }
3966          }
3967          program { name: "icon_hide";
3968             signal: "elm,state,icon,hidden";
3969             source: "elm";
3970             action: STATE_SET "default" 0.0;
3971             target: "elm.swallow.content";
3972             target: "padding_icon_text";
3973          }
3974          program { name: "disable";
3975             signal: "elm,state,disabled";
3976             source: "elm";
3977             action: STATE_SET "disabled" 0.0;
3978             target: "button_image";
3979             target: "disabler";
3980             after: "disable_text";
3981          }
3982          program { name: "disable_text";
3983             script {
3984                new st[31];
3985                new Float:vl;
3986                get_state(PART:"elm.text", st, 30, vl);
3987                if (!strcmp(st, "visible"))
3988                  set_state(PART:"elm.text", "disabled_visible", 0.0);
3989                else
3990                  set_state(PART:"elm.text", "disabled", 0.0);
3991                set_int(button_state, BUTTON_STATE_DISABLED);
3992             }
3993          }
3994          program { name: "enable";
3995             signal: "elm,state,enabled";
3996             source: "elm";
3997             action: STATE_SET "default" 0.0;
3998             target: "button_image";
3999             target: "disabler";
4000             after: "enable_text";
4001          }
4002          program { name: "enable_text";
4003             script {
4004                new st[31];
4005                new Float:vl;
4006                get_state(PART:"elm.text", st, 30, vl);
4007                if (!strcmp(st, "disabled_visible"))
4008                  set_state(PART:"elm.text", "visible", 0.0);
4009                else
4010                  set_state(PART:"elm.text", "default", 0.0);
4011                set_int(button_state, BUTTON_STATE_ENABLED);
4012             }
4013          }
4014          program { name: "focused";
4015             //signal: "elm,action,focus";
4016             //source: "elm";
4017             action: STATE_SET "focused" 0.0;
4018             target: "button_image";
4019             target: "elm.text";
4020          }
4021          program { name: "unfocused";
4022             //signal: "elm,action,unfocus";
4023             //source: "elm";
4024             action: STATE_SET "default" 0.0;
4025             target: "button_image";
4026             after: "unfocus_text";
4027          }
4028          program { name: "unfocus_text";
4029             action: STATE_SET "visible" 0.0;
4030             target: "elm.text";
4031          }
4032       }
4033    }
4034
4035 ///////////////////////////////////////////////////////////////////////////////////////
4036    group { name: "elm/button/base/popup_button/default";
4037       alias: "elm/button/base/popup_button/menustyle";
4038       alias: "elm/button/base/popup_button/liststyle";
4039       alias: "elm/button/base/popup_button/volumebarstyle";
4040       alias: "elm/button/base/popup_button/customstyle";
4041       alias: "elm/button/base/popup_button/verticalbuttonstyle";
4042       images {
4043          image: "00_button_popup_normal.png" COMP;
4044          image: "00_button_popup_press.png" COMP;
4045          image: "00_button_popup_normal_focus.png" COMP;
4046          image: "00_button_popup_dim.png" COMP;
4047       }
4048       script {
4049          public button_state = BUTTON_STATE_ENABLED;
4050       }
4051       parts {
4052          part { name: "button_image";
4053             scale: 1;
4054             description { state: "default" 0.0;
4055                min: BUTTON_POPUP_BG_NORMAL_MIN_INC;
4056                image {
4057                   normal: "00_button_popup_normal.png";
4058                   border: BUTTON_POPUP_BG_BORDER_INC;
4059                   border_scale: 1;
4060                }
4061             }
4062             description { state: "clicked" 0.0;
4063                inherit: "default" 0.0;
4064                image.normal: "00_button_popup_press.png";
4065             }
4066             description { state: "disabled" 0.0;
4067                inherit: "default" 0.0;
4068                image.normal: "00_button_popup_dim.png";
4069             }
4070             description { state: "focused" 0.0;
4071                inherit: "default" 0.0;
4072                image.normal: "00_button_popup_normal_focus.png";
4073             }
4074          }
4075          part { name: "padding_left_top";
4076             type: RECT;
4077             scale: 1;
4078             mouse_events: 0;
4079             description { state: "default" 0.0;
4080                align: 0.0 0.0;
4081                rel2.relative: 0.0 0.0;
4082                min: BUTTON_POPUP_PADDING_MIN_INC;
4083                fixed: 1 1;
4084                visible: 0;
4085             }
4086          }
4087          part { name: "padding_right_bottom";
4088             type: RECT;
4089             scale: 1;
4090             description { state: "default" 0.0;
4091                align: 1.0 0.0;
4092                rel1.relative: 1.0 1.0;
4093                min: BUTTON_POPUP_PADDING_MIN_INC;
4094                fixed: 1 1;
4095                visible: 0;
4096             }
4097          }
4098          part { name: "padding_icon_text";
4099             type: RECT;
4100             scale: 1;
4101             description { state: "default" 0.0; //when only icon or no icon is there
4102                align: 0.0 0.0;
4103                rel1 {
4104                   relative: 1.0 0.0;
4105                   to: "elm.swallow.content";
4106                }
4107                rel2.to: "elm.swallow.content";
4108                fixed: 1 0;
4109                min: 0 0;
4110                visible: 0;
4111             }
4112             description { state: "icononly" 0.0;
4113                inherit: "default" 0.0;
4114             }
4115             description { state: "visible" 0.0; //when icon is visible
4116                inherit: "default" 0.0;
4117                min: BUTTON_POPUP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
4118             }
4119          }
4120          part { name: "elm.swallow.content";
4121             type: SWALLOW;
4122             scale: 1;
4123             clip_to: "clipper";
4124             description { state: "default" 0.0;
4125                visible: 0;
4126                align: 0.0 0.5;
4127                rel1 {
4128                   relative: 1.0 1.0;
4129                   to: "padding_left_top";
4130                }
4131                rel2 {
4132                   relative: 1.0 0.0;
4133                   to_x: "padding_left_top";
4134                   to_y: "padding_right_bottom";
4135                }
4136                fixed: 1 0;
4137             }
4138             description { state: "visible" 0.0;
4139                inherit: "default" 0.0;
4140                fixed: 1 0;
4141                visible: 1;
4142                aspect: 1.0 1.0;
4143                aspect_preference: VERTICAL;
4144             }
4145             description { state: "icononly" 0.0;
4146                min: BUTTON_POPUP_ICON_ICONONLY_MIN_INC;
4147                rel1 {
4148                   relative: 1.0 1.0;
4149                   to: "padding_left_top";
4150                }
4151                rel2 {
4152                   relative: 1.0 0.0;
4153                   to_x: "padding_left_top";
4154                   to_y: "padding_right_bottom";
4155                }
4156             }
4157          }
4158          part { name: "elm.text";
4159             type: TEXT;
4160             mouse_events: 0;
4161             scale: 1;
4162             clip_to: "clipper";
4163             description { state: "default" 0.0;
4164                visible: 0;
4165                rel1 {
4166                   relative: 1.0 1.0;
4167                   to_x: "padding_icon_text";
4168                   to_y: "padding_left_top";
4169                }
4170                rel2 {
4171                   relative: 0.0 0.0;
4172                   to: "padding_right_bottom";
4173                }
4174                color: BUTTON_POPUP_BUTTON_TEXT_NORMAL_COLOR_INC;
4175                text {
4176                   font: "SLP:style=Medium";
4177                   size: BUTTON_POPUP_TEXT_FONT_SIZE_INC;
4178                   min: 0 0;
4179                   text_class: "slp_medium";
4180                }
4181             }
4182             description { state: "visible" 0.0;
4183                inherit: "default" 0.0;
4184                visible: 1;
4185                min: BUTTON_POPUP_TEXT_MIN_INC;
4186             }
4187             description { state: "clicked" 0.0;
4188                inherit: "default" 0.0;
4189                visible: 1;
4190                min: 0 0;
4191                color: BUTTON_POPUP_BUTTON_TEXT_PRESSED_COLOR_INC;
4192             }
4193             description { state: "disabled" 0.0;
4194                inherit: "default" 0.0;
4195                color: 0 0 0 128;
4196             }
4197             description { state: "disabled_visible" 0.0;
4198                inherit: "default" 0.0;
4199                color: BUTTON_POPUP_BUTTON_TEXT_DISABLED_COLOR_INC;
4200                visible: 1;
4201                min: BUTTON_POPUP_TEXT_MIN_INC;
4202             }
4203             description { state: "focused" 0.0;
4204                inherit: "default" 0.0;
4205                visible: 1;
4206                min: 0 0;
4207                color: BUTTON_POPUP_BUTTON_TEXT_FOCUSED_COLOR_INC;
4208             }
4209          }
4210          part { name: "over2";
4211             type: RECT;
4212             repeat_events: 1;
4213             ignore_flags: ON_HOLD;
4214             description { state: "default" 0.0;
4215                color: 0 0 0 0;
4216             }
4217          }
4218          part { name: "over3";
4219             type: RECT;
4220             repeat_events: 1;
4221             description { state: "default" 0.0;
4222                color: 0 0 0 0;
4223             }
4224          }
4225          part { name: "clipper";
4226             type: RECT;
4227             description { state: "default" 0.0;
4228                color: 255 255 255 255;
4229             }
4230          }
4231          part { name: "disabler";
4232             type: RECT;
4233             description { state: "default" 0.0;
4234                color: 0 0 0 0;
4235                visible: 0;
4236             }
4237             description { state: "disabled" 0.0;
4238                inherit: "default" 0.0;
4239                visible: 1;
4240             }
4241          }
4242       }
4243       programs {
4244          program { name: "button_click";
4245             signal: "mouse,down,1";
4246             source: "over2";
4247             action: SIGNAL_EMIT "elm,action,press" "";
4248             after: "button_click_anim";
4249          }
4250          program { name: "button_click_anim";
4251             action: STATE_SET "clicked" 0.0;
4252             target: "button_image";
4253             after: "text_clicked";
4254          }
4255          program { name: "text_clicked";
4256             script {
4257                new st[31];
4258                new Float:vl;
4259                get_state(PART:"elm.text", st, 30, vl);
4260                if (!strcmp(st, "visible"))
4261                  set_state(PART:"elm.text", "clicked", 0.0);
4262             }
4263          }
4264          program { name: "button_unpress";
4265             action: SIGNAL_EMIT "elm,action,unpress" "";
4266          }
4267          program { name: "button_mouseout_clicked";
4268             signal: "mouse,up,1";
4269             source: "over3";
4270             script {
4271                new st[31];
4272                new Float:vl;
4273                get_state(PART:"elm.swallow.content", st, 30, vl);
4274                if (strcmp(st, "icononly"))
4275                  {
4276                     emit("elm,action,default,text,set", "");
4277                     set_state(PART:"elm.text", "visible", 0.0);
4278                  }
4279                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4280                  set_state(PART:"button_image", "default", 0.0);
4281             }
4282             after: button_unpress;
4283          }
4284          program { name: "touch_snd";
4285             signal: "mouse,clicked,1";
4286             source: "over2";
4287             action: PLAY_SAMPLE "touch_sound" 1.0;
4288             after: button_unclick3;
4289          }
4290          program { name: "button_unclick3";
4291             action: SIGNAL_EMIT "elm,action,click" "";
4292          }
4293          program { name: "text_show";
4294             signal: "elm,state,text,visible";
4295             source: "elm";
4296             script {
4297                new st[31];
4298                new Float:vl;
4299                get_state(PART:"elm.swallow.content", st, 30, vl);
4300                if (!strcmp(st, "icononly"))
4301                  {
4302                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4303                     set_state(PART:"padding_icon_text", "visible", 0.0);
4304                  }
4305                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4306                  set_state(PART:"elm.text", "visible", 0.0);
4307                else
4308                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4309             }
4310          }
4311          program { name: "text_hide";
4312             signal: "elm,state,text,hidden";
4313             source: "elm";
4314             script {
4315                new st[31];
4316                new Float:vl;
4317                get_state(PART:"elm.swallow.content", st, 30, vl);
4318                if (!strcmp(st, "visible"))
4319                  {
4320                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4321                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4322                  }
4323                set_state(PART:"elm.text", "default", 0.0);
4324             }
4325          }
4326          program { name: "icon_show";
4327             signal: "elm,state,icon,visible";
4328             source: "elm";
4329             script {
4330                new st[31];
4331                new Float:vl;
4332                get_state(PART:"elm.text", st, 30, vl);
4333                if (!strcmp(st, "visible"))
4334                  {
4335                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4336                     set_state(PART:"padding_icon_text", "visible", 0.0);
4337                  }
4338                else
4339                  {
4340                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4341                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4342                  }
4343             }
4344          }
4345          program { name: "icon_hide";
4346             signal: "elm,state,icon,hidden";
4347             source: "elm";
4348             action: STATE_SET "default" 0.0;
4349             target: "elm.swallow.content";
4350             target: "padding_icon_text";
4351          }
4352          program { name: "disable";
4353             signal: "elm,state,disabled";
4354             source: "elm";
4355             action: STATE_SET "disabled" 0.0;
4356             target: "button_image";
4357             target: "disabler";
4358             after: "disable_text";
4359          }
4360          program { name: "disable_text";
4361             script {
4362                new st[31];
4363                new Float:vl;
4364                get_state(PART:"elm.text", st, 30, vl);
4365                if (!strcmp(st, "visible"))
4366                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4367                else
4368                  set_state(PART:"elm.text", "disabled", 0.0);
4369                set_int(button_state, BUTTON_STATE_DISABLED);
4370             }
4371          }
4372          program { name: "enable";
4373             signal: "elm,state,enabled";
4374             source: "elm";
4375             action: STATE_SET "default" 0.0;
4376             target: "button_image";
4377             target: "disabler";
4378             after: "enable_text";
4379          }
4380          program { name: "enable_text";
4381             script {
4382                new st[31];
4383                new Float:vl;
4384                get_state(PART:"elm.text", st, 30, vl);
4385                if (!strcmp(st, "disabled_visible"))
4386                  set_state(PART:"elm.text", "visible", 0.0);
4387                else
4388                  set_state(PART:"elm.text", "default", 0.0);
4389                set_int(button_state, BUTTON_STATE_ENABLED);
4390             }
4391          }
4392          program { name: "focused";
4393             //signal: "elm,action,focus";
4394             //source: "elm";
4395             action: STATE_SET "focused" 0.0;
4396             target: "button_image";
4397             target: "elm.text";
4398          }
4399          program { name: "unfocused";
4400             //signal: "elm,action,unfocus";
4401             //source: "elm";
4402             action: STATE_SET "default" 0.0;
4403             target: "button_image";
4404             after: "unfocus_text";
4405          }
4406          program { name: "unfocus_text";
4407             action: STATE_SET "visible" 0.0;
4408             target: "elm.text";
4409          }
4410       }
4411    }
4412 ///////////////////////////////////////////////////////////////////////////////////////
4413    group { name: "elm/button/base/popup_button/default/multiline";
4414       images {
4415          image: "00_button_popup_normal.png" COMP;
4416          image: "00_button_popup_press.png" COMP;
4417          image: "00_button_popup_normal_focus.png" COMP;
4418          image: "00_button_popup_dim.png" COMP;
4419       }
4420       styles{
4421          style { name: "btn_popup_multiline_style";
4422             base: "font=SLP:style=Roman font_size="BUTTON_POPUP_MULTILINE_TEXT_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed text_class=slp_roman";
4423             tag: "br" "\n";
4424             tag: "ps" "ps";
4425             tag: "tab" "\t";
4426          }
4427       }
4428       script {
4429          public button_state = BUTTON_STATE_ENABLED;
4430       }
4431       parts {
4432          part { name: "button_image";
4433             scale: 1;
4434             description { state: "default" 0.0;
4435                min: BUTTON_POPUP_BG_NORMAL_MIN_INC;
4436                image {
4437                   normal: "00_button_popup_normal.png";
4438                   border: BUTTON_POPUP_BG_BORDER_INC;
4439                   border_scale: 1;
4440                }
4441             }
4442             description { state: "clicked" 0.0;
4443                inherit: "default" 0.0;
4444                image.normal: "00_button_popup_press.png";
4445             }
4446             description { state: "disabled" 0.0;
4447                inherit: "default" 0.0;
4448                image.normal: "00_button_popup_dim.png";
4449             }
4450             description { state: "focused" 0.0;
4451                inherit: "default" 0.0;
4452                image.normal: "00_button_popup_normal_focus.png";
4453             }
4454          }
4455          part { name: "padding_left_top";
4456             type: RECT;
4457             scale: 1;
4458             mouse_events: 0;
4459             description { state: "default" 0.0;
4460                align: 0.0 0.0;
4461                rel2.relative: 0.0 0.0;
4462                min: BUTTON_POPUP_PADDING_MIN_INC;
4463                fixed: 1 1;
4464                visible: 0;
4465             }
4466          }
4467          part { name: "padding_right_bottom";
4468             type: RECT;
4469             scale: 1;
4470             description { state: "default" 0.0;
4471                align: 1.0 0.0;
4472                rel1.relative: 1.0 1.0;
4473                min: BUTTON_POPUP_PADDING_MIN_INC;
4474                fixed: 1 1;
4475                visible: 0;
4476             }
4477          }
4478          part { name: "padding_icon_text";
4479             type: RECT;
4480             scale: 1;
4481             description { state: "default" 0.0; //when only icon or no icon is there
4482                align: 0.0 0.0;
4483                rel1 {
4484                   relative: 1.0 0.0;
4485                   to: "elm.swallow.content";
4486                }
4487                rel2.to: "elm.swallow.content";
4488                fixed: 1 0;
4489                min: 0 0;
4490                visible: 0;
4491             }
4492             description { state: "icononly" 0.0;
4493                inherit: "default" 0.0;
4494             }
4495             description { state: "visible" 0.0; //when icon is visible
4496                inherit: "default" 0.0;
4497                min: BUTTON_POPUP_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
4498             }
4499          }
4500          part { name: "elm.swallow.content";
4501             type: SWALLOW;
4502             scale: 1;
4503             clip_to: "clipper";
4504             description { state: "default" 0.0;
4505                visible: 0;
4506                align: 0.0 0.5;
4507                rel1 {
4508                   relative: 1.0 1.0;
4509                   to: "padding_left_top";
4510                }
4511                rel2 {
4512                   relative: 1.0 0.0;
4513                   to_x: "padding_left_top";
4514                   to_y: "padding_right_bottom";
4515                }
4516                fixed: 1 0;
4517             }
4518             description { state: "visible" 0.0;
4519                inherit: "default" 0.0;
4520                fixed: 1 0;
4521                visible: 1;
4522                aspect: 1.0 1.0;
4523                aspect_preference: VERTICAL;
4524             }
4525             description { state: "icononly" 0.0;
4526                min: BUTTON_POPUP_ICON_ICONONLY_MIN_INC;
4527                rel1 {
4528                   relative: 1.0 1.0;
4529                   to: "padding_left_top";
4530                }
4531                rel2 {
4532                   relative: 1.0 0.0;
4533                   to_x: "padding_left_top";
4534                   to_y: "padding_right_bottom";
4535                }
4536             }
4537          }
4538          part { name: "elm.text";
4539             type: TEXTBLOCK;
4540             mouse_events: 0;
4541             scale: 1;
4542             clip_to: "clipper";
4543             description { state: "default" 0.0;
4544                visible: 0;
4545                rel1 {
4546                   relative: 1.0 1.0;
4547                   to_x: "padding_icon_text";
4548                   to_y: "padding_left_top";
4549                }
4550                rel2 {
4551                   relative: 0.0 0.0;
4552                   to: "padding_right_bottom";
4553                }
4554                color: BUTTON_POPUP_BUTTON_TEXT_NORMAL_COLOR_INC;
4555                text {
4556                   style: "btn_popup_multiline_style";
4557                   min: 0 0;
4558                   max: 0 1;
4559                }
4560             }
4561             description { state: "visible" 0.0;
4562                inherit: "default" 0.0;
4563                visible: 1;
4564                min: BUTTON_POPUP_TEXT_MIN_INC;
4565             }
4566             description { state: "clicked" 0.0;
4567                inherit: "default" 0.0;
4568                visible: 1;
4569                min: 0 0;
4570                color: BUTTON_POPUP_BUTTON_TEXT_PRESSED_COLOR_INC;
4571             }
4572             description { state: "disabled" 0.0;
4573                inherit: "default" 0.0;
4574                color: 0 0 0 128;
4575             }
4576             description { state: "disabled_visible" 0.0;
4577                inherit: "default" 0.0;
4578                color: BUTTON_POPUP_BUTTON_TEXT_DISABLED_COLOR_INC;
4579                visible: 1;
4580                min: BUTTON_POPUP_TEXT_MIN_INC;
4581             }
4582             description { state: "focused" 0.0;
4583                inherit: "default" 0.0;
4584                visible: 1;
4585                min: 0 0;
4586                color: BUTTON_POPUP_BUTTON_TEXT_FOCUSED_COLOR_INC;
4587             }
4588          }
4589          part { name: "over2";
4590             type: RECT;
4591             repeat_events: 1;
4592             ignore_flags: ON_HOLD;
4593             description { state: "default" 0.0;
4594                color: 0 0 0 0;
4595             }
4596          }
4597          part { name: "over3";
4598             type: RECT;
4599             repeat_events: 1;
4600             description { state: "default" 0.0;
4601                color: 0 0 0 0;
4602             }
4603          }
4604          part { name: "clipper";
4605             type: RECT;
4606             description { state: "default" 0.0;
4607                color: 255 255 255 255;
4608             }
4609          }
4610          part { name: "disabler";
4611             type: RECT;
4612             description { state: "default" 0.0;
4613                color: 0 0 0 0;
4614                visible: 0;
4615             }
4616             description { state: "disabled" 0.0;
4617                inherit: "default" 0.0;
4618                visible: 1;
4619             }
4620          }
4621       }
4622       programs {
4623          program { name: "button_click";
4624             signal: "mouse,down,1";
4625             source: "over2";
4626             action: SIGNAL_EMIT "elm,action,press" "";
4627             after: "button_click_anim";
4628          }
4629          program { name: "button_click_anim";
4630             action: STATE_SET "clicked" 0.0;
4631             target: "button_image";
4632             after: "text_clicked";
4633          }
4634          program { name: "text_clicked";
4635             script {
4636                new st[31];
4637                new Float:vl;
4638                get_state(PART:"elm.text", st, 30, vl);
4639                if (!strcmp(st, "visible"))
4640                  set_state(PART:"elm.text", "clicked", 0.0);
4641             }
4642          }
4643          program { name: "button_unpress";
4644             action: SIGNAL_EMIT "elm,action,unpress" "";
4645          }
4646          program { name: "button_mouseout_clicked";
4647             signal: "mouse,up,1";
4648             source: "over3";
4649             script {
4650                new st[31];
4651                new Float:vl;
4652                get_state(PART:"elm.swallow.content", st, 30, vl);
4653                if (strcmp(st, "icononly"))
4654                  {
4655                     emit("elm,action,default,text,set", "");
4656                     set_state(PART:"elm.text", "visible", 0.0);
4657                  }
4658                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4659                  set_state(PART:"button_image", "default", 0.0);
4660             }
4661             after: button_unpress;
4662          }
4663          program { name: "touch_snd";
4664             signal: "mouse,clicked,1";
4665             source: "over2";
4666             action: PLAY_SAMPLE "touch_sound" 1.0;
4667             after: button_unclick3;
4668          }
4669          program { name: "button_unclick3";
4670             action: SIGNAL_EMIT "elm,action,click" "";
4671          }
4672          program { name: "text_show";
4673             signal: "elm,state,text,visible";
4674             source: "elm";
4675             script {
4676                new st[31];
4677                new Float:vl;
4678                get_state(PART:"elm.swallow.content", st, 30, vl);
4679                if (!strcmp(st, "icononly"))
4680                  {
4681                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4682                     set_state(PART:"padding_icon_text", "visible", 0.0);
4683                  }
4684                if (get_int(button_state) != BUTTON_STATE_DISABLED)
4685                  set_state(PART:"elm.text", "visible", 0.0);
4686                else
4687                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4688             }
4689          }
4690          program { name: "text_hide";
4691             signal: "elm,state,text,hidden";
4692             source: "elm";
4693             script {
4694                new st[31];
4695                new Float:vl;
4696                get_state(PART:"elm.swallow.content", st, 30, vl);
4697                if (!strcmp(st, "visible"))
4698                  {
4699                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4700                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4701                  }
4702                set_state(PART:"elm.text", "default", 0.0);
4703             }
4704          }
4705          program { name: "icon_show";
4706             signal: "elm,state,icon,visible";
4707             source: "elm";
4708             script {
4709                new st[31];
4710                new Float:vl;
4711                get_state(PART:"elm.text", st, 30, vl);
4712                if (!strcmp(st, "visible"))
4713                  {
4714                     set_state(PART:"elm.swallow.content", "visible", 0.0);
4715                     set_state(PART:"padding_icon_text", "visible", 0.0);
4716                  }
4717                else
4718                  {
4719                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
4720                     set_state(PART:"padding_icon_text", "icononly", 0.0);
4721                  }
4722             }
4723          }
4724          program { name: "icon_hide";
4725             signal: "elm,state,icon,hidden";
4726             source: "elm";
4727             action: STATE_SET "default" 0.0;
4728             target: "elm.swallow.content";
4729             target: "padding_icon_text";
4730          }
4731          program { name: "disable";
4732             signal: "elm,state,disabled";
4733             source: "elm";
4734             action: STATE_SET "disabled" 0.0;
4735             target: "button_image";
4736             target: "disabler";
4737             after: "disable_text";
4738          }
4739          program { name: "disable_text";
4740             script {
4741                new st[31];
4742                new Float:vl;
4743                get_state(PART:"elm.text", st, 30, vl);
4744                if (!strcmp(st, "visible"))
4745                  set_state(PART:"elm.text", "disabled_visible", 0.0);
4746                else
4747                  set_state(PART:"elm.text", "disabled", 0.0);
4748                set_int(button_state, BUTTON_STATE_DISABLED);
4749             }
4750          }
4751          program { name: "enable";
4752             signal: "elm,state,enabled";
4753             source: "elm";
4754             action: STATE_SET "default" 0.0;
4755             target: "button_image";
4756             target: "disabler";
4757             after: "enable_text";
4758          }
4759          program { name: "enable_text";
4760             script {
4761                new st[31];
4762                new Float:vl;
4763                get_state(PART:"elm.text", st, 30, vl);
4764                if (!strcmp(st, "disabled_visible"))
4765                  set_state(PART:"elm.text", "visible", 0.0);
4766                else
4767                  set_state(PART:"elm.text", "default", 0.0);
4768                set_int(button_state, BUTTON_STATE_ENABLED);
4769             }
4770          }
4771          program { name: "focused";
4772             //signal: "elm,action,focus";
4773             //source: "elm";
4774             action: STATE_SET "focused" 0.0;
4775             target: "button_image";
4776             target: "elm.text";
4777          }
4778          program { name: "unfocused";
4779             //signal: "elm,action,unfocus";
4780             //source: "elm";
4781             action: STATE_SET "default" 0.0;
4782             target: "button_image";
4783             after: "unfocus_text";
4784          }
4785          program { name: "unfocus_text";
4786             action: STATE_SET "visible" 0.0;
4787             target: "elm.text";
4788          }
4789       }
4790    }
4791
4792 ///////////////////////////////////////////////////////////////////////////////////////
4793 #define BUTTON_CIRCLE_STYLES(style_name, circle_normal, circle_press, image_normal, image_press, min_width, min_height) \
4794    group { name: "elm/button/base/"style_name; \
4795       images { \
4796          image: circle_normal COMP; \
4797          image: circle_press COMP; \
4798          image: image_normal COMP; \
4799          image: image_press COMP; \
4800       } \
4801       parts { \
4802          part { name: "button_image"; \
4803             scale: 1; \
4804             description { state: "default" 0.0; \
4805                min: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC; \
4806                max: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC; \
4807                image.normal: circle_normal; \
4808                color: 255 255 255 255; \
4809             } \
4810             description { \
4811                state: "clicked" 0.0; \
4812                inherit: "default" 0.0; \
4813                image.normal: circle_press; \
4814             } \
4815             description { \
4816                state: "disabled" 0.0; \
4817                inherit: "default" 0.0; \
4818                color: 255 255 255 128; \
4819             } \
4820          } \
4821          part { name: "button_center_part"; \
4822             scale: 1; \
4823             description { state: "default" 0.0; \
4824                min: BUTTON_CIRCLE_STYLE_IMAGE_MIN_MAX_INC; \
4825                max: BUTTON_CIRCLE_STYLE_IMAGE_MIN_MAX_INC; \
4826                image.normal: image_normal; \
4827                color: 255 255 255 255; \
4828             } \
4829             description { \
4830                state: "clicked" 0.0; \
4831                inherit: "default" 0.0; \
4832                image.normal: image_press; \
4833             } \
4834             description { \
4835                state: "disabled" 0.0; \
4836                inherit: "default" 0.0; \
4837                color: 255 255 255 128; \
4838             } \
4839          } \
4840          part { name: "over1"; \
4841             type: RECT; \
4842             ignore_flags: ON_HOLD; \
4843             description { state: "default" 0.0; \
4844                color: 0 0 0 0; \
4845                min: min_width min_height; \
4846             } \
4847          } \
4848          part { name: "over2"; \
4849             repeat_events: 1; \
4850             description { state: "default" 0.0; \
4851                color: 0 0 0 0; \
4852             } \
4853          } \
4854          part { name: "disabler"; \
4855             type: RECT; \
4856             description { state: "default" 0.0; \
4857                color: 0 0 0 0; \
4858                visible: 0; \
4859             } \
4860             description { state: "disabled" 0.0; \
4861                inherit: "default" 0.0; \
4862                visible: 1; \
4863             } \
4864          } \
4865       } \
4866       programs { \
4867          program { name: "button_click"; \
4868             signal: "mouse,down,1"; \
4869             source: "over1"; \
4870             action: SIGNAL_EMIT "elm,action,press" ""; \
4871             after: "button_click_anim"; \
4872          } \
4873          program { name: "button_click_anim"; \
4874             action: STATE_SET "clicked" 0.0; \
4875             target: "button_image"; \
4876             target: "button_center_part"; \
4877          } \
4878          program { name: "button_unclick"; \
4879             signal: "mouse,up,1"; \
4880             source: "over2"; \
4881             action: SIGNAL_EMIT "elm,action,unpress" ""; \
4882             after: "button_unclick_anim"; \
4883          } \
4884          program { name: "button_unclick_anim"; \
4885             action: STATE_SET "default" 0.0; \
4886             target: "button_image"; \
4887             target: "button_center_part"; \
4888          } \
4889          program { name: "touch_snd"; \
4890             signal: "mouse,clicked,1"; \
4891             source: "over1"; \
4892             action: PLAY_SAMPLE "touch_sound" 1.0; \
4893             after: button_unclick3; \
4894          } \
4895          program { name: "button_unclick3"; \
4896             action: SIGNAL_EMIT "elm,action,click" ""; \
4897          } \
4898          program { name: "disable"; \
4899             signal: "elm,state,disabled"; \
4900             source: "elm"; \
4901             action: STATE_SET "disabled" 0.0; \
4902             target: "disabler"; \
4903             target: "button_image"; \
4904             target: "button_center_part"; \
4905          } \
4906          program { name: "enable"; \
4907             signal: "elm,state,enabled"; \
4908             source: "elm"; \
4909             action: STATE_SET "default" 0.0; \
4910             target: "disabler"; \
4911             target: "button_image"; \
4912             target: "button_center_part"; \
4913          } \
4914       } \
4915    }
4916
4917 ///////////////////////////////////////////////////////////////////////////////////////
4918    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", 40, 40)
4919
4920 ///////////////////////////////////////////////////////////////////////////////////////
4921    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", 60, 70)
4922
4923 ///////////////////////////////////////////////////////////////////////////////////////
4924    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", 40, 40)
4925
4926 ///////////////////////////////////////////////////////////////////////////////////////
4927    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", 60, 70)
4928
4929 ///////////////////////////////////////////////////////////////////////////////////////
4930    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", 40, 40)
4931
4932 ///////////////////////////////////////////////////////////////////////////////////////
4933    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", 60, 70)
4934
4935 ///////////////////////////////////////////////////////////////////////////////////////
4936    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", 40, 40)
4937
4938 ///////////////////////////////////////////////////////////////////////////////////////
4939    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", 60, 70)
4940
4941 ///////////////////////////////////////////////////////////////////////////////////////
4942    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", 40, 40)
4943
4944 ///////////////////////////////////////////////////////////////////////////////////////
4945    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", 60, 70)
4946
4947 ///////////////////////////////////////////////////////////////////////////////////////
4948    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", 40, 40)
4949
4950 ///////////////////////////////////////////////////////////////////////////////////////
4951    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", 60, 70)
4952
4953 ///////////////////////////////////////////////////////////////////////////////////////
4954    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", 40, 40)
4955
4956 ///////////////////////////////////////////////////////////////////////////////////////
4957    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", 60, 70)
4958
4959 ///////////////////////////////////////////////////////////////////////////////////////
4960    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", 40, 40)
4961
4962 ///////////////////////////////////////////////////////////////////////////////////////
4963    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", 60, 70)
4964
4965 ///////////////////////////////////////////////////////////////////////////////////////
4966    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", 40, 40)
4967
4968 ///////////////////////////////////////////////////////////////////////////////////////
4969    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", 60, 70)
4970
4971 ///////////////////////////////////////////////////////////////////////////////////////
4972    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", 40, 40)
4973
4974 ///////////////////////////////////////////////////////////////////////////////////////
4975    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", 60, 70)
4976
4977 ///////////////////////////////////////////////////////////////////////////////////////
4978    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", 40, 40)
4979
4980 ///////////////////////////////////////////////////////////////////////////////////////
4981    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", 60, 70)
4982 ///////////////////////////////////////////////////////////////////////////////////////
4983
4984    group { name: "elm/button/base/circle/empty";
4985       images {
4986          image: "00_btn_circle_bg_normal.png" COMP;
4987          image: "00_btn_circle_bg_press.png" COMP;
4988       }
4989       parts {
4990          part { name: "button_image";
4991             scale: 1;
4992             description { state: "default" 0.0;
4993                min: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC;
4994                max: BUTTON_CIRCLE_STYLE_BG_MIN_MAX_INC;
4995                fixed: 1 1;
4996                image.normal: "00_btn_circle_bg_normal.png";
4997                color: 255 255 255 255;
4998             }
4999             description { state: "clicked" 0.0;
5000                inherit: "default" 0.0;
5001                image.normal: "00_btn_circle_bg_press.png";
5002             }
5003             description { state: "disabled" 0.0;
5004                inherit: "default" 0.0;
5005                color: 255 255 255 128;
5006             }
5007          }
5008          part { name: "elm.swallow.content";
5009             type: SWALLOW;
5010             scale: 1;
5011             description { state: "default" 0.0;
5012                min: BUTTON_CIRCLE_STYLE_CONTENT_MIN_MAX_INC;
5013                max: BUTTON_CIRCLE_STYLE_CONTENT_MIN_MAX_INC;
5014                fixed: 1 1;
5015                color: 255 255 255 255;
5016             }
5017             description {
5018                state: "disabled" 0.0;
5019                inherit: "default" 0.0;
5020                color: 255 255 255 128;
5021             }
5022          }
5023          part { name: "over1";
5024             type: RECT;
5025             ignore_flags: ON_HOLD;
5026             description { state: "default" 0.0;
5027                color: 0 0 0 0;
5028             }
5029          }
5030          part { name: "over2";
5031             repeat_events: 1;
5032             description { state: "default" 0.0;
5033                color: 0 0 0 0;
5034             }
5035          }
5036          part { name: "disabler";
5037             type: RECT;
5038             description { state: "default" 0.0;
5039                color: 0 0 0 0;
5040                visible: 0;
5041             }
5042             description { state: "disabled" 0.0;
5043                inherit: "default" 0.0;
5044                visible: 1;
5045             }
5046          }
5047       }
5048       programs {
5049          program { name: "button_click";
5050             signal: "mouse,down,1";
5051             source: "over1";
5052             action: SIGNAL_EMIT "elm,action,press" "";
5053             after: "button_click_anim";
5054          }
5055          program { name: "button_click_anim";
5056             action: STATE_SET "clicked" 0.0;
5057             target: "button_image";
5058          }
5059          program { name: "touch_snd";
5060             signal: "mouse,clicked,1";
5061             source: "over1";
5062             action: PLAY_SAMPLE "touch_sound" 1.0;
5063             after: button_unclick2;
5064          }
5065          program { name: "button_unclick2";
5066             action: SIGNAL_EMIT "elm,action,click" "";
5067          }
5068          program { name: "button_unclick";
5069             signal: "mouse,up,1";
5070             source: "over2";
5071             action: SIGNAL_EMIT "elm,action,unpress" "";
5072             after: "button_unclick_anim";
5073          }
5074          program { name: "button_unclick_anim";
5075             action: STATE_SET "default" 0.0;
5076             target: "button_image";
5077          }
5078          program { name: "disable";
5079             signal: "elm,state,disabled";
5080             source: "elm";
5081             action: STATE_SET "disabled" 0.0;
5082             target: "disabler";
5083             target: "button_image";
5084          }
5085          program { name: "enable";
5086             signal: "elm,state,enabled";
5087             source: "elm";
5088             action: STATE_SET "default" 0.0;
5089             target: "disabler";
5090             target: "button_image";
5091          }
5092          program { name: "icon_show";
5093             signal: "elm,state,icon,visible";
5094             source: "elm";
5095             action: STATE_SET "visible" 0.0;
5096             target: "elm.swallow.content";
5097          }
5098          program { name: "icon_hide";
5099             signal: "elm,state,icon,hidden";
5100             source: "elm";
5101             action: STATE_SET "default" 0.0;
5102             target: "elm.swallow.content";
5103          }
5104       }
5105    }
5106
5107 ///////////////////////////////////////////////////////////////////////////////////////
5108 #define BUTTON_EDIT_STYLES(style_name, edit_normal, edit_press, image_normal, image_press, min_width, min_height) \
5109    group { name: "elm/button/base/contacts/"style_name; \
5110    alias: "elm/button/base/"style_name; \
5111       images { \
5112          image: image_normal COMP; \
5113          image: image_press COMP; \
5114          image: edit_normal COMP; \
5115          image: edit_press COMP; \
5116          image: "00_button_edit_dim.png" COMP; \
5117          image: "00_button_edit_focus.png" COMP; \
5118       } \
5119       parts { \
5120          part { name: "button_image"; \
5121             scale: 1; \
5122             description { state: "default" 0.0; \
5123                min: BUTTON_EDIT_STYLE_BG_NORMAL_MIN_MAX_INC; \
5124                max: BUTTON_EDIT_STYLE_BG_NORMAL_MIN_MAX_INC; \
5125                image { \
5126                   normal: edit_normal; \
5127                   border: BUTTON_EDIT_STYLE_BORDER_INC; \
5128                   border_scale: 1; \
5129                } \
5130             } \
5131             description { \
5132                state: "clicked" 0.0; \
5133                inherit: "default" 0.0; \
5134                image.normal: edit_press; \
5135             } \
5136             description { \
5137                state: "disabled" 0.0; \
5138                inherit: "default" 0.0; \
5139                image.normal: "00_button_edit_dim.png"; \
5140             } \
5141             description { \
5142                state: "focused" 0.0; \
5143                inherit: "default" 0.0; \
5144                image.normal: "00_button_edit_focus.png"; \
5145             } \
5146          } \
5147          part { name: "button_center_part"; \
5148             mouse_events: 0; \
5149             scale: 1; \
5150             description { state: "default" 0.0; \
5151                min: BUTTON_EDIT_STYLE_IMAGE_NORMAL_MIN_MAX_INC; \
5152                max: BUTTON_EDIT_STYLE_IMAGE_NORMAL_MIN_MAX_INC; \
5153                image { \
5154                   normal: image_normal; \
5155                   border: BUTTON_EDIT_STYLE_BORDER_INC; \
5156                   border_scale: 1; \
5157                } \
5158             } \
5159             description { \
5160                state: "clicked" 0.0; \
5161                inherit: "default" 0.0; \
5162                image.normal: image_press; \
5163             } \
5164          } \
5165          part { name: "over1"; \
5166             type: RECT; \
5167             repeat_events: 1; \
5168             ignore_flags: ON_HOLD; \
5169             description { state: "default" 0.0; \
5170                color: 0 0 0 0; \
5171                min: min_width min_height; \
5172             } \
5173          } \
5174          part { name: "over2"; \
5175             repeat_events: 1; \
5176             description { state: "default" 0.0; \
5177                color: 0 0 0 0; \
5178             } \
5179          } \
5180          part { name: "disabler"; \
5181             type: RECT; \
5182             description { state: "default" 0.0; \
5183                color: 0 0 0 0; \
5184                visible: 0; \
5185             } \
5186             description { state: "disabled" 0.0; \
5187                inherit: "default" 0.0; \
5188                visible: 1; \
5189             } \
5190          } \
5191       } \
5192       programs { \
5193          program { name: "button_click"; \
5194             signal: "mouse,down,1"; \
5195             source: "over1"; \
5196             action: SIGNAL_EMIT "elm,action,press" ""; \
5197             after: "button_click_anim"; \
5198          } \
5199          program { name: "button_click_anim"; \
5200             action: STATE_SET "clicked" 0.0; \
5201             target: "button_image"; \
5202             target: "button_center_part"; \
5203          } \
5204          program { name: "button_unclick"; \
5205             signal: "mouse,up,1"; \
5206             source: "over2"; \
5207             action: SIGNAL_EMIT "elm,action,unpress" ""; \
5208             after: "button_unclick_anim"; \
5209          } \
5210          program { name: "button_unclick_anim"; \
5211             action: STATE_SET "default" 0.0; \
5212             target: "button_image"; \
5213             target: "button_center_part"; \
5214          } \
5215          program { name: "touch_snd"; \
5216             signal: "mouse,clicked,1"; \
5217             source: "over1"; \
5218             action: PLAY_SAMPLE "touch_sound" 1.0; \
5219             after: button_unclick3; \
5220          } \
5221          program { name: "button_unclick3"; \
5222             action: SIGNAL_EMIT "elm,action,click" ""; \
5223          } \
5224          program { name: "disable"; \
5225             signal: "elm,state,disabled"; \
5226             source: "elm"; \
5227             action: STATE_SET "disabled" 0.0; \
5228             target: "disabler"; \
5229             target: "button_image"; \
5230          } \
5231          program { name: "enable"; \
5232             signal: "elm,state,enabled"; \
5233             source: "elm"; \
5234             action: STATE_SET "default" 0.0; \
5235             target: "disabler"; \
5236             target: "button_image"; \
5237          } \
5238       } \
5239    }
5240 ///////////////////////////////////////////////////////////////////////////////////////
5241    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)
5242
5243 ///////////////////////////////////////////////////////////////////////////////////////
5244    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)
5245
5246 ///////////////////////////////////////////////////////////////////////////////////////
5247    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)
5248
5249 ///////////////////////////////////////////////////////////////////////////////////////
5250    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)
5251
5252 ///////////////////////////////////////////////////////////////////////////////////////
5253    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)
5254
5255 ///////////////////////////////////////////////////////////////////////////////////////
5256    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)
5257
5258 ///////////////////////////////////////////////////////////////////////////////////////
5259    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)
5260
5261 ///////////////////////////////////////////////////////////////////////////////////////
5262    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)
5263
5264 ///////////////////////////////////////////////////////////////////////////////////////
5265    group { name: "elm/button/base/contacts/delete";
5266       images {
5267          image: "00_button_edit_Delete.png" COMP;
5268          image: "00_button_edit_Delete_press.png" COMP;
5269          image: "00_button_edit_dim.png" COMP;
5270          image: "00_button_edit_focus.png" COMP;
5271       }
5272       script {
5273          public button_state = BUTTON_STATE_ENABLED;
5274       }
5275       parts {
5276          part { name: "button_image";
5277             scale: 1;
5278             description { state: "default" 0.0;
5279                min: BUTTON_CONTACT_DELETE_BG_NORMAL_MIN_INC;
5280                image {
5281                   normal: "00_button_edit_Delete.png";
5282                   border: BUTTON_CONTACT_DELETE_BG_BORDER_INC;
5283                   border_scale: 1;
5284                }
5285             }
5286             description { state: "clicked" 0.0;
5287                inherit: "default" 0.0;
5288                image.normal: "00_button_edit_Delete_press.png";
5289             }
5290             description { state: "disabled" 0.0;
5291                inherit: "default" 0.0;
5292                image.normal: "00_button_edit_dim.png";
5293             }
5294             description { state: "focused" 0.0;
5295                inherit: "default" 0.0;
5296                image.normal: "00_button_edit_focus.png";
5297             }
5298          }
5299          part { name: "padding_left_top";
5300             type: RECT;
5301             scale: 1;
5302             mouse_events: 0;
5303             description { state: "default" 0.0;
5304                align: 0.0 0.0;
5305                rel2.relative: 0.0 0.0;
5306                min: BUTTON_CONTACT_DELETE_PADDING_LEFT_TOP_MIN_INC;
5307                fixed: 1 1;
5308                visible: 0;
5309             }
5310          }
5311          part { name: "padding_right_bottom";
5312             type: RECT;
5313             scale: 1;
5314             mouse_events: 0;
5315             description { state: "default" 0.0;
5316                align: 1.0 1.0;
5317                rel1.relative: 1.0 1.0;
5318                min: BUTTON_CONTACT_DELETE_PADDING_RIGHT_BOTTOM_MIN_INC;
5319                fixed: 1 1;
5320                visible: 0;
5321             }
5322          }
5323          part { name: "padding_icon_text";
5324             type: RECT;
5325             scale: 1;
5326             mouse_events: 0;
5327             description { state: "default" 0.0; //when only icon or no icon is there
5328                align: 0.0 0.0;
5329                rel1 {
5330                   relative: 1.0 0.0;
5331                   to: "elm.swallow.content";
5332                }
5333                rel2.to: "elm.swallow.content";
5334                fixed: 1 0;
5335                min: 0 0;
5336                visible: 0;
5337             }
5338             description { state: "icononly" 0.0;
5339                inherit: "default" 0.0;
5340             }
5341             description { state: "visible" 0.0; //when icon is visible
5342                inherit: "default" 0.0;
5343                min: BUTTON_CONTACT_DELETE_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
5344             }
5345          }
5346          part { name: "elm.swallow.content";
5347             type: SWALLOW;
5348             scale: 1;
5349             clip_to: "clipper";
5350             description { state: "default" 0.0;
5351                visible: 0;
5352                align: 0.0 0.5;
5353                rel1 {
5354                   relative: 1.0 1.0;
5355                   to: "padding_left_top";
5356                }
5357                rel2 {
5358                   relative: 1.0 0.0;
5359                   to_x: "padding_left_top";
5360                   to_y: "padding_right_bottom";
5361                }
5362                fixed: 1 0;
5363             }
5364             description { state: "visible" 0.0;
5365                fixed: 1 0;
5366                align: 0.0 0.5;
5367                rel1 {
5368                   relative: 1.0 1.0;
5369                   to: "padding_left_top";
5370                }
5371                rel2 {
5372                   relative: 1.0 0.0;
5373                   to_x: "padding_left_top";
5374                   to_y: "padding_right_bottom";
5375                }
5376                aspect: 1.0 1.0;
5377                aspect_preference: VERTICAL;
5378             }
5379             description { state: "icononly" 0.0;
5380                min: BUTTON_CONTACT_DELETE_ICON_ICONONLY_MIN_INC;
5381                rel1 {
5382                   relative: 1.0 1.0;
5383                   to: "padding_left_top";
5384                }
5385                rel2 {
5386                   relative: 0.0 0.0;
5387                   to: "padding_right_bottom";
5388                }
5389                aspect: 1.0 1.0;
5390                aspect_preference: VERTICAL;
5391             }
5392          }
5393          part { name: "elm.text";
5394             type: TEXT;
5395             mouse_events: 0;
5396             scale: 1;
5397             clip_to: "clipper";
5398             description { state: "default" 0.0;
5399                rel1 {
5400                   relative: 1.0 1.0;
5401                   to_x: "padding_icon_text";
5402                   to_y: "padding_left_top";
5403                }
5404                rel2 {
5405                   relative: 0.0 0.0;
5406                   to: "padding_right_bottom";
5407                }
5408                color: BUTTON_TEXT_CONTACTS_DELETE_NORMAL_COLOR_INC;
5409                text {
5410                   font: "SLP:style=Medium";
5411                   size: BUTTON_CONTACT_DELETE_FONT_SIZE_INC;
5412                   min: 1 0;
5413                   text: "Delete";
5414                   max: 1 0;
5415                   text_class: "slp_medium";
5416                }
5417             }
5418             description { state: "visible" 0.0;
5419                inherit: "default" 0.0;
5420             }
5421             description { state: "clicked" 0.0;
5422                inherit: "default" 0.0;
5423                color: BUTTON_TEXT_CONTACTS_DELETE_PRESSED_COLOR_INC;
5424             }
5425             description { state: "disabled" 0.0;
5426                inherit: "default" 0.0;
5427                color: 0 0 0 128;
5428             }
5429             description { state: "disabled_visible" 0.0;
5430                inherit: "default" 0.0;
5431                color: BUTTON_TEXT_CONTACTS_DELETE_DISABLED_COLOR_INC;
5432             }
5433             description { state: "focused" 0.0;
5434                inherit: "default" 0.0;
5435                min: 0 0;
5436                color: BUTTON_TEXT_CONTACTS_DELETE_PRESSED_COLOR_INC;
5437             }
5438          }
5439          part { name: "over2";
5440             type: RECT;
5441             repeat_events: 1;
5442             ignore_flags: ON_HOLD;
5443             description { state: "default" 0.0;
5444                color: 0 0 0 0;
5445             }
5446          }
5447          part { name: "over3";
5448             type: RECT;
5449             repeat_events: 1;
5450             description { state: "default" 0.0;
5451                color: 0 0 0 0;
5452             }
5453          }
5454          part { name: "clipper";
5455             type: RECT;
5456             description { state: "default" 0.0;
5457                color: 255 255 255 255;
5458             }
5459          }
5460          part { name: "disabler";
5461             type: RECT;
5462             description { state: "default" 0.0;
5463                color: 0 0 0 0;
5464                visible: 0;
5465             }
5466             description { state: "disabled" 0.0;
5467                inherit: "default" 0.0;
5468                visible: 1;
5469             }
5470          }
5471       }
5472       programs {
5473          program { name: "button_click";
5474             signal: "mouse,down,1";
5475             source: "over2";
5476             action: SIGNAL_EMIT "elm,action,press" "";
5477             after: "button_click_anim";
5478          }
5479          program { name: "button_click_anim";
5480             action: STATE_SET "clicked" 0.0;
5481             target: "button_image";
5482             after: "text_clicked";
5483          }
5484          program { name: "text_clicked";
5485             script {
5486                new st[31];
5487                new Float:vl;
5488                get_state(PART:"elm.text", st, 30, vl);
5489                if (!strcmp(st, "visible"))
5490                  set_state(PART:"elm.text", "clicked", 0.0);
5491             }
5492          }
5493          program { name: "button_unpress";
5494             action: SIGNAL_EMIT "elm,action,unpress" "";
5495          }
5496          program { name: "button_mouseout_clicked";
5497             signal: "mouse,up,1";
5498             source: "over3";
5499             script {
5500                new st[31];
5501                new Float:vl;
5502                get_state(PART:"elm.swallow.content", st, 30, vl);
5503                if (strcmp(st, "icononly"))
5504                  {
5505                     emit("elm,action,default,text,set", "");
5506                     set_state(PART:"elm.text", "visible", 0.0);
5507                  }
5508                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5509                  set_state(PART:"button_image", "default", 0.0);
5510             }
5511             after: button_unpress;
5512          }
5513          program { name: "touch_snd";
5514             signal: "mouse,clicked,1";
5515             source: "over2";
5516             action: PLAY_SAMPLE "touch_sound" 1.0;
5517             after: button_unclick3;
5518          }
5519          program { name: "button_unclick3";
5520             action: SIGNAL_EMIT "elm,action,click" "";
5521          }
5522          program { name: "text_show";
5523             signal: "elm,state,text,visible";
5524             source: "elm";
5525             script {
5526                new st[31];
5527                new Float:vl;
5528                get_state(PART:"elm.swallow.content", st, 30, vl);
5529                if (!strcmp(st, "icononly"))
5530                  {
5531                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5532                     set_state(PART:"padding_icon_text", "visible", 0.0);
5533                  }
5534                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5535                  set_state(PART:"elm.text", "visible", 0.0);
5536                else
5537                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5538             }
5539          }
5540          program { name: "text_hide";
5541             signal: "elm,state,text,hidden";
5542             source: "elm";
5543             script {
5544                new st[31];
5545                new Float:vl;
5546                get_state(PART:"elm.swallow.content", st, 30, vl);
5547                if (!strcmp(st, "visible"))
5548                  {
5549                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5550                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5551                  }
5552                set_state(PART:"elm.text", "default", 0.0);
5553             }
5554          }
5555          program { name: "icon_show";
5556             signal: "elm,state,icon,visible";
5557             source: "elm";
5558             script {
5559                new st[31];
5560                new Float:vl;
5561                get_state(PART:"elm.text", st, 30, vl);
5562                if (!strcmp(st, "visible"))
5563                  {
5564                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5565                     set_state(PART:"padding_icon_text", "visible", 0.0);
5566                  }
5567                else
5568                  {
5569                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5570                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5571                  }
5572             }
5573          }
5574          program { name: "icon_hide";
5575             signal: "elm,state,icon,hidden";
5576             source: "elm";
5577             action: STATE_SET "default" 0.0;
5578             target: "elm.swallow.content";
5579             target: "padding_icon_text";
5580          }
5581          program { name: "disable";
5582             signal: "elm,state,disabled";
5583             source: "elm";
5584             action: STATE_SET "disabled" 0.0;
5585             target: "button_image";
5586             target: "disabler";
5587             after: "disable_text";
5588          }
5589          program { name: "disable_text";
5590             script {
5591                new st[31];
5592                new Float:vl;
5593                get_state(PART:"elm.text", st, 30, vl);
5594                if (!strcmp(st, "visible"))
5595                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5596                else
5597                  set_state(PART:"elm.text", "disabled", 0.0);
5598                set_int(button_state, BUTTON_STATE_DISABLED);
5599             }
5600          }
5601          program { name: "enable";
5602             signal: "elm,state,enabled";
5603             source: "elm";
5604             action: STATE_SET "default" 0.0;
5605             target: "button_image";
5606             target: "disabler";
5607             after: "enable_text";
5608          }
5609          program { name: "enable_text";
5610             script {
5611                new st[31];
5612                new Float:vl;
5613                get_state(PART:"elm.text", st, 30, vl);
5614                if (!strcmp(st, "disabled_visible"))
5615                  set_state(PART:"elm.text", "visible", 0.0);
5616                else
5617                  set_state(PART:"elm.text", "default", 0.0);
5618                set_int(button_state, BUTTON_STATE_ENABLED);
5619             }
5620          }
5621          program { name: "focused";
5622             //signal: "elm,action,focus";
5623             //source: "elm";
5624             action: STATE_SET "focused" 0.0;
5625             target: "button_image";
5626             target: "elm.text";
5627          }
5628          program { name: "unfocused";
5629             //signal: "elm,action,unfocus";
5630             //source: "elm";
5631             action: STATE_SET "default" 0.0;
5632             target: "button_image";
5633             after: "unfocus_text";
5634          }
5635          program { name: "unfocus_text";
5636             action: STATE_SET "visible" 0.0;
5637             target: "elm.text";
5638          }
5639       }
5640    }
5641
5642 ///////////////////////////////////////////////////////////////////////////////////////
5643    group { name: "elm/button/base/multiline";
5644       alias: "elm/button/base/text_only/multiline";
5645       images {
5646          image: "00_button_04_normal.png" COMP;
5647          image: "00_button_04_press.png" COMP;
5648          image: "00_button_04_dim.png" COMP;
5649          image: "00_button_04_normal_focus.png" COMP;
5650       }
5651       script {
5652          public button_state = BUTTON_STATE_ENABLED;
5653       }
5654       styles{
5655          style { name: "btn_multiline_style";
5656             base: "font=SLP:style=Medium font_size=18 align=center color=#ffffff wrap=mixed text_class=slp_medium";
5657             tag: "br" "\n";
5658             tag: "ps" "ps";
5659             tag: "tab" "\t";
5660          }
5661       }
5662       parts {
5663          part { name: "button_image";
5664             scale: 1;
5665             description { state: "default" 0.0;
5666                min: 10 46;
5667                image {
5668                   normal: "00_button_04_normal.png";
5669                   border: 4 4 3 3;
5670                   border_scale: 1;
5671                }
5672             }
5673             description { state: "clicked" 0.0;
5674                inherit: "default" 0.0;
5675                image.normal: "00_button_04_press.png";
5676             }
5677             description { state: "disabled" 0.0;
5678                inherit: "default" 0.0;
5679                image.normal: "00_button_04_dim.png";
5680             }
5681             description { state: "focused" 0.0;
5682                inherit: "default" 0.0;
5683                image.normal: "00_button_04_normal_focus.png";
5684             }
5685          }
5686          part { name: "padding_left_top";
5687             type: RECT;
5688             scale: 1;
5689             mouse_events: 0;
5690             description { state: "default" 0.0;
5691                align: 0.0 0.0;
5692                rel2.relative: 0.0 0.0;
5693                min: 2 2;
5694                fixed: 1 1;
5695                visible: 0;
5696             }
5697          }
5698          part { name: "padding_right_bottom";
5699             type: RECT;
5700             scale: 1;
5701             mouse_events: 0;
5702             description { state: "default" 0.0;
5703                align: 1.0 1.0;
5704                rel1.relative: 1.0 1.0;
5705                min: 2 2;
5706                fixed: 1 1;
5707                visible: 0;
5708             }
5709          }
5710          part { name: "icon_rect";
5711             type: RECT;
5712             scale: 1;
5713             mouse_events: 0;
5714             description { state: "default" 0.0;
5715                visible: 1;
5716                min: 0 40;
5717                fixed: 1 0;
5718                rel1 {
5719                   relative: 0.0 1.0;
5720                   to_x: "elm.swallow.content";
5721                   to_y: "padding_left_top";
5722                }
5723                rel2 {
5724                   relative: 1.0 0.0;
5725                   to_x: "elm.swallow.content";
5726                   to_y: "padding_right_bottom";
5727                }
5728                align: 0.0 0.5;
5729                color: 0 0 0 0;
5730             }
5731          }
5732          part { name: "padding_icon_text";
5733             type: RECT;
5734             scale: 1;
5735             mouse_events: 0;
5736             description { state: "default" 0.0; //when only icon or no icon is there
5737                align: 0.0 0.0;
5738                rel1 {
5739                   relative: 1.0 0.0;
5740                   to: "icon_rect";
5741                }
5742                rel2.to: "icon_rect";
5743                fixed: 1 0;
5744                min: 0 0;
5745                color: 0 0 0 0;
5746             }
5747             description { state: "icononly" 0.0;
5748                inherit: "default" 0.0;
5749             }
5750             description { state: "visible" 0.0; //when icon is visible
5751                align: 0.0 0.0;
5752                rel1 {
5753                   relative: 1.0 0.0;
5754                   to: "icon_rect";
5755                }
5756                rel2.to: "icon_rect";
5757                fixed: 1 0;
5758                min: 5 0;
5759                color: 0 0 0 0;
5760             }
5761          }
5762          part { name: "elm.swallow.content";
5763             type: SWALLOW;
5764             scale: 1;
5765             clip_to: "clipper";
5766             description { state: "default" 0.0;
5767                visible: 0;
5768                align: 0.0 0.5;
5769                rel1 {
5770                   relative: 1.0 1.0;
5771                   to: "padding_left_top";
5772                }
5773                rel2 {
5774                   relative: 1.0 0.0;
5775                   to_x: "padding_left_top";
5776                   to_y: "padding_right_bottom";
5777                }
5778                fixed: 1 0;
5779             }
5780             description { state: "visible" 0.0;
5781                fixed: 1 0;
5782                align: 0.0 0.5;
5783                rel1 {
5784                   relative: 1.0 1.0;
5785                   to: "padding_left_top";
5786                }
5787                rel2 {
5788                   relative: 1.0 0.0;
5789                   to_x: "padding_left_top";
5790                   to_y: "padding_right_bottom";
5791                }
5792                aspect: 1.0 1.0;
5793                aspect_preference: VERTICAL;
5794             }
5795             description { state: "icononly" 0.0;
5796                min: 40 40;
5797                rel1 {
5798                   relative: 1.0 1.0;
5799                   to: "padding_left_top";
5800                }
5801                rel2 {
5802                   relative: 0.0 0.0;
5803                   to: "padding_right_bottom";
5804                }
5805                aspect: 1.0 1.0;
5806                aspect_preference: VERTICAL;
5807             }
5808          }
5809          part { name: "elm.text";
5810             type: TEXTBLOCK;
5811             mouse_events: 0;
5812             scale: 1;
5813             clip_to: "clipper";
5814             description { state: "default" 0.0;
5815                visible: 0;
5816                rel1 {
5817                   relative: 1.0 1.0;
5818                   to_x: "padding_icon_text";
5819                   to_y: "padding_left_top";
5820                }
5821                rel2 {
5822                   relative: 0.0 0.0;
5823                   to: "padding_right_bottom";
5824                }
5825                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
5826                text {
5827                   style: "btn_multiline_style";
5828                   min: 0 0;
5829                   max: 0 1;
5830                }
5831             }
5832             description { state: "visible" 0.0;
5833                inherit: "default" 0.0;
5834                visible: 1;
5835                min: 80 0;
5836             }
5837             description { state: "clicked" 0.0;
5838                inherit: "default" 0.0;
5839                visible: 1;
5840                min: 0 0;
5841                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
5842             }
5843             description { state: "disabled" 0.0;
5844                inherit: "default" 0.0;
5845                color: 0 0 0 128;
5846             }
5847             description { state: "disabled_visible" 0.0;
5848                inherit: "default" 0.0;
5849                color: BUTTON_TEXT_STYLE1_TEXT_DISABLED_COLOR_INC;
5850                visible: 1;
5851                min: 80 0;
5852             }
5853             description { state: "focused" 0.0;
5854                inherit: "default" 0.0;
5855                visible: 1;
5856                min: 0 0;
5857                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
5858             }
5859          }
5860          part { name: "over2";
5861             type: RECT;
5862             repeat_events: 1;
5863             ignore_flags: ON_HOLD;
5864             description { state: "default" 0.0;
5865                color: 0 0 0 0;
5866             }
5867          }
5868          part { name: "over3";
5869             type: RECT;
5870             repeat_events: 1;
5871             description { state: "default" 0.0;
5872                color: 0 0 0 0;
5873             }
5874          }
5875          part { name: "clipper";
5876             type: RECT;
5877             description { state: "default" 0.0;
5878                color: 255 255 255 255;
5879             }
5880          }
5881          part { name: "disabler";
5882             type: RECT;
5883             description { state: "default" 0.0;
5884                color: 0 0 0 0;
5885                visible: 0;
5886             }
5887             description { state: "disabled" 0.0;
5888                inherit: "default" 0.0;
5889                visible: 1;
5890             }
5891          }
5892       }
5893       programs {
5894          program { name: "button_click";
5895             signal: "mouse,down,1";
5896             source: "over2";
5897             action: SIGNAL_EMIT "elm,action,press" "";
5898             after: "button_click_anim";
5899          }
5900          program { name: "button_click_anim";
5901             action: STATE_SET "clicked" 0.0;
5902             target: "button_image";
5903             after: "text_clicked";
5904          }
5905          program { name: "text_clicked";
5906             script {
5907                new st[31];
5908                new Float:vl;
5909                get_state(PART:"elm.text", st, 30, vl);
5910                if (!strcmp(st, "visible"))
5911                  set_state(PART:"elm.text", "clicked", 0.0);
5912             }
5913          }
5914          program { name: "button_unpress";
5915             action: SIGNAL_EMIT "elm,action,unpress" "";
5916          }
5917          program { name: "button_mouseout_clicked";
5918             signal: "mouse,up,1";
5919             source: "over3";
5920             script {
5921                new st[31];
5922                new Float:vl;
5923                get_state(PART:"elm.swallow.content", st, 30, vl);
5924                if (strcmp(st, "icononly"))
5925                  {
5926                     emit("elm,action,default,text,set", "");
5927                     set_state(PART:"elm.text", "visible", 0.0);
5928                  }
5929                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5930                  set_state(PART:"button_image", "default", 0.0);
5931             }
5932             after: button_unpress;
5933          }
5934          program { name: "touch_snd";
5935             signal: "mouse,clicked,1";
5936             source: "over2";
5937             action: PLAY_SAMPLE "touch_sound" 1.0;
5938             after: button_unclick3;
5939          }
5940          program { name: "button_unclick3";
5941             action: SIGNAL_EMIT "elm,action,click" "";
5942          }
5943          program { name: "text_show";
5944             signal: "elm,state,text,visible";
5945             source: "elm";
5946             script {
5947                new st[31];
5948                new Float:vl;
5949                get_state(PART:"elm.swallow.content", st, 30, vl);
5950                if (!strcmp(st, "icononly"))
5951                  {
5952                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5953                     set_state(PART:"padding_icon_text", "visible", 0.0);
5954                  }
5955                if (get_int(button_state) != BUTTON_STATE_DISABLED)
5956                  set_state(PART:"elm.text", "visible", 0.0);
5957                else
5958                  set_state(PART:"elm.text", "disabled_visible", 0.0);
5959             }
5960          }
5961          program { name: "text_hide";
5962             signal: "elm,state,text,hidden";
5963             source: "elm";
5964             script {
5965                new st[31];
5966                new Float:vl;
5967                get_state(PART:"elm.swallow.content", st, 30, vl);
5968                if (!strcmp(st, "visible"))
5969                  {
5970                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5971                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5972                  }
5973                set_state(PART:"elm.text", "default", 0.0);
5974             }
5975          }
5976          program { name: "icon_show";
5977             signal: "elm,state,icon,visible";
5978             source: "elm";
5979             script {
5980                new st[31];
5981                new Float:vl;
5982                get_state(PART:"elm.text", st, 30, vl);
5983                if (!strcmp(st, "visible"))
5984                  {
5985                     set_state(PART:"elm.swallow.content", "visible", 0.0);
5986                     set_state(PART:"padding_icon_text", "visible", 0.0);
5987                  }
5988                else
5989                  {
5990                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
5991                     set_state(PART:"padding_icon_text", "icononly", 0.0);
5992                  }
5993             }
5994          }
5995          program { name: "icon_hide";
5996             signal: "elm,state,icon,hidden";
5997             source: "elm";
5998             action: STATE_SET "default" 0.0;
5999             target: "elm.swallow.content";
6000             target: "padding_icon_text";
6001          }
6002          program { name: "disable";
6003             signal: "elm,state,disabled";
6004             source: "elm";
6005             action: STATE_SET "disabled" 0.0;
6006             target: "button_image";
6007             target: "disabler";
6008             after: "disable_text";
6009          }
6010          program { name: "disable_text";
6011             script {
6012                new st[31];
6013                new Float:vl;
6014                get_state(PART:"elm.text", st, 30, vl);
6015                if (!strcmp(st, "visible"))
6016                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6017                else
6018                  set_state(PART:"elm.text", "disabled", 0.0);
6019                set_int(button_state, BUTTON_STATE_DISABLED);
6020             }
6021          }
6022          program { name: "enable";
6023             signal: "elm,state,enabled";
6024             source: "elm";
6025             action: STATE_SET "default" 0.0;
6026             target: "button_image";
6027             target: "disabler";
6028             after: "enable_text";
6029          }
6030          program { name: "enable_text";
6031             script {
6032                new st[31];
6033                new Float:vl;
6034                get_state(PART:"elm.text", st, 30, vl);
6035                if (!strcmp(st, "disabled_visible"))
6036                  set_state(PART:"elm.text", "visible", 0.0);
6037                else
6038                  set_state(PART:"elm.text", "default", 0.0);
6039                set_int(button_state, BUTTON_STATE_ENABLED);
6040             }
6041          }
6042          program { name: "focused";
6043             //signal: "elm,action,focus";
6044             //source: "elm";
6045             action: STATE_SET "focused" 0.0;
6046             target: "button_image";
6047             target: "elm.text";
6048          }
6049          program { name: "unfocused";
6050             //signal: "elm,action,unfocus";
6051             //source: "elm";
6052             action: STATE_SET "default" 0.0;
6053             target: "button_image";
6054             after: "unfocus_text";
6055          }
6056          program { name: "unfocus_text";
6057             action: STATE_SET "visible" 0.0;
6058             target: "elm.text";
6059          }
6060       }
6061    }
6062
6063 ///////////////////////////////////////////////////////////////////////////////////////
6064    group { name: "elm/button/base/default";
6065       images {
6066          image: "00_button_01_normal.png" COMP;
6067          image: "00_button_01_normal_press.png" COMP;
6068          image: "00_button_01_normal_dim.png" COMP;
6069          image: "00_button_01_normal_Focus.png" COMP;
6070       }
6071       script {
6072          public button_state = BUTTON_STATE_ENABLED;
6073       }
6074       parts {
6075          part { name: "button_image";
6076             scale: 1;
6077             description { state: "default" 0.0;
6078                min: BUTTON_DEFAULT_STYLE_BG_MIN_INC;
6079                image {
6080                   normal: "00_button_01_normal.png";
6081                   border: BUTTON_DEFAULT_STYLE_BG_BORDER_INC;
6082                   border_scale: 1;
6083                }
6084             }
6085             description { state: "clicked" 0.0;
6086                inherit: "default" 0.0;
6087                image.normal: "00_button_01_normal_press.png";
6088             }
6089             description { state: "disabled" 0.0;
6090                inherit: "default" 0.0;
6091                image.normal: "00_button_01_normal_dim.png";
6092             }
6093             description { state: "focused" 0.0;
6094                inherit: "default" 0.0;
6095                image.normal: "00_button_01_normal_Focus.png";
6096             }
6097          }
6098          part { name: "padding_left_top";
6099             type: RECT;
6100             scale: 1;
6101             mouse_events: 0;
6102             description { state: "default" 0.0;
6103                align: 0.0 0.0;
6104                rel2.relative: 0.0 0.0;
6105                min: BUTTON_DEFAULT_STYLE_PADDING_MIN_INC;
6106                fixed: 1 1;
6107                visible: 0;
6108             }
6109          }
6110          part { name: "padding_right_bottom";
6111             type: RECT;
6112             scale: 1;
6113             mouse_events: 0;
6114             description { state: "default" 0.0;
6115                align: 1.0 1.0;
6116                rel1.relative: 1.0 1.0;
6117                min: BUTTON_DEFAULT_STYLE_PADDING_MIN_INC;
6118                fixed: 1 1;
6119                visible: 0;
6120             }
6121          }
6122          part { name: "padding_icon_text";
6123             type: RECT;
6124             scale: 1;
6125             mouse_events: 0;
6126             description { state: "default" 0.0; //when only icon or no icon is there
6127                align: 0.0 0.0;
6128                visible: 0;
6129                rel1 {
6130                   relative: 1.0 0.0;
6131                   to: "elm.swallow.content";
6132                }
6133                rel2.to: "elm.swallow.content";
6134                fixed: 1 0;
6135                min: 0 0;
6136             }
6137             description { state: "icononly" 0.0;
6138                inherit: "default" 0.0;
6139             }
6140             description { state: "visible" 0.0; //when icon is visible
6141                inherit: "default" 0.0;
6142                min: BUTTON_DEFAULT_STYLE_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
6143             }
6144          }
6145          part { name: "elm.swallow.content";
6146             type: SWALLOW;
6147             scale: 1;
6148             clip_to: "clipper";
6149             description { state: "default" 0.0;
6150                visible: 0;
6151                align: 0.0 0.5;
6152                rel1 {
6153                   relative: 1.0 1.0;
6154                   to: "padding_left_top";
6155                }
6156                rel2 {
6157                   relative: 1.0 0.0;
6158                   to_x: "padding_left_top";
6159                   to_y: "padding_right_bottom";
6160                }
6161                fixed: 1 0;
6162             }
6163             description { state: "visible" 0.0;
6164                fixed: 1 0;
6165                align: 0.0 0.5;
6166                rel1 {
6167                   relative: 1.0 1.0;
6168                   to: "padding_left_top";
6169                }
6170                rel2 {
6171                   relative: 1.0 0.0;
6172                   to_x: "padding_left_top";
6173                   to_y: "padding_right_bottom";
6174                }
6175                aspect: 1.0 1.0;
6176                aspect_preference: VERTICAL;
6177             }
6178             description { state: "icononly" 0.0;
6179                min: BUTTON_DEFAULT_STYLE_ICONONLY_ICON_MIN_INC;
6180                rel1 {
6181                   relative: 1.0 0.0;
6182                   to_x: "padding_left_top";
6183                }
6184                rel2 {
6185                   relative: 0.0 1.0;
6186                   to_x: "padding_right_bottom";
6187                }
6188                aspect: 1.0 1.0;
6189                aspect_preference: VERTICAL;
6190             }
6191          }
6192          part { name: "elm.text";
6193             type: TEXT;
6194             mouse_events: 0;
6195             scale: 1;
6196             clip_to: "clipper";
6197             description { state: "default" 0.0;
6198                visible: 0;
6199                align: 0.0 0.5;
6200                rel1 {
6201                   relative: 1.0 1.0;
6202                   to_x: "padding_icon_text";
6203                   to_y: "padding_left_top";
6204                }
6205                rel2 {
6206                   relative: 0.0 0.0;
6207                   to: "padding_right_bottom";
6208                }
6209                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_NORMAL_COLOR_INC;
6210                text {
6211                   font: "SLP:style=Medium";
6212                   size: BUTTON_DEFAULT_STYLE_FONT_SIZE_INC;
6213                   min: 0 0;
6214                   text_class: "slp_medium";
6215                }
6216             }
6217             description { state: "visible" 0.0;
6218                inherit: "default" 0.0;
6219                visible: 1;
6220                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
6221             }
6222             description { state: "clicked" 0.0;
6223                inherit: "default" 0.0;
6224                visible: 1;
6225                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
6226                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_PRESSED_COLOR_INC;
6227             }
6228             description { state: "disabled" 0.0;
6229                inherit: "default" 0.0;
6230             }
6231             description { state: "disabled_visible" 0.0;
6232                inherit: "default" 0.0;
6233                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_DISABLED_COLOR_INC;
6234                visible: 1;
6235                min: BUTTON_DEFAULT_STYLE_TEXT_MIN_INC;
6236             }
6237             description { state: "focused" 0.0;
6238                inherit: "default" 0.0;
6239                visible: 1;
6240                min: 0 0;
6241                color: BUTTON_DEFAULT_STYLE_BUTTON_TEXT_FOCUSED_COLOR_INC;
6242             }
6243          }
6244          part { name: "over2";
6245             type: RECT;
6246             repeat_events: 1;
6247             ignore_flags: ON_HOLD;
6248             description { state: "default" 0.0;
6249                color: 0 0 0 0;
6250             }
6251          }
6252          part { name: "over3";
6253             type: RECT;
6254             repeat_events: 1;
6255             description { state: "default" 0.0;
6256                color: 0 0 0 0;
6257             }
6258          }
6259          part { name: "clipper";
6260             type: RECT;
6261             description { state: "default" 0.0;
6262                color: 255 255 255 255;
6263             }
6264          }
6265          part { name: "disabler";
6266             type: RECT;
6267             description { state: "default" 0.0;
6268                color: 0 0 0 0;
6269                visible: 0;
6270             }
6271             description { state: "disabled" 0.0;
6272                inherit: "default" 0.0;
6273                visible: 1;
6274             }
6275          }
6276       }
6277       programs {
6278          program { name: "button_click";
6279             signal: "mouse,down,1";
6280             source: "over2";
6281             action: SIGNAL_EMIT "elm,action,press" "";
6282             after: "button_click_anim";
6283          }
6284          program { name: "button_click_anim";
6285             action: STATE_SET "clicked" 0.0;
6286             target: "button_image";
6287             after: "text_clicked";
6288          }
6289          program { name: "text_clicked";
6290             script {
6291                new st[31];
6292                new Float:vl;
6293                get_state(PART:"elm.text", st, 30, vl);
6294                if (!strcmp(st, "visible"))
6295                  set_state(PART:"elm.text", "clicked", 0.0);
6296             }
6297          }
6298          program { name: "button_unpress";
6299             action: SIGNAL_EMIT "elm,action,unpress" "";
6300          }
6301          program { name: "button_mouseout_clicked";
6302             signal: "mouse,up,1";
6303             source: "over3";
6304             script {
6305                new st[31];
6306                new Float:vl;
6307                get_state(PART:"elm.swallow.content", st, 30, vl);
6308                if (strcmp(st, "icononly"))
6309                  {
6310                     emit("elm,action,default,text,set", "");
6311                     set_state(PART:"elm.text", "visible", 0.0);
6312                  }
6313                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6314                  set_state(PART:"button_image", "default", 0.0);
6315             }
6316             after: button_unpress;
6317          }
6318          program { name: "touch_snd";
6319             signal: "mouse,clicked,1";
6320             source: "over2";
6321             action: PLAY_SAMPLE "touch_sound" 1.0;
6322             after: button_unclick3;
6323          }
6324          program { name: "button_unclick3";
6325             action: SIGNAL_EMIT "elm,action,click" "";
6326          }
6327          program { name: "text_show";
6328             signal: "elm,state,text,visible";
6329             source: "elm";
6330             script {
6331                new st[31];
6332                new Float:vl;
6333                get_state(PART:"elm.swallow.content", st, 30, vl);
6334                if (!strcmp(st, "icononly"))
6335                  {
6336                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6337                     set_state(PART:"padding_icon_text", "visible", 0.0);
6338                  }
6339                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6340                  set_state(PART:"elm.text", "visible", 0.0);
6341                else
6342                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6343             }
6344          }
6345          program { name: "text_hide";
6346             signal: "elm,state,text,hidden";
6347             source: "elm";
6348             script {
6349                new st[31];
6350                new Float:vl;
6351                get_state(PART:"elm.swallow.content", st, 30, vl);
6352                if (!strcmp(st, "visible"))
6353                  {
6354                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6355                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6356                  }
6357                set_state(PART:"elm.text", "default", 0.0);
6358             }
6359          }
6360          program { name: "icon_show";
6361             signal: "elm,state,icon,visible";
6362             source: "elm";
6363             script {
6364                new st[31];
6365                new Float:vl;
6366                get_state(PART:"elm.text", st, 30, vl);
6367                if (!strcmp(st, "visible"))
6368                  {
6369                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6370                     set_state(PART:"padding_icon_text", "visible", 0.0);
6371                  }
6372                else
6373                  {
6374                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6375                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6376                  }
6377             }
6378          }
6379          program { name: "icon_hide";
6380             signal: "elm,state,icon,hidden";
6381             source: "elm";
6382             action: STATE_SET "default" 0.0;
6383             target: "elm.swallow.content";
6384             target: "padding_icon_text";
6385          }
6386          program { name: "disable";
6387             signal: "elm,state,disabled";
6388             source: "elm";
6389             action: STATE_SET "disabled" 0.0;
6390             target: "button_image";
6391             target: "disabler";
6392             after: "disable_text";
6393          }
6394          program { name: "disable_text";
6395             script {
6396                new st[31];
6397                new Float:vl;
6398                get_state(PART:"elm.text", st, 30, vl);
6399                if (!strcmp(st, "visible"))
6400                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6401                else
6402                  set_state(PART:"elm.text", "disabled", 0.0);
6403                set_int(button_state, BUTTON_STATE_DISABLED);
6404             }
6405          }
6406          program { name: "enable";
6407             signal: "elm,state,enabled";
6408             source: "elm";
6409             action: STATE_SET "default" 0.0;
6410             target: "button_image";
6411             target: "disabler";
6412             after: "enable_text";
6413          }
6414          program { name: "enable_text";
6415             script {
6416                new st[31];
6417                new Float:vl;
6418                get_state(PART:"elm.text", st, 30, vl);
6419                if (!strcmp(st, "disabled_visible"))
6420                  set_state(PART:"elm.text", "visible", 0.0);
6421                else
6422                  set_state(PART:"elm.text", "default", 0.0);
6423                set_int(button_state, BUTTON_STATE_ENABLED);
6424             }
6425          }
6426          program { name: "focused";
6427             //signal: "elm,action,focus";
6428             //source: "elm";
6429             action: STATE_SET "focused" 0.0;
6430             target: "button_image";
6431             target: "elm.text";
6432          }
6433          program { name: "unfocused";
6434             //signal: "elm,action,unfocus";
6435             //source: "elm";
6436             action: STATE_SET "default" 0.0;
6437             target: "button_image";
6438             after: "unfocus_text";
6439          }
6440          program { name: "unfocus_text";
6441             action: STATE_SET "visible" 0.0;
6442             target: "elm.text";
6443          }
6444       }
6445    }
6446
6447 ///////////////////////////////////////////////////////////////////////////////////////
6448 #define BUTTON_COLORSELECTOR_STYLES(style_name, image_normal, image_press,image_disable) \
6449    group { name: "elm/button/base/"style_name; \
6450       images { \
6451          image: image_normal COMP; \
6452          image: image_press COMP; \
6453          image: image_disable COMP; \
6454          image: "00_button_01_normal.png" COMP; \
6455          image: "00_button_01_normal_press.png" COMP; \
6456          image: "00_button_01_normal_dim.png" COMP; \
6457          image: "00_button_01_normal_Focus.png" COMP; \
6458       } \
6459       parts { \
6460          part { name: "button_image"; \
6461             scale: 1; \
6462             description { state: "default" 0.0; \
6463                min: BUTTON_COLORSELECTOR_BG_DEFAULT_MIN_INC; \
6464                max: BUTTON_COLORSELECTOR_BG_DEFAULT_MIN_INC; \
6465                image { \
6466                   normal: "00_button_01_normal.png"; \
6467                   border: BUTTON_COLORSELECTOR_BG_BORDER_INC; \
6468                   border_scale: 1; \
6469                } \
6470             } \
6471             description { \
6472                state: "clicked" 0.0; \
6473                inherit: "default" 0.0; \
6474                image.normal: "00_button_01_normal_press.png"; \
6475             } \
6476             description { \
6477                state: "disabled" 0.0; \
6478                inherit: "default" 0.0; \
6479                image.normal: "00_button_01_normal_dim.png"; \
6480             } \
6481             description { \
6482                state: "focused" 0.0; \
6483                inherit: "default" 0.0; \
6484                image.normal: "00_button_01_normal_Focus.png"; \
6485             } \
6486          } \
6487          part { name: "button_center_part"; \
6488             scale: 1; \
6489             description { state: "default" 0.0; \
6490                min: BUTTON_COLORSELECTOR_IMAGE_MIN_MAX_INC; \
6491                max: BUTTON_COLORSELECTOR_IMAGE_MIN_MAX_INC; \
6492                image.normal: image_normal; \
6493             } \
6494             description { \
6495                state: "clicked" 0.0; \
6496                inherit: "default" 0.0; \
6497                image.normal: image_press; \
6498             } \
6499             description { \
6500                state: "disabled" 0.0; \
6501                inherit: "default" 0.0; \
6502                image.normal: image_disable; \
6503             } \
6504          } \
6505          part { name: "over1"; \
6506             type: RECT; \
6507             ignore_flags: ON_HOLD; \
6508             description { state: "default" 0.0; \
6509                color: 0 0 0 0; \
6510             } \
6511          } \
6512          part { name: "over2"; \
6513             repeat_events: 1; \
6514             description { state: "default" 0.0; \
6515                color: 0 0 0 0; \
6516             } \
6517          } \
6518          part { name: "disabler"; \
6519             type: RECT; \
6520             description { state: "default" 0.0; \
6521                color: 0 0 0 0; \
6522                visible: 0; \
6523             } \
6524             description { state: "disabled" 0.0; \
6525                inherit: "default" 0.0; \
6526                visible: 1; \
6527             } \
6528          } \
6529       } \
6530       programs { \
6531          program { name: "button_click"; \
6532             signal: "mouse,down,1"; \
6533             source: "over1"; \
6534             action: SIGNAL_EMIT "elm,action,press" ""; \
6535             after: "button_click_anim"; \
6536          } \
6537          program { name: "button_click_anim"; \
6538             action: STATE_SET "clicked" 0.0; \
6539             target: "button_image"; \
6540             target: "button_center_part"; \
6541          } \
6542          program { name: "button_unclick"; \
6543             signal: "mouse,up,1"; \
6544             source: "over2"; \
6545             action: SIGNAL_EMIT "elm,action,unpress" ""; \
6546             after: "button_unclick_anim"; \
6547          } \
6548          program { name: "button_unclick_anim"; \
6549             action: STATE_SET "default" 0.0; \
6550             target: "button_image"; \
6551             target: "button_center_part"; \
6552          } \
6553          program { name: "touch_snd"; \
6554             signal: "mouse,clicked,1"; \
6555             source: "over1"; \
6556             action: PLAY_SAMPLE "touch_sound" 1.0; \
6557             after: button_unclick3; \
6558          } \
6559          program { name: "button_unclick3"; \
6560             action: SIGNAL_EMIT "elm,action,click" ""; \
6561          } \
6562          program { name: "disable"; \
6563             signal: "elm,state,disabled"; \
6564             source: "elm"; \
6565             action: STATE_SET "disabled" 0.0; \
6566             target: "disabler"; \
6567             target: "button_image"; \
6568             target: "button_center_part"; \
6569          } \
6570          program { name: "enable"; \
6571             signal: "elm,state,enabled"; \
6572             source: "elm"; \
6573             action: STATE_SET "default" 0.0; \
6574             target: "disabler"; \
6575             target: "button_image"; \
6576             target: "button_center_part"; \
6577          } \
6578       } \
6579    }
6580 ///////////////////////////////////////////////////////////////////////////////////////
6581    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")
6582 ///////////////////////////////////////////////////////////////////////////////////////
6583    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")
6584 ///////////////////////////////////////////////////////////////////////////////////////
6585    group { name: "elm/button/base/hidden";
6586       images {
6587          image: "00_button_sweep.png" COMP;
6588          image: "00_button_sweep_press.png" COMP;
6589          image: "00_button_sweep_focus.png" COMP;
6590          image: "00_button_sweep_dim.png" COMP;
6591       }
6592       script {
6593          public button_state = BUTTON_STATE_ENABLED;
6594       }
6595       parts {
6596          part { name: "button_image";
6597             scale: 1;
6598             description { state: "default" 0.0;
6599                min: BUTTON_HIDDEN_BG_NORMAL_MIN_INC;
6600                image {
6601                   normal: "00_button_sweep.png";
6602                   border: BUTTON_HIDDEN_BG_BORDER_INC;
6603                   border_scale: 1;
6604                }
6605             }
6606             description { state: "clicked" 0.0;
6607                inherit: "default" 0.0;
6608                image.normal: "00_button_sweep_press.png";
6609             }
6610             description { state: "disabled" 0.0;
6611                inherit: "default" 0.0;
6612                image.normal: "00_button_sweep_dim.png";
6613             }
6614             description { state: "focused" 0.0;
6615                inherit: "default" 0.0;
6616                image.normal: "00_button_sweep_focus.png";
6617             }
6618          }
6619          part { name: "padding_left_top";
6620             type: RECT;
6621             scale: 1;
6622             mouse_events: 0;
6623             description { state: "default" 0.0;
6624                align: 0.0 0.0;
6625                rel2.relative: 0.0 0.0;
6626                min: BUTTON_HIDDEN_PADDING_MIN_INC;
6627                fixed: 1 1;
6628                visible: 0;
6629             }
6630          }
6631          part { name: "padding_right_bottom";
6632             type: RECT;
6633             scale: 1;
6634             mouse_events: 0;
6635             description { state: "default" 0.0;
6636                align: 1.0 1.0;
6637                rel1.relative: 1.0 1.0;
6638                min: BUTTON_HIDDEN_PADDING_MIN_INC;
6639                fixed: 1 1;
6640                visible: 0;
6641             }
6642          }
6643          part { name: "icon_rect";
6644             type: RECT;
6645             scale: 1;
6646             mouse_events: 0;
6647             description { state: "default" 0.0;
6648                min: BUTTON_HIDDEN_ICON_RECT_MIN_INC;
6649                fixed: 1 0;
6650                rel1 {
6651                   relative: 0.0 1.0;
6652                   to_x: "elm.swallow.content";
6653                   to_y: "padding_left_top";
6654                }
6655                rel2 {
6656                   relative: 1.0 0.0;
6657                   to_x: "elm.swallow.content";
6658                   to_y: "padding_right_bottom";
6659                }
6660                align: 0.0 0.5;
6661                color: 0 0 0 0;
6662             }
6663          }
6664          part { name: "padding_icon_text";
6665             type: RECT;
6666             scale: 1;
6667             mouse_events: 0;
6668             description { state: "default" 0.0; //when only icon or no icon is there
6669                align: 0.0 0.0;
6670                rel1 {
6671                   relative: 1.0 0.0;
6672                   to: "icon_rect";
6673                }
6674                rel2.to: "icon_rect";
6675                fixed: 1 0;
6676                min: 0 0;
6677                color: 0 0 0 0;
6678             }
6679             description { state: "icononly" 0.0;
6680                inherit: "default" 0.0;
6681             }
6682             description { state: "visible" 0.0; //when icon is visible
6683                align: 0.0 0.0;
6684                rel1 {
6685                   relative: 1.0 0.0;
6686                   to: "icon_rect";
6687                }
6688                rel2.to: "icon_rect";
6689                fixed: 1 0;
6690                min: BUTTON_HIDDEN_PADDING_ICON_TEXT_VISIBLE_MIN_INC;
6691                color: 0 0 0 0;
6692             }
6693          }
6694          part { name: "elm.swallow.content";
6695             type: SWALLOW;
6696             scale: 1;
6697             clip_to: "clipper";
6698             description { state: "default" 0.0;
6699                visible: 0;
6700                align: 0.0 0.5;
6701                rel1 {
6702                   relative: 1.0 1.0;
6703                   to: "padding_left_top";
6704                }
6705                rel2 {
6706                   relative: 1.0 0.0;
6707                   to_x: "padding_left_top";
6708                   to_y: "padding_right_bottom";
6709                }
6710                fixed: 1 0;
6711             }
6712             description { state: "visible" 0.0;
6713                fixed: 1 0;
6714                align: 0.0 0.5;
6715                rel1 {
6716                   relative: 1.0 1.0;
6717                   to: "padding_left_top";
6718                }
6719                rel2 {
6720                   relative: 1.0 0.0;
6721                   to_x: "padding_left_top";
6722                   to_y: "padding_right_bottom";
6723                }
6724                aspect: 1.0 1.0;
6725                aspect_preference: VERTICAL;
6726             }
6727             description { state: "icononly" 0.0;
6728                min: BUTTON_HIDDEN_ICON_ICONONLY_MIN_INC;
6729                rel1 {
6730                   relative: 1.0 1.0;
6731                   to: "padding_left_top";
6732                }
6733                rel2 {
6734                   relative: 1.0 0.0;
6735                   to_x: "padding_left_top";
6736                   to_y: "padding_right_bottom";
6737                }
6738                aspect: 1.0 1.0;
6739                aspect_preference: VERTICAL;
6740             }
6741          }
6742          part { name: "elm.text";
6743             type: TEXT;
6744             mouse_events: 0;
6745             scale: 1;
6746             clip_to: "clipper";
6747             description { state: "default" 0.0;
6748                visible: 0;
6749                rel1 {
6750                   relative: 1.0 1.0;
6751                   to_x: "padding_icon_text";
6752                   to_y: "padding_left_top";
6753                }
6754                rel2 {
6755                   relative: 0.0 0.0;
6756                   to: "padding_right_bottom";
6757                }
6758                color: BUTTON_HIDDEN_BUTTON_TEXT_NORMAL_COLOR_INC;
6759                text {
6760                   font: "SLP:style=Medium";
6761                   size: BUTTON_HIDDEN_FONT_SIZE_INC;
6762                   min: 0 0;
6763                   text_class: "slp_medium";
6764                }
6765             }
6766             description { state: "visible" 0.0;
6767                inherit: "default" 0.0;
6768                visible: 1;
6769                min: BUTTON_HIDDEN_TEXT_MIN_INC;
6770             }
6771             description { state: "clicked" 0.0;
6772                inherit: "default" 0.0;
6773                visible: 1;
6774                min: 0 0;
6775                color: BUTTON_HIDDEN_BUTTON_TEXT_PRESSED_COLOR_INC;
6776             }
6777             description { state: "disabled" 0.0;
6778                inherit: "default" 0.0;
6779                color: 0 0 0 128;
6780             }
6781             description { state: "disabled_visible" 0.0;
6782                inherit: "default" 0.0;
6783                color: BUTTON_HIDDEN_BUTTON_TEXT_DISABLED_COLOR_INC;
6784                visible: 1;
6785                min: BUTTON_HIDDEN_TEXT_MIN_INC;
6786             }
6787             description { state: "focused" 0.0;
6788                inherit: "default" 0.0;
6789                visible: 1;
6790                min: 0 0;
6791                color: BUTTON_HIDDEN_BUTTON_TEXT_FOCUSED_COLOR_INC;
6792             }
6793          }
6794          part { name: "over2";
6795             type: RECT;
6796             repeat_events: 1;
6797             ignore_flags: ON_HOLD;
6798             description { state: "default" 0.0;
6799                color: 0 0 0 0;
6800             }
6801          }
6802          part { name: "over3";
6803             type: RECT;
6804             repeat_events: 1;
6805             description { state: "default" 0.0;
6806                color: 0 0 0 0;
6807             }
6808          }
6809          part { name: "clipper";
6810             type: RECT;
6811             description { state: "default" 0.0;
6812                color: 255 255 255 255;
6813             }
6814          }
6815          part { name: "disabler";
6816             type: RECT;
6817             description { state: "default" 0.0;
6818                color: 0 0 0 0;
6819                visible: 0;
6820             }
6821             description { state: "disabled" 0.0;
6822                inherit: "default" 0.0;
6823                visible: 1;
6824             }
6825          }
6826       }
6827       programs {
6828          program { name: "button_click";
6829             signal: "mouse,down,1";
6830             source: "over2";
6831             action: SIGNAL_EMIT "elm,action,press" "";
6832             after: "button_click_anim";
6833          }
6834          program { name: "button_click_anim";
6835             action: STATE_SET "clicked" 0.0;
6836             target: "button_image";
6837             after: "text_clicked";
6838          }
6839          program { name: "text_clicked";
6840             script {
6841                new st[31];
6842                new Float:vl;
6843                get_state(PART:"elm.text", st, 30, vl);
6844                if (!strcmp(st, "visible"))
6845                  set_state(PART:"elm.text", "clicked", 0.0);
6846             }
6847          }
6848          program { name: "button_unpress";
6849             action: SIGNAL_EMIT "elm,action,unpress" "";
6850          }
6851          program { name: "button_mouseout_clicked";
6852             signal: "mouse,up,1";
6853             source: "over3";
6854             script {
6855                new st[31];
6856                new Float:vl;
6857                get_state(PART:"elm.swallow.content", st, 30, vl);
6858                if (strcmp(st, "icononly"))
6859                  {
6860                     emit("elm,action,default,text,set", "");
6861                     set_state(PART:"elm.text", "visible", 0.0);
6862                  }
6863                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6864                  set_state(PART:"button_image", "default", 0.0);
6865             }
6866             after: button_unpress;
6867          }
6868          program { name: "touch_snd";
6869             signal: "mouse,clicked,1";
6870             source: "over2";
6871             action: PLAY_SAMPLE "touch_sound" 1.0;
6872             after: button_unclick3;
6873          }
6874          program { name: "button_unclick3";
6875             action: SIGNAL_EMIT "elm,action,click" "";
6876          }
6877          program { name: "text_show";
6878             signal: "elm,state,text,visible";
6879             source: "elm";
6880             script {
6881                new st[31];
6882                new Float:vl;
6883                get_state(PART:"elm.swallow.content", st, 30, vl);
6884                if (!strcmp(st, "icononly"))
6885                  {
6886                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6887                     set_state(PART:"padding_icon_text", "visible", 0.0);
6888                  }
6889                if (get_int(button_state) != BUTTON_STATE_DISABLED)
6890                  set_state(PART:"elm.text", "visible", 0.0);
6891                else
6892                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6893             }
6894          }
6895          program { name: "text_hide";
6896             signal: "elm,state,text,hidden";
6897             source: "elm";
6898             script {
6899                new st[31];
6900                new Float:vl;
6901                get_state(PART:"elm.swallow.content", st, 30, vl);
6902                if (!strcmp(st, "visible"))
6903                  {
6904                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6905                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6906                  }
6907                set_state(PART:"elm.text", "default", 0.0);
6908             }
6909          }
6910          program { name: "icon_show";
6911             signal: "elm,state,icon,visible";
6912             source: "elm";
6913             script {
6914                new st[31];
6915                new Float:vl;
6916                get_state(PART:"elm.text", st, 30, vl);
6917                if (!strcmp(st, "visible"))
6918                  {
6919                     set_state(PART:"elm.swallow.content", "visible", 0.0);
6920                     set_state(PART:"padding_icon_text", "visible", 0.0);
6921                  }
6922                else
6923                  {
6924                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
6925                     set_state(PART:"padding_icon_text", "icononly", 0.0);
6926                  }
6927             }
6928          }
6929          program { name: "icon_hide";
6930             signal: "elm,state,icon,hidden";
6931             source: "elm";
6932             action: STATE_SET "default" 0.0;
6933             target: "elm.swallow.content";
6934             target: "padding_icon_text";
6935          }
6936          program { name: "disable";
6937             signal: "elm,state,disabled";
6938             source: "elm";
6939             action: STATE_SET "disabled" 0.0;
6940             target: "button_image";
6941             target: "disabler";
6942             after: "disable_text";
6943          }
6944          program { name: "disable_text";
6945             script {
6946                new st[31];
6947                new Float:vl;
6948                get_state(PART:"elm.text", st, 30, vl);
6949                if (!strcmp(st, "visible"))
6950                  set_state(PART:"elm.text", "disabled_visible", 0.0);
6951                else
6952                  set_state(PART:"elm.text", "disabled", 0.0);
6953                set_int(button_state, BUTTON_STATE_DISABLED);
6954             }
6955          }
6956          program { name: "enable";
6957             signal: "elm,state,enabled";
6958             source: "elm";
6959             action: STATE_SET "default" 0.0;
6960             target: "button_image";
6961             target: "disabler";
6962             after: "enable_text";
6963          }
6964          program { name: "enable_text";
6965             script {
6966                new st[31];
6967                new Float:vl;
6968                get_state(PART:"elm.text", st, 30, vl);
6969                if (!strcmp(st, "disabled_visible"))
6970                  set_state(PART:"elm.text", "visible", 0.0);
6971                else
6972                  set_state(PART:"elm.text", "default", 0.0);
6973                set_int(button_state, BUTTON_STATE_ENABLED);
6974             }
6975          }
6976          program { name: "focused";
6977             //signal: "elm,action,focus";
6978             //source: "elm";
6979             action: STATE_SET "focused" 0.0;
6980             target: "button_image";
6981             target: "elm.text";
6982          }
6983          program { name: "unfocused";
6984             //signal: "elm,action,unfocus";
6985             //source: "elm";
6986             action: STATE_SET "default" 0.0;
6987             target: "button_image";
6988             after: "unfocus_text";
6989          }
6990          program { name: "unfocus_text";
6991             action: STATE_SET "visible" 0.0;
6992             target: "elm.text";
6993          }
6994       }
6995    }
6996
6997 ///////////////////////////////////////////////////////////////////////////////////////
6998    group { name: "elm/button/base/picker/bar/default";
6999       images {
7000          image: "00_picker_btn_normal.png" COMP;
7001          image: "00_picker_btn_press.png" COMP;
7002          image: "00_picker_btn_normal_focus.png" COMP;
7003       }
7004       script {
7005          public button_state = BUTTON_STATE_ENABLED;
7006       }
7007       parts {
7008          part { name: "button_image";
7009             scale: 1;
7010             description { state: "default" 0.0;
7011                min: BUTTON_PICKER_BAR_DEFAULT_BG_DEFAULT_MIN_INC;
7012                image {
7013                   normal: "00_picker_btn_normal.png";
7014                   border: BUTTON_PICKER_BAR_DEFAULT_BG_DEFAULT_IMAGE_BORDER_INC;
7015                   border_scale: 1;
7016                }
7017             }
7018             description { state: "clicked" 0.0;
7019                inherit: "default" 0.0;
7020                image.normal: "00_picker_btn_press.png";
7021             }
7022             description { state: "disabled" 0.0;
7023                inherit: "default" 0.0;
7024             }
7025             description { state: "focused" 0.0;
7026                inherit: "default" 0.0;
7027                image.normal: "00_picker_btn_normal_focus.png";
7028             }
7029          }
7030          part { name: "padding_left_top";
7031             type: RECT;
7032             scale: 1;
7033             mouse_events: 0;
7034             description { state: "default" 0.0;
7035                align: 0.0 0.0;
7036                rel2.relative: 0.0 0.0;
7037                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_MIN_INC;
7038                fixed: 1 1;
7039                visible: 0;
7040             }
7041          }
7042          part { name: "padding_right_bottom";
7043             type: RECT;
7044             scale: 1;
7045             mouse_events: 0;
7046             description { state: "default" 0.0;
7047                align: 1.0 1.0;
7048                rel1.relative: 1.0 1.0;
7049                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_MIN_INC;
7050                fixed: 1 1;
7051                visible: 0;
7052             }
7053          }
7054          part { name: "icon_rect";
7055             type: RECT;
7056             scale: 1;
7057             mouse_events: 0;
7058             description { state: "default" 0.0;
7059                min: BUTTON_PICKER_BAR_DEFAULT_ICON_RECT_DEFAULT_MIN_INC;
7060                fixed: 1 0;
7061                rel1 {
7062                   relative: 0.0 1.0;
7063                   to_x: "elm.swallow.content";
7064                   to_y: "padding_left_top";
7065                }
7066                rel2 {
7067                   relative: 1.0 0.0;
7068                   to_x: "elm.swallow.content";
7069                   to_y: "padding_right_bottom";
7070                }
7071                align: 0.0 0.5;
7072                color: 0 0 0 0;
7073             }
7074          }
7075          part { name: "padding_icon_text";
7076             type: RECT;
7077             scale: 1;
7078             mouse_events: 0;
7079             description { state: "default" 0.0; //when only icon or no icon is there
7080                align: 0.0 0.0;
7081                rel1 {
7082                   relative: 1.0 0.0;
7083                   to: "icon_rect";
7084                }
7085                rel2.to: "icon_rect";
7086                fixed: 1 0;
7087                min: 0 0;
7088                color: 0 0 0 0;
7089             }
7090             description { state: "icononly" 0.0;
7091                inherit: "default" 0.0;
7092             }
7093             description { state: "visible" 0.0; //when icon is visible
7094                align: 0.0 0.0;
7095                rel1 {
7096                   relative: 1.0 0.0;
7097                   to: "icon_rect";
7098                }
7099                rel2.to: "icon_rect";
7100                fixed: 1 0;
7101                min: BUTTON_PICKER_BAR_DEFAULT_PADDING_ICON_RECT_TEXT_MIN_INC;
7102                color: 0 0 0 0;
7103             }
7104          }
7105          part { name: "elm.swallow.content";
7106             type: SWALLOW;
7107             scale: 1;
7108             clip_to: "clipper";
7109             description { state: "default" 0.0;
7110                visible: 0;
7111                align: 0.0 0.5;
7112                rel1 {
7113                   relative: 1.0 1.0;
7114                   to: "padding_left_top";
7115                }
7116                rel2 {
7117                   relative: 1.0 0.0;
7118                   to_x: "padding_left_top";
7119                   to_y: "padding_right_bottom";
7120                }
7121                fixed: 1 0;
7122             }
7123             description { state: "visible" 0.0;
7124                fixed: 1 0;
7125                align: 0.0 0.5;
7126                rel1 {
7127                   relative: 1.0 1.0;
7128                   to: "padding_left_top";
7129                }
7130                rel2 {
7131                   relative: 1.0 0.0;
7132                   to_x: "padding_left_top";
7133                   to_y: "padding_right_bottom";
7134                }
7135                aspect: 1.0 1.0;
7136                aspect_preference: VERTICAL;
7137             }
7138             description { state: "icononly" 0.0;
7139                min: BUTTON_PICKER_BAR_DEFAULT_CONTENT_ICONONLY_MIN_INC;
7140                rel1 {
7141                   relative: 1.0 1.0;
7142                   to: "padding_left_top";
7143                }
7144                rel2 {
7145                   relative: 1.0 0.0;
7146                   to_x: "padding_left_top";
7147                   to_y: "padding_right_bottom";
7148                }
7149                aspect: 1.0 1.0;
7150                aspect_preference: VERTICAL;
7151             }
7152          }
7153          part { name: "elm.text";
7154             type: TEXT;
7155             mouse_events: 0;
7156             scale: 1;
7157             clip_to: "clipper";
7158             description { state: "default" 0.0;
7159                visible: 0;
7160                rel1 {
7161                   relative: 1.0 1.0;
7162                   to_x: "padding_icon_text";
7163                   to_y: "padding_left_top";
7164                }
7165                rel2 {
7166                   relative: 0.0 0.0;
7167                   to: "padding_right_bottom";
7168                }
7169                color: BUTTON_PICKER_TEXT_DEFAULT_COLOR_INC;
7170                text {
7171                   font: "SLP:style=Medium";
7172                   size: BUTTON_PICKER_BAR_DEFAULT_TEXT_FONT_SIZE_INC;
7173                   min: 1 0;
7174                   max: 0 0;
7175                   text_class: "slp_medium";
7176                }
7177             }
7178             description { state: "visible" 0.0;
7179                inherit: "default" 0.0;
7180                visible: 1;
7181                min: BUTTON_PICKER_BAR_DEFAULT_TEXT_VISIBLE_MIN_INC;
7182             }
7183             description { state: "clicked" 0.0;
7184                inherit: "default" 0.0;
7185                visible: 1;
7186                min: 0 0;
7187                color: BUTTON_PICKER_TEXT_CLICKED_COLOR_INC;
7188             }
7189             description { state: "disabled" 0.0;
7190                inherit: "default" 0.0;
7191                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7192             }
7193             description { state: "disabled_visible" 0.0;
7194                inherit: "default" 0.0;
7195                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7196                visible: 1;
7197                min: BUTTON_PICKER_BAR_DEFAULT_TEXT_VISIBLE_MIN_INC;
7198             }
7199             description { state: "focused" 0.0;
7200                inherit: "default" 0.0;
7201                visible: 1;
7202                min: 0 0;
7203                color: BUTTON_PICKER_TEXT_FOCUSED_COLOR_INC;
7204             }
7205          }
7206          part { name: "over2";
7207             type: RECT;
7208             repeat_events: 1;
7209             ignore_flags: ON_HOLD;
7210             description { state: "default" 0.0;
7211                color: 0 0 0 0;
7212             }
7213          }
7214          part { name: "over3";
7215             type: RECT;
7216             repeat_events: 1;
7217             description { state: "default" 0.0;
7218                color: 0 0 0 0;
7219             }
7220          }
7221          part { name: "clipper";
7222             type: RECT;
7223             description { state: "default" 0.0;
7224                color: 255 255 255 255;
7225             }
7226          }
7227          part { name: "disabler";
7228             type: RECT;
7229             description { state: "default" 0.0;
7230                color: 0 0 0 0;
7231                visible: 0;
7232             }
7233             description { state: "disabled" 0.0;
7234                inherit: "default" 0.0;
7235                visible: 1;
7236             }
7237          }
7238       }
7239       programs {
7240          program { name: "button_click";
7241             signal: "mouse,down,1";
7242             source: "over2";
7243             action: SIGNAL_EMIT "elm,action,press" "";
7244             after: "button_click_anim";
7245          }
7246          program { name: "button_click_anim";
7247             action: STATE_SET "clicked" 0.0;
7248             target: "button_image";
7249             after: "text_clicked";
7250          }
7251          program { name: "text_clicked";
7252             script {
7253                new st[31];
7254                new Float:vl;
7255                get_state(PART:"elm.text", st, 30, vl);
7256                if (!strcmp(st, "visible"))
7257                  set_state(PART:"elm.text", "clicked", 0.0);
7258             }
7259          }
7260          program { name: "button_unpress";
7261             action: SIGNAL_EMIT "elm,action,unpress" "";
7262          }
7263          program { name: "button_mouseout_clicked";
7264             signal: "mouse,up,1";
7265             source: "over3";
7266             script {
7267                new st[31];
7268                new Float:vl;
7269                get_state(PART:"elm.swallow.content", st, 30, vl);
7270                if (strcmp(st, "icononly"))
7271                  {
7272                     emit("elm,action,default,text,set", "");
7273                     set_state(PART:"elm.text", "visible", 0.0);
7274                  }
7275                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7276                  set_state(PART:"button_image", "default", 0.0);
7277             }
7278             after: button_unpress;
7279          }
7280          program { name: "touch_snd";
7281             signal: "mouse,clicked,1";
7282             source: "over2";
7283             action: PLAY_SAMPLE "touch_sound" 1.0;
7284             after: button_unclick3;
7285          }
7286          program { name: "button_unclick3";
7287             action: SIGNAL_EMIT "elm,action,click" "";
7288          }
7289          program { name: "text_show";
7290             signal: "elm,state,text,visible";
7291             source: "elm";
7292             script {
7293                new st[31];
7294                new Float:vl;
7295                get_state(PART:"elm.swallow.content", st, 30, vl);
7296                if (!strcmp(st, "icononly"))
7297                  {
7298                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7299                     set_state(PART:"padding_icon_text", "visible", 0.0);
7300                  }
7301                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7302                  set_state(PART:"elm.text", "visible", 0.0);
7303                else
7304                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7305             }
7306          }
7307          program { name: "text_hide";
7308             signal: "elm,state,text,hidden";
7309             source: "elm";
7310             script {
7311                new st[31];
7312                new Float:vl;
7313                get_state(PART:"elm.swallow.content", st, 30, vl);
7314                if (!strcmp(st, "visible"))
7315                  {
7316                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7317                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7318                  }
7319                set_state(PART:"elm.text", "default", 0.0);
7320             }
7321          }
7322          program { name: "icon_show";
7323             signal: "elm,state,icon,visible";
7324             source: "elm";
7325             script {
7326                new st[31];
7327                new Float:vl;
7328                get_state(PART:"elm.text", st, 30, vl);
7329                if (!strcmp(st, "visible"))
7330                  {
7331                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7332                     set_state(PART:"padding_icon_text", "visible", 0.0);
7333                  }
7334                else
7335                  {
7336                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7337                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7338                  }
7339             }
7340          }
7341          program { name: "icon_hide";
7342             signal: "elm,state,icon,hidden";
7343             source: "elm";
7344             action: STATE_SET "default" 0.0;
7345             target: "elm.swallow.content";
7346             target: "padding_icon_text";
7347          }
7348          program { name: "disable";
7349             signal: "elm,state,disabled";
7350             source: "elm";
7351             action: STATE_SET "disabled" 0.0;
7352             target: "button_image";
7353             target: "disabler";
7354             after: "disable_text";
7355          }
7356          program { name: "disable_text";
7357             script {
7358                new st[31];
7359                new Float:vl;
7360                get_state(PART:"elm.text", st, 30, vl);
7361                if (!strcmp(st, "visible"))
7362                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7363                else
7364                  set_state(PART:"elm.text", "disabled", 0.0);
7365                set_int(button_state, BUTTON_STATE_DISABLED);
7366             }
7367          }
7368          program { name: "enable";
7369             signal: "elm,state,enabled";
7370             source: "elm";
7371             action: STATE_SET "default" 0.0;
7372             target: "button_image";
7373             target: "disabler";
7374             after: "enable_text";
7375          }
7376          program { name: "enable_text";
7377             script {
7378                new st[31];
7379                new Float:vl;
7380                get_state(PART:"elm.text", st, 30, vl);
7381                if (!strcmp(st, "disabled_visible"))
7382                  set_state(PART:"elm.text", "visible", 0.0);
7383                else
7384                  set_state(PART:"elm.text", "default", 0.0);
7385                set_int(button_state, BUTTON_STATE_ENABLED);
7386             }
7387          }
7388          program { name: "focused";
7389             //signal: "elm,action,focus";
7390             //source: "elm";
7391             action: STATE_SET "focused" 0.0;
7392             target: "button_image";
7393             target: "elm.text";
7394          }
7395          program { name: "unfocused";
7396             //signal: "elm,action,unfocus";
7397             //source: "elm";
7398             action: STATE_SET "default" 0.0;
7399             target: "button_image";
7400             after: "unfocus_text";
7401          }
7402          program { name: "unfocus_text";
7403             action: STATE_SET "visible" 0.0;
7404             target: "elm.text";
7405          }
7406       }
7407    }
7408
7409 ///////////////////////////////////////////////////////////////////////////////////////
7410    group { name: "elm/button/base/picker/prev/text/default";
7411       alias: "elm/button/base/picker/next/text/default";
7412       images {
7413          image: "00_picker_btn_normal.png" COMP;
7414          image: "00_picker_btn_press.png" COMP;
7415          image: "00_picker_btn_normal_focus.png" COMP;
7416       }
7417       script {
7418          public button_state = BUTTON_STATE_ENABLED;
7419       }
7420       parts {
7421          part { name: "button_image";
7422             scale: 1;
7423             description { state: "default" 0.0;
7424                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_BG_DEFAULT_MIN_INC;
7425                image {
7426                   normal: "00_picker_btn_normal.png";
7427                   border: BUTTON_PICKER_PREV_TEXT_DEFAULT_BG_DEFAULT_BORDER_INC;
7428                   border_scale: 1;
7429                }
7430             }
7431             description { state: "clicked" 0.0;
7432                inherit: "default" 0.0;
7433                image.normal: "00_picker_btn_press.png";
7434             }
7435             description { state: "disabled" 0.0;
7436                inherit: "default" 0.0;
7437                color: 0 0 0 128;
7438             }
7439             description { state: "focused" 0.0;
7440                inherit: "default" 0.0;
7441                image.normal: "00_picker_btn_normal_focus.png";
7442             }
7443          }
7444          part { name: "padding_left_top";
7445             type: RECT;
7446             scale: 1;
7447             mouse_events: 0;
7448             description { state: "default" 0.0;
7449                align: 0.0 0.0;
7450                rel2.relative: 0.0 0.0;
7451                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_MIN_INC;
7452                fixed: 1 1;
7453                visible: 0;
7454             }
7455          }
7456          part { name: "padding_right_bottom";
7457             type: RECT;
7458             scale: 1;
7459             mouse_events: 0;
7460             description { state: "default" 0.0;
7461                align: 1.0 1.0;
7462                rel1.relative: 1.0 1.0;
7463                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_MIN_INC;
7464                fixed: 1 1;
7465                visible: 0;
7466             }
7467          }
7468          part { name: "icon_rect";
7469             type: RECT;
7470             scale: 1;
7471             mouse_events: 0;
7472             description { state: "default" 0.0;
7473                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_ICON_RECT_MIN_INC;
7474                fixed: 1 0;
7475                rel1 {
7476                   relative: 0.0 1.0;
7477                   to_x: "elm.swallow.content";
7478                   to_y: "padding_left_top";
7479                }
7480                rel2 {
7481                   relative: 1.0 0.0;
7482                   to_x: "elm.swallow.content";
7483                   to_y: "padding_right_bottom";
7484                }
7485                align: 0.0 0.5;
7486                color: 0 0 0 0;
7487             }
7488          }
7489          part { name: "padding_icon_text";
7490             type: RECT;
7491             scale: 1;
7492             mouse_events: 0;
7493             description { state: "default" 0.0; //when only icon or no icon is there
7494                align: 0.0 0.0;
7495                rel1 {
7496                   relative: 1.0 0.0;
7497                   to: "icon_rect";
7498                }
7499                rel2.to: "icon_rect";
7500                fixed: 1 0;
7501                min: 0 0;
7502                color: 0 0 0 0;
7503             }
7504             description { state: "icononly" 0.0;
7505                inherit: "default" 0.0;
7506             }
7507             description { state: "visible" 0.0; //when icon is visible
7508                align: 0.0 0.0;
7509                rel1 {
7510                   relative: 1.0 0.0;
7511                   to: "icon_rect";
7512                }
7513                rel2.to: "icon_rect";
7514                fixed: 1 0;
7515                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_PADDING_ICON_RECT_TEXT_MIN_INC;
7516                color: 0 0 0 0;
7517             }
7518          }
7519          part { name: "elm.swallow.content";
7520             type: SWALLOW;
7521             scale: 1;
7522             clip_to: "clipper";
7523             description { state: "default" 0.0;
7524                visible: 0;
7525                align: 0.0 0.5;
7526                rel1 {
7527                   relative: 1.0 1.0;
7528                   to: "padding_left_top";
7529                }
7530                rel2 {
7531                   relative: 1.0 0.0;
7532                   to_x: "padding_left_top";
7533                   to_y: "padding_right_bottom";
7534                }
7535                fixed: 1 0;
7536             }
7537             description { state: "visible" 0.0;
7538                fixed: 1 0;
7539                align: 0.0 0.5;
7540                rel1 {
7541                   relative: 1.0 1.0;
7542                   to: "padding_left_top";
7543                }
7544                rel2 {
7545                   relative: 1.0 0.0;
7546                   to_x: "padding_left_top";
7547                   to_y: "padding_right_bottom";
7548                }
7549                aspect: 1.0 1.0;
7550                aspect_preference: VERTICAL;
7551             }
7552             description { state: "icononly" 0.0;
7553                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_CONTENT_ICON_ONLY_MIN_INC;
7554                rel1 {
7555                   relative: 1.0 1.0;
7556                   to: "padding_left_top";
7557                }
7558                rel2 {
7559                   relative: 1.0 0.0;
7560                   to_x: "padding_left_top";
7561                   to_y: "padding_right_bottom";
7562                }
7563                aspect: 1.0 1.0;
7564                aspect_preference: VERTICAL;
7565             }
7566          }
7567          part { name: "elm.text";
7568             type: TEXT;
7569             mouse_events: 0;
7570             scale: 1;
7571             clip_to: "clipper";
7572             description { state: "default" 0.0;
7573                visible: 0;
7574                rel1 {
7575                   relative: 1.0 1.0;
7576                   to_x: "padding_icon_text";
7577                   to_y: "padding_left_top";
7578                }
7579                rel2 {
7580                   relative: 0.0 0.0;
7581                   to: "padding_right_bottom";
7582                }
7583                color: BUTTON_PICKER_TEXT_DEFAULT_COLOR_INC;
7584                text {
7585                   font: "SLP:style=Medium";
7586                   size: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_FONT_SIZE_INC;
7587                   min: 1 0;
7588                   max: 1 0;
7589                   text_class: "slp_medium";
7590                }
7591             }
7592             description { state: "visible" 0.0;
7593                inherit: "default" 0.0;
7594                visible: 1;
7595                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_VISIBLE_MIN_INC;
7596             }
7597             description { state: "clicked" 0.0;
7598                inherit: "default" 0.0;
7599                visible: 1;
7600                min: 0 0;
7601                color: BUTTON_PICKER_TEXT_CLICKED_COLOR_INC;
7602             }
7603             description { state: "disabled" 0.0;
7604                inherit: "default" 0.0;
7605                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7606             }
7607             description { state: "disabled_visible" 0.0;
7608                inherit: "default" 0.0;
7609                color: BUTTON_PICKER_TEXT_DISABLED_COLOR_INC;
7610                visible: 1;
7611                min: BUTTON_PICKER_PREV_TEXT_DEFAULT_TEXT_VISIBLE_MIN_INC;
7612             }
7613             description { state: "focused" 0.0;
7614                inherit: "default" 0.0;
7615                visible: 1;
7616                min: 0 0;
7617                color: BUTTON_PICKER_TEXT_FOCUSED_COLOR_INC;
7618             }
7619          }
7620          part { name: "over2";
7621             type: RECT;
7622             repeat_events: 1;
7623             ignore_flags: ON_HOLD;
7624             description { state: "default" 0.0;
7625                color: 0 0 0 0;
7626             }
7627          }
7628          part { name: "over3";
7629             type: RECT;
7630             repeat_events: 1;
7631             description { state: "default" 0.0;
7632                color: 0 0 0 0;
7633             }
7634          }
7635          part { name: "clipper";
7636             type: RECT;
7637             description { state: "default" 0.0;
7638                color: 255 255 255 255;
7639             }
7640          }
7641          part { name: "disabler";
7642             type: RECT;
7643             description { state: "default" 0.0;
7644                color: 0 0 0 0;
7645                visible: 0;
7646             }
7647             description { state: "disabled" 0.0;
7648                inherit: "default" 0.0;
7649                visible: 1;
7650             }
7651          }
7652       }
7653       programs {
7654          program { name: "button_click";
7655             signal: "mouse,down,1";
7656             source: "over2";
7657             action: SIGNAL_EMIT "elm,action,press" "";
7658             after: "button_click_anim";
7659          }
7660          program { name: "button_click_anim";
7661             action: STATE_SET "clicked" 0.0;
7662             target: "button_image";
7663             after: "text_clicked";
7664          }
7665          program { name: "text_clicked";
7666             script {
7667                new st[31];
7668                new Float:vl;
7669                get_state(PART:"elm.text", st, 30, vl);
7670                if (!strcmp(st, "visible"))
7671                  set_state(PART:"elm.text", "clicked", 0.0);
7672             }
7673          }
7674          program { name: "button_unpress";
7675             action: SIGNAL_EMIT "elm,action,unpress" "";
7676          }
7677          program { name: "button_mouseout_clicked";
7678             signal: "mouse,up,1";
7679             source: "over3";
7680             script {
7681                new st[31];
7682                new Float:vl;
7683                get_state(PART:"elm.swallow.content", st, 30, vl);
7684                if (strcmp(st, "icononly"))
7685                  {
7686                     emit("elm,action,default,text,set", "");
7687                     set_state(PART:"elm.text", "visible", 0.0);
7688                  }
7689                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7690                  set_state(PART:"button_image", "default", 0.0);
7691             }
7692             after: button_unpress;
7693          }
7694          program { name: "touch_snd";
7695             signal: "mouse,clicked,1";
7696             source: "over2";
7697             action: PLAY_SAMPLE "touch_sound" 1.0;
7698             after: button_unclick3;
7699          }
7700          program { name: "button_unclick3";
7701             action: SIGNAL_EMIT "elm,action,click" "";
7702          }
7703          program { name: "text_show";
7704             signal: "elm,state,text,visible";
7705             source: "elm";
7706             script {
7707                new st[31];
7708                new Float:vl;
7709                get_state(PART:"elm.swallow.content", st, 30, vl);
7710                if (!strcmp(st, "icononly"))
7711                  {
7712                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7713                     set_state(PART:"padding_icon_text", "visible", 0.0);
7714                  }
7715                if (get_int(button_state) != BUTTON_STATE_DISABLED)
7716                  set_state(PART:"elm.text", "visible", 0.0);
7717                else
7718                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7719             }
7720          }
7721          program { name: "text_hide";
7722             signal: "elm,state,text,hidden";
7723             source: "elm";
7724             script {
7725                new st[31];
7726                new Float:vl;
7727                get_state(PART:"elm.swallow.content", st, 30, vl);
7728                if (!strcmp(st, "visible"))
7729                  {
7730                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7731                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7732                  }
7733                set_state(PART:"elm.text", "default", 0.0);
7734             }
7735          }
7736          program { name: "icon_show";
7737             signal: "elm,state,icon,visible";
7738             source: "elm";
7739             script {
7740                new st[31];
7741                new Float:vl;
7742                get_state(PART:"elm.text", st, 30, vl);
7743                if (!strcmp(st, "visible"))
7744                  {
7745                     set_state(PART:"elm.swallow.content", "visible", 0.0);
7746                     set_state(PART:"padding_icon_text", "visible", 0.0);
7747                  }
7748                else
7749                  {
7750                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
7751                     set_state(PART:"padding_icon_text", "icononly", 0.0);
7752                  }
7753             }
7754          }
7755          program { name: "icon_hide";
7756             signal: "elm,state,icon,hidden";
7757             source: "elm";
7758             action: STATE_SET "default" 0.0;
7759             target: "elm.swallow.content";
7760             target: "padding_icon_text";
7761          }
7762          program { name: "disable";
7763             signal: "elm,state,disabled";
7764             source: "elm";
7765             action: STATE_SET "disabled" 0.0;
7766             target: "button_image";
7767             target: "disabler";
7768             after: "disable_text";
7769          }
7770          program { name: "disable_text";
7771             script {
7772                new st[31];
7773                new Float:vl;
7774                get_state(PART:"elm.text", st, 30, vl);
7775                if (!strcmp(st, "visible"))
7776                  set_state(PART:"elm.text", "disabled_visible", 0.0);
7777                else
7778                  set_state(PART:"elm.text", "disabled", 0.0);
7779                set_int(button_state, BUTTON_STATE_DISABLED);
7780             }
7781          }
7782          program { name: "enable";
7783             signal: "elm,state,enabled";
7784             source: "elm";
7785             action: STATE_SET "default" 0.0;
7786             target: "button_image";
7787             target: "disabler";
7788             after: "enable_text";
7789          }
7790          program { name: "enable_text";
7791             script {
7792                new st[31];
7793                new Float:vl;
7794                get_state(PART:"elm.text", st, 30, vl);
7795                if (!strcmp(st, "disabled_visible"))
7796                  set_state(PART:"elm.text", "visible", 0.0);
7797                else
7798                  set_state(PART:"elm.text", "default", 0.0);
7799                set_int(button_state, BUTTON_STATE_ENABLED);
7800             }
7801          }
7802          program { name: "focused";
7803             //signal: "elm,action,focus";
7804             //source: "elm";
7805             action: STATE_SET "focused" 0.0;
7806             target: "button_image";
7807             target: "elm.text";
7808          }
7809          program { name: "unfocused";
7810             //signal: "elm,action,unfocus";
7811             //source: "elm";
7812             action: STATE_SET "default" 0.0;
7813             target: "button_image";
7814             after: "unfocus_text";
7815          }
7816          program { name: "unfocus_text";
7817             action: STATE_SET "visible" 0.0;
7818             target: "elm.text";
7819          }
7820       }
7821    }
7822
7823 ///////////////////////////////////////////////////////////////////////////////////////
7824 #define BUTTON_CONTACT_STYLES(style_name, image_normal, image_press) \
7825    group { name: "elm/button/base/contact/"style_name; \
7826       images { \
7827          image: "00_contacts_circle_bg.png" COMP; \
7828          image: image_normal COMP; \
7829          image: image_press COMP; \
7830       } \
7831       parts { \
7832          part { name: "button_image"; \
7833             scale: 1; \
7834             description { state: "default" 0.0; \
7835                min: BUTTON_CONTACT_STYLE_BG_MIN_MAX_INC; \
7836                max: BUTTON_CONTACT_STYLE_BG_MIN_MAX_INC; \
7837                image.normal: "00_contacts_circle_bg.png"; \
7838                color: 255 255 255 255; \
7839             } \
7840             description { \
7841                state: "clicked" 0.0; \
7842                inherit: "default" 0.0; \
7843                image.normal: "00_contacts_circle_bg.png"; \
7844             } \
7845             description { \
7846                state: "disabled" 0.0; \
7847                inherit: "default" 0.0; \
7848                color: 255 255 255 128; \
7849             } \
7850          } \
7851          part { name: "button_center_part"; \
7852             scale: 1; \
7853             description { state: "default" 0.0; \
7854                min: BUTTON_CONTACT_STYLE_IMAGE_MIN_MAX_INC; \
7855                max: BUTTON_CONTACT_STYLE_IMAGE_MIN_MAX_INC; \
7856                image.normal: image_normal; \
7857                color: 255 255 255 255; \
7858             } \
7859             description { \
7860                state: "clicked" 0.0; \
7861                inherit: "default" 0.0; \
7862                image.normal: image_press; \
7863             } \
7864             description { \
7865                state: "disabled" 0.0; \
7866                inherit: "default" 0.0; \
7867                color: 255 255 255 128; \
7868             } \
7869          } \
7870          part { name: "over1"; \
7871             type: RECT; \
7872             ignore_flags: ON_HOLD; \
7873             description { state: "default" 0.0; \
7874                color: 0 0 0 0; \
7875             } \
7876          } \
7877          part { name: "over2"; \
7878             repeat_events: 1; \
7879             description { state: "default" 0.0; \
7880                color: 0 0 0 0; \
7881             } \
7882          } \
7883          part { name: "disabler"; \
7884             type: RECT; \
7885             description { state: "default" 0.0; \
7886                color: 0 0 0 0; \
7887                visible: 0; \
7888             } \
7889             description { state: "disabled" 0.0; \
7890                inherit: "default" 0.0; \
7891                visible: 1; \
7892             } \
7893          } \
7894       } \
7895       programs { \
7896          program { name: "button_click"; \
7897             signal: "mouse,down,1"; \
7898             source: "over1"; \
7899             action: SIGNAL_EMIT "elm,action,press" ""; \
7900             after: "button_click_anim"; \
7901          } \
7902          program { name: "button_click_anim"; \
7903             action: STATE_SET "clicked" 0.0; \
7904             target: "button_image"; \
7905             target: "button_center_part"; \
7906          } \
7907          program { name: "button_unclick"; \
7908             signal: "mouse,up,1"; \
7909             source: "over2"; \
7910             action: SIGNAL_EMIT "elm,action,unpress" ""; \
7911             after: "button_unclick_anim"; \
7912          } \
7913          program { name: "button_unclick_anim"; \
7914             action: STATE_SET "default" 0.0; \
7915             target: "button_image"; \
7916             target: "button_center_part"; \
7917          } \
7918          program { name: "touch_snd"; \
7919             signal: "mouse,clicked,1"; \
7920             source: "over1"; \
7921             action: PLAY_SAMPLE "touch_sound" 1.0; \
7922             after: button_unclick3; \
7923          } \
7924          program { name: "button_unclick3"; \
7925             action: SIGNAL_EMIT "elm,action,click" ""; \
7926          } \
7927          program { name: "disable"; \
7928             signal: "elm,state,disabled"; \
7929             source: "elm"; \
7930             action: STATE_SET "disabled" 0.0; \
7931             target: "disabler"; \
7932             target: "button_image"; \
7933             target: "button_center_part"; \
7934          } \
7935          program { name: "enable"; \
7936             signal: "elm,state,enabled"; \
7937             source: "elm"; \
7938             action: STATE_SET "default" 0.0; \
7939             target: "disabler"; \
7940             target: "button_image"; \
7941             target: "button_center_part"; \
7942          } \
7943       } \
7944    }
7945
7946 ///////////////////////////////////////////////////////////////////////////////////////
7947    BUTTON_CONTACT_STYLES("expand_closed", "00_button_expand_closed.png", "00_button_expand_closed_press.png")
7948
7949    BUTTON_CONTACT_STYLES("expand_opened", "00_button_expand_opened.png", "00_button_expand_opened_press.png")
7950
7951    BUTTON_CONTACT_STYLES("plus", "00_button_plus.png", "00_button_plus_press.png")
7952
7953 ///////////////////////////////////////////////////////////////////////////////////////
7954    group { name: "elm/button/base/contact";
7955       alias: "elm/button/base/text_only/contact";
7956       images {
7957          image: "00_contacts_button_bg.png" COMP;
7958          image: "00_contacts_button_bg_press.png" COMP;
7959       }
7960       script {
7961          public button_state = BUTTON_STATE_ENABLED;
7962       }
7963       parts {
7964          part { name: "button_image";
7965             scale: 1;
7966             description { state: "default" 0.0;
7967                rel1 {
7968                   to_x: "padding.left";
7969                   to_y: "elm.text";
7970                }
7971                rel2 {
7972                   to_x: "padding.right";
7973                   to_y: "elm.text";
7974                }
7975                min: BUTTON_CONTACT_BG_MIN_INC;
7976                image {
7977                   normal: "00_contacts_button_bg.png";
7978                   border: BUTTON_CONTACT_BG_BORDER_INC;
7979                   border_scale: 1;
7980                }
7981             }
7982             description { state: "clicked" 0.0;
7983                inherit: "default" 0.0;
7984                image.normal: "00_contacts_button_bg_press.png";
7985             }
7986             description { state: "disabled" 0.0;
7987                inherit: "default" 0.0;
7988                color: 0 0 0 128;
7989             }
7990             description { state: "focused" 0.0;
7991                inherit: "default" 0.0;
7992             }
7993          }
7994          part { name: "padding.left";
7995             type: RECT;
7996             scale: 1;
7997             description { state: "default" 0.0;
7998                visible: 0;
7999                min: BUTTON_CONTACT_PADDING_MIN_INC;
8000                fixed: 1 0;
8001                color: 0 0 0 0;
8002                rel2 {
8003                   relative: 0.0 1.0;
8004                   to_x: "elm.text";
8005                }
8006                align: 1.0 0.0;
8007             }
8008          }
8009          part { name: "padding.right";
8010             type: RECT;
8011             scale: 1;
8012             description { state: "default" 0.0;
8013                visible: 0;
8014                min: BUTTON_CONTACT_PADDING_MIN_INC;
8015                fixed: 1 0;
8016                color: 0 0 0 0;
8017                rel1 {
8018                   relative: 1.0 0.0;
8019                   to_x: "elm.text";
8020                }
8021                align: 0.0 0.0;
8022             }
8023          }
8024          part {   name: "elm.text";
8025             type: TEXT;
8026             mouse_events: 0;
8027             scale: 1;
8028             description { state: "default" 0.0;
8029                visible: 0;
8030                fixed: 1 1;
8031                color: BUTTON_CONTACT_BUTTON_TEXT_NORMAL_COLOR_INC;
8032                text {
8033                   font: "SLP:style=Medium";
8034                   size: BUTTON_CONTACT_FONT_SIZE_INC;
8035                   min: 1 1;
8036                   text_class: "slp_medium";
8037                }
8038             }
8039             description { state: "visible" 0.0;
8040                inherit: "default" 0.0;
8041                visible: 1;
8042                min: 1 1;
8043             }
8044             description { state: "clicked" 0.0;
8045                inherit: "default" 0.0;
8046                visible: 1;
8047                min: 1 1;
8048                color: BUTTON_CONTACT_BUTTON_TEXT_PRESSED_COLOR_INC;
8049             }
8050             description { state: "disabled" 0.0;
8051                inherit: "default" 0.0;
8052                color: 0 0 0 128;
8053             }
8054             description { state: "disabled_visible" 0.0;
8055                inherit: "default" 0.0;
8056                color: BUTTON_CONTACT_BUTTON_TEXT_DISABLED_COLOR_INC;
8057                visible: 1;
8058                min: 1 1;
8059             }
8060             description { state: "focused" 0.0;
8061                inherit: "default" 0.0;
8062                visible: 1;
8063                min: 1 1;
8064                color: BUTTON_CONTACT_BUTTON_TEXT_FOCUSED_COLOR_INC;
8065             }
8066          }
8067          part { name: "over1";
8068             mouse_events: 0;
8069             description { state: "default" 0.0;
8070                rel2.relative: 1.0 0.5;
8071             }
8072          }
8073          part { name: "over2";
8074             repeat_events: 1;
8075             ignore_flags: ON_HOLD;
8076             description { state: "default" 0.0;
8077                rel1.to: "button_image";
8078                rel2.to: "button_image";
8079             }
8080          }
8081          part { name: "over3";
8082             repeat_events: 1;
8083             description { state: "default" 0.0;
8084                rel1.to: "button_image";
8085                rel2.to: "button_image";
8086                color: 0 0 0 0;
8087             }
8088          }
8089          part { name: "disabler";
8090             type: RECT;
8091             description { state: "default" 0.0;
8092                rel1.to: "button_image";
8093                rel2.to: "button_image";
8094                color: 0 0 0 0;
8095                visible: 0;
8096             }
8097             description { state: "disabled" 0.0;
8098                inherit: "default" 0.0;
8099                visible: 1;
8100             }
8101          }
8102       }
8103       programs {
8104          program { name: "button_click";
8105             signal: "mouse,down,1";
8106             source: "over2";
8107             action: SIGNAL_EMIT "elm,action,press" "";
8108             after: "button_click_anim";
8109          }
8110          program { name: "button_click_anim";
8111             action: STATE_SET "clicked" 0.0;
8112             target: "button_image";
8113             target: "elm.text";
8114          }
8115          program { name: "button_unpress";
8116             action: SIGNAL_EMIT "elm,action,unpress" "";
8117          }
8118          program { name: "button_mouseout_clicked";
8119             signal: "mouse,up,1";
8120             source: "over3";
8121             script {
8122                new st[31];
8123                new Float:vl;
8124                get_state(PART:"elm.text", st, 30, vl);
8125                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
8126                  {
8127                     emit("elm,action,default,text,set", "");
8128                     set_state(PART:"elm.text", "visible", 0.0);
8129                  }
8130                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8131                  set_state(PART:"button_image", "default", 0.0);
8132             }
8133             after: button_unpress;
8134          }
8135          program { name: "touch_snd";
8136             signal: "mouse,clicked,1";
8137             source: "over2";
8138             action: PLAY_SAMPLE "touch_sound" 1.0;
8139             after: button_unclick3;
8140          }
8141          program { name: "button_unclick3";
8142             action: SIGNAL_EMIT "elm,action,click" "";
8143          }
8144          program { name: "text_show";
8145             signal: "elm,state,text,visible";
8146             source: "elm";
8147             script {
8148                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8149                  set_state(PART:"elm.text", "visible", 0.0);
8150                else
8151                  set_state(PART:"elm.text", "disabled_visible", 0.0);
8152             }
8153          }
8154          program { name: "text_hide";
8155             signal: "elm,state,text,hidden";
8156             source: "elm";
8157             action: STATE_SET "default" 0.0;
8158             target: "elm.text";
8159          }
8160          program { name: "disable";
8161             signal: "elm,state,disabled";
8162             source: "elm";
8163             action: STATE_SET "disabled" 0.0;
8164             target: "button_image";
8165             target: "disabler";
8166             after: "disable_text";
8167          }
8168          program { name: "disable_text";
8169             script {
8170                new st[31];
8171                new Float:vl;
8172                get_state(PART:"elm.text", st, 30, vl);
8173                if (!strcmp(st, "visible"))
8174                  set_state(PART:"elm.text", "disabled_visible", 0.0);
8175                else
8176                  set_state(PART:"elm.text", "disabled", 0.0);
8177                set_int(button_state, BUTTON_STATE_DISABLED);
8178             }
8179          }
8180          program { name: "enable";
8181             signal: "elm,state,enabled";
8182             source: "elm";
8183             action: STATE_SET "default" 0.0;
8184             target: "button_image";
8185             target: "disabler";
8186             after: "enable_text";
8187          }
8188          program { name: "enable_text";
8189             script {
8190                new st[31];
8191                new Float:vl;
8192                get_state(PART:"elm.text", st, 30, vl);
8193                if (!strcmp(st, "disabled_visible"))
8194                  set_state(PART:"elm.text", "visible", 0.0);
8195                else
8196                  set_state(PART:"elm.text", "default", 0.0);
8197                set_int(button_state, BUTTON_STATE_ENABLED);
8198             }
8199          }
8200          program { name: "focused";
8201             //signal: "elm,action,focus";
8202             //source: "elm";
8203             action: STATE_SET "focused" 0.0;
8204             target: "button_image";
8205             target: "elm.text";
8206          }
8207          program { name: "unfocused";
8208             //signal: "elm,action,unfocus";
8209             //source: "elm";
8210             action: STATE_SET "default" 0.0;
8211             target: "button_image";
8212             action: STATE_SET "visible" 0.0;
8213             target: "elm.text";
8214          }
8215       }
8216    }
8217
8218 ///////////////////////////////////////////////////////////////////////////////////////
8219    group { name: "elm/button/base/naviframe/back_btn/default";
8220       alias: "elm/button/base/naviframe/prev_btn/default";
8221       alias: "elm/button/base/naviframe/end_btn/default";
8222       images {
8223          image: "00_winset_toolbar_press.png" COMP;
8224          image: "00_winset_Back.png" COMP;
8225       }
8226       script {
8227          public button_state = BUTTON_STATE_ENABLED;
8228       }
8229       parts {
8230          part { name: "button_image";
8231             scale: 1;
8232             description { state: "default" 0.0;
8233                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8234                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8235                color: 0 0 0 0;
8236             }
8237             description { state: "clicked" 0.0;
8238                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8239                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8240                image {
8241                   normal: "00_winset_toolbar_press.png";
8242                   border: BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC;
8243                }
8244             }
8245             description { state: "disabled" 0.0;
8246                inherit: "default" 0.0;
8247                color: 127 127 127 127;
8248             }
8249             description { state: "focused" 0.0;
8250                min: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8251                max: BUTTON_NAVIFRAME_BACK_BUTTON_BG_MIN_MAX_INC;
8252                image {
8253                   normal: "00_winset_toolbar_press.png";
8254                   border: BUTTON_NAVIFRAME_BACK_BUTTON_BG_BORDER_INC;
8255                }
8256             }
8257          }
8258          part { name: "back_button";
8259             scale: 1;
8260             mouse_events: 0;
8261             description { state: "default" 0.0;
8262                min: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
8263                max: BUTTON_NAVIFRAME_BACK_BUTTON_MIN_MAX_INC;
8264                rel1.to: "button_image";
8265                rel2.to: "button_image";
8266                image.normal: "00_winset_Back.png";
8267             }
8268             description { state: "clicked" 0.0;
8269                inherit: "default" 0.0;
8270             }
8271             description { state: "disabled" 0.0;
8272                inherit: "default" 0.0;
8273                color: 127 127 127 127;
8274             }
8275          }
8276          part { name: "over2";
8277             type: RECT;
8278             repeat_events: 1;
8279             ignore_flags: ON_HOLD;
8280             description { state: "default" 0.0;
8281                color: 0 0 0 0;
8282             }
8283          }
8284          part { name: "over3";
8285             type: RECT;
8286             repeat_events: 1;
8287             description { state: "default" 0.0;
8288                color: 0 0 0 0;
8289             }
8290          }
8291          part { name: "disabler";
8292             type: RECT;
8293             description { state: "default" 0.0;
8294                color: 0 0 0 0;
8295                visible: 0;
8296             }
8297             description { state: "disabled" 0.0;
8298                inherit: "default" 0.0;
8299                visible: 1;
8300             }
8301          }
8302       }
8303       programs {
8304          program { name: "button_click";
8305             signal: "mouse,down,1";
8306             source: "over2";
8307             action: SIGNAL_EMIT "elm,action,press" "";
8308             after: "button_click_anim";
8309          }
8310          program { name: "button_click_anim";
8311             action: STATE_SET "clicked" 0.0;
8312             target: "button_image";
8313          }
8314          program { name: "button_unpress";
8315             action: SIGNAL_EMIT "elm,action,unpress" "";
8316          }
8317          program { name: "button_mouseout_clicked";
8318             signal: "mouse,up,1";
8319             source: "over3";
8320             script {
8321                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8322                  set_state(PART:"button_image", "default", 0.0);
8323             }
8324             after: button_unpress;
8325          }
8326          program { name: "touch_snd";
8327             signal: "mouse,clicked,1";
8328             source: "over2";
8329             action: PLAY_SAMPLE "touch_sound" 1.0;
8330             after: button_unclick3;
8331          }
8332          program { name: "button_unclick3";
8333             action: SIGNAL_EMIT "elm,action,click" "";
8334          }
8335          program { name: "disable";
8336             signal: "elm,state,disabled";
8337             source: "elm";
8338             action: STATE_SET "disabled" 0.0;
8339             target: "button_image";
8340             target: "disabler";
8341             target: "back_button";
8342             after: "disable_button";
8343          }
8344          program { name: "disable_button";
8345             script {
8346                set_int(button_state, BUTTON_STATE_DISABLED);
8347             }
8348          }
8349          program { name: "enable";
8350             signal: "elm,state,enabled";
8351             source: "elm";
8352             action: STATE_SET "default" 0.0;
8353             target: "button_image";
8354             target: "disabler";
8355             target: "back_button";
8356             after: "enable_button";
8357          }
8358          program { name: "enable_button";
8359             script {
8360                set_int(button_state, BUTTON_STATE_ENABLED);
8361             }
8362          }
8363          program { name: "focused";
8364             //signal: "elm,action,focus";
8365             //source: "elm";
8366             action: STATE_SET "focused" 0.0;
8367             target: "button_image";
8368          }
8369          program { name: "unfocused";
8370             //signal: "elm,action,unfocus";
8371             //source: "elm";
8372             action: STATE_SET "default" 0.0;
8373             target: "button_image";
8374          }
8375       }
8376    }
8377
8378 ///////////////////////////////////////////////////////////////////////////////////////
8379    group { name: "elm/button/base/picker/prev/icon/default";
8380       images {
8381          image: "00_picker_btn_normal.png" COMP;
8382          image: "00_picker_btn_press.png" COMP;
8383          image: "00_picker_btn_normal_focus.png" COMP;
8384          image: "00_picker_arrow_left.png" COMP;
8385          image: "00_picker_arrow_left_press.png" COMP;
8386       }
8387       script {
8388          public button_state = BUTTON_STATE_ENABLED;
8389       }
8390       parts {
8391          part { name: "button_image";
8392             scale: 1;
8393             description { state: "default" 0.0;
8394                min: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8395                max: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8396                image {
8397                   normal: "00_picker_btn_normal.png";
8398                   border: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_BORDER_INC;
8399                   border_scale: 1;
8400                }
8401             }
8402             description { state: "clicked" 0.0;
8403                inherit: "default" 0.0;
8404                image.normal: "00_picker_btn_press.png";
8405             }
8406             description { state: "disabled" 0.0;
8407                inherit: "default" 0.0;
8408             }
8409             description { state: "focused" 0.0;
8410                inherit: "default" 0.0;
8411                image.normal: "00_picker_btn_normal_focus.png";
8412             }
8413          }
8414          part { name: "padding_left_top";
8415             type: RECT;
8416             scale: 1;
8417             mouse_events: 0;
8418             description { state: "default" 0.0;
8419                align: 0.0 0.0;
8420                rel2.relative: 0.0 0.0;
8421                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8422                fixed: 1 1;
8423                visible: 0;
8424             }
8425          }
8426          part { name: "padding_right_bottom";
8427             type: RECT;
8428             scale: 1;
8429             mouse_events: 0;
8430             description { state: "default" 0.0;
8431                align: 1.0 1.0;
8432                rel1.relative: 1.0 1.0;
8433                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8434                fixed: 1 1;
8435                visible: 0;
8436             }
8437          }
8438          part { name: "left_arrow";
8439             scale: 1;
8440             mouse_events: 0;
8441             description { state: "default" 0.0;
8442                min: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8443                max: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8444                rel1 {
8445                   relative: 1.0 1.0;
8446                   to: "padding_left_top";
8447                }
8448                rel2 {
8449                   relative: 0.0 0.0;
8450                   to: "padding_right_bottom";
8451                }
8452                image.normal: "00_picker_arrow_left.png";
8453             }
8454             description { state: "clicked" 0.0;
8455                inherit: "default" 0.0;
8456                image.normal: "00_picker_arrow_left_press.png";
8457             }
8458          }
8459          part { name: "over2";
8460             type: RECT;
8461             repeat_events: 1;
8462             ignore_flags: ON_HOLD;
8463             description { state: "default" 0.0;
8464                color: 0 0 0 0;
8465             }
8466          }
8467          part { name: "over3";
8468             type: RECT;
8469             repeat_events: 1;
8470             description { state: "default" 0.0;
8471                color: 0 0 0 0;
8472             }
8473          }
8474          part { name: "disabler";
8475             type: RECT;
8476             description { state: "default" 0.0;
8477                color: 0 0 0 0;
8478                visible: 0;
8479             }
8480             description { state: "disabled" 0.0;
8481                inherit: "default" 0.0;
8482                visible: 1;
8483             }
8484          }
8485       }
8486       programs {
8487          program { name: "button_click";
8488             signal: "mouse,down,1";
8489             source: "over2";
8490             action: SIGNAL_EMIT "elm,action,press" "";
8491             after: "button_click_anim";
8492          }
8493          program { name: "button_click_anim";
8494             action: STATE_SET "clicked" 0.0;
8495             target: "button_image";
8496          }
8497          program { name: "button_unpress";
8498             action: SIGNAL_EMIT "elm,action,unpress" "";
8499          }
8500          program { name: "button_mouseout_clicked";
8501             signal: "mouse,up,1";
8502             source: "over3";
8503             script {
8504                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8505                  set_state(PART:"button_image", "default", 0.0);
8506             }
8507             after: button_unpress;
8508          }
8509          program { name: "touch_snd";
8510             signal: "mouse,clicked,1";
8511             source: "over2";
8512             action: PLAY_SAMPLE "touch_sound" 1.0;
8513             after: button_unclick3;
8514          }
8515          program { name: "button_unclick3";
8516             action: SIGNAL_EMIT "elm,action,click" "";
8517          }
8518          program { name: "disable";
8519             signal: "elm,state,disabled";
8520             source: "elm";
8521             action: STATE_SET "disabled" 0.0;
8522             target: "button_image";
8523             target: "disabler";
8524             after: "disable_button";
8525          }
8526          program { name: "disable_button";
8527             script {
8528                set_int(button_state, BUTTON_STATE_DISABLED);
8529             }
8530          }
8531          program { name: "enable";
8532             signal: "elm,state,enabled";
8533             source: "elm";
8534             action: STATE_SET "default" 0.0;
8535             target: "button_image";
8536             target: "disabler";
8537             after: "enable_button";
8538          }
8539          program { name: "enable_button";
8540             script {
8541                set_int(button_state, BUTTON_STATE_ENABLED);
8542             }
8543          }
8544          program { name: "focused";
8545             //signal: "elm,action,focus";
8546             //source: "elm";
8547             action: STATE_SET "focused" 0.0;
8548             target: "button_image";
8549          }
8550          program { name: "unfocused";
8551             //signal: "elm,action,unfocus";
8552             //source: "elm";
8553             action: STATE_SET "default" 0.0;
8554             target: "button_image";
8555          }
8556       }
8557    }
8558
8559 ///////////////////////////////////////////////////////////////////////////////////////
8560    group { name: "elm/button/base/picker/next/icon/default";
8561       images {
8562          image: "00_picker_btn_normal.png" COMP;
8563          image: "00_picker_btn_press.png" COMP;
8564          image: "00_picker_btn_normal_focus.png" COMP;
8565          image: "00_picker_arrow_right.png" COMP;
8566          image: "00_picker_arrow_right_press.png" COMP;
8567       }
8568       script {
8569          public button_state = BUTTON_STATE_ENABLED;
8570       }
8571       parts {
8572          part { name: "button_image";
8573             scale: 1;
8574             description { state: "default" 0.0;
8575                min: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8576                max: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_MIN_MAX_INC;
8577                image {
8578                   normal: "00_picker_btn_normal.png";
8579                   border: BUTTON_PICKER_PREV_ICON_DEFAULT_BG_DEFAULT_BORDER_INC;
8580                   border_scale: 1;
8581                }
8582             }
8583             description { state: "clicked" 0.0;
8584                inherit: "default" 0.0;
8585                image.normal: "00_picker_btn_press.png";
8586             }
8587             description { state: "disabled" 0.0;
8588                inherit: "default" 0.0;
8589             }
8590             description { state: "focused" 0.0;
8591                inherit: "default" 0.0;
8592                image.normal: "00_picker_btn_normal_focus.png";
8593             }
8594          }
8595          part { name: "padding_left_top";
8596             type: RECT;
8597             scale: 1;
8598             mouse_events: 0;
8599             description { state: "default" 0.0;
8600                align: 0.0 0.0;
8601                rel2.relative: 0.0 0.0;
8602                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8603                fixed: 1 1;
8604                visible: 0;
8605             }
8606          }
8607          part { name: "padding_right_bottom";
8608             type: RECT;
8609             scale: 1;
8610             mouse_events: 0;
8611             description { state: "default" 0.0;
8612                align: 1.0 1.0;
8613                rel1.relative: 1.0 1.0;
8614                min: BUTTON_PICKER_PREV_ICON_DEFAULT_PADDING_MIN_INC;
8615                fixed: 1 1;
8616                visible: 0;
8617             }
8618          }
8619          part { name: "right_arrow";
8620             scale: 1;
8621             mouse_events: 0;
8622             description { state: "default" 0.0;
8623                min: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8624                max: BUTTON_PICKER_PREV_ICON_DEFAULT_IMAGE_MIN_MAX_INC;
8625                rel1 {
8626                   relative: 1.0 1.0;
8627                   to: "padding_left_top";
8628                }
8629                rel2 {
8630                   relative: 0.0 0.0;
8631                   to: "padding_right_bottom";
8632                }
8633                image.normal: "00_picker_arrow_right.png";
8634             }
8635             description { state: "clicked" 0.0;
8636                inherit: "default" 0.0;
8637                image.normal: "00_picker_arrow_right_press.png";
8638             }
8639          }
8640          part { name: "over2";
8641             type: RECT;
8642             repeat_events: 1;
8643             ignore_flags: ON_HOLD;
8644             description { state: "default" 0.0;
8645                color: 0 0 0 0;
8646             }
8647          }
8648          part { name: "over3";
8649             type: RECT;
8650             repeat_events: 1;
8651             description { state: "default" 0.0;
8652                color: 0 0 0 0;
8653             }
8654          }
8655          part { name: "disabler";
8656             type: RECT;
8657             description { state: "default" 0.0;
8658                color: 0 0 0 0;
8659                visible: 0;
8660             }
8661             description { state: "disabled" 0.0;
8662                inherit: "default" 0.0;
8663                visible: 1;
8664             }
8665          }
8666       }
8667       programs {
8668          program { name: "button_click";
8669             signal: "mouse,down,1";
8670             source: "over2";
8671             action: SIGNAL_EMIT "elm,action,press" "";
8672             after: "button_click_anim";
8673          }
8674          program { name: "button_click_anim";
8675             action: STATE_SET "clicked" 0.0;
8676             target: "button_image";
8677          }
8678          program { name: "button_unpress";
8679             action: SIGNAL_EMIT "elm,action,unpress" "";
8680          }
8681          program { name: "button_mouseout_clicked";
8682             signal: "mouse,up,1";
8683             source: "over3";
8684             script {
8685                if (get_int(button_state) != BUTTON_STATE_DISABLED)
8686                  set_state(PART:"button_image", "default", 0.0);
8687             }
8688             after: button_unpress;
8689          }
8690          program { name: "touch_snd";
8691             signal: "mouse,clicked,1";
8692             source: "over2";
8693             action: PLAY_SAMPLE "touch_sound" 1.0;
8694             after: button_unclick3;
8695          }
8696          program { name: "button_unclick3";
8697             action: SIGNAL_EMIT "elm,action,click" "";
8698          }
8699          program { name: "disable";
8700             signal: "elm,state,disabled";
8701             source: "elm";
8702             action: STATE_SET "disabled" 0.0;
8703             target: "button_image";
8704             target: "disabler";
8705             after: "disable_button";
8706          }
8707          program { name: "disable_button";
8708             script {
8709                set_int(button_state, BUTTON_STATE_DISABLED);
8710             }
8711          }
8712          program { name: "enable";
8713             signal: "elm,state,enabled";
8714             source: "elm";
8715             action: STATE_SET "default" 0.0;
8716             target: "button_image";
8717             target: "disabler";
8718             after: "enable_button";
8719          }
8720          program { name: "enable_button";
8721             script {
8722                set_int(button_state, BUTTON_STATE_ENABLED);
8723             }
8724          }
8725          program { name: "focused";
8726             //signal: "elm,action,focus";
8727             //source: "elm";
8728             action: STATE_SET "focused" 0.0;
8729             target: "button_image";
8730          }
8731          program { name: "unfocused";
8732             //signal: "elm,action,unfocus";
8733             //source: "elm";
8734             action: STATE_SET "default" 0.0;
8735             target: "button_image";
8736          }
8737       }
8738    }
8739
8740 ///////////////////////////////////////////////////////////////////////////////////////
8741    group { name: "elm/button/base/naviframe_control/default";
8742       alias: "elm/button/base/naviframe_control/center";
8743       script {
8744          public button_state = BUTTON_STATE_ENABLED;
8745       }
8746       images {
8747          image: "00_Option_header_bt.png" COMP;
8748          image: "00_Option_header_bt_dim.png" COMP;
8749          image: "00_Option_header_bt_press.png" COMP;
8750          image: "00_Option_header_bt_focus.png" COMP;
8751       }
8752       parts {
8753          part { name: "button_image";
8754             scale: 1;
8755             description { state: "default" 0.0;
8756                min: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_MIN_INC;
8757                color: 0 0 0 0;
8758                rel1.offset: 0 0;
8759                rel2.offset: -1 -1;
8760                image {
8761                   normal: "00_Option_header_bt.png";
8762                   border: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_BORDER_INC;
8763                }
8764                color: 255 255 255 255;
8765             }
8766             description { state: "disabled" 0.0;
8767                inherit: "default" 0.0;
8768                image.normal: "00_Option_header_bt_dim.png";
8769             }
8770             description { state: "clicked" 0.0;
8771                inherit: "default" 0.0;
8772                image.normal: "00_Option_header_bt_press.png";
8773             }
8774             description { state: "focused" 0.0;
8775                inherit: "default" 0.0;
8776                image.normal: "00_Option_header_bt_focus.png";
8777             }
8778          }
8779          part { name: "padding_left_top";
8780             type: RECT;
8781             scale: 1;
8782             mouse_events: 0;
8783             description { state: "default" 0.0;
8784                align: 0.0 0.0;
8785                rel2.relative: 0.0 0.0;
8786                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8787                fixed: 1 1;
8788                visible: 0;
8789             }
8790          }
8791          part { name: "padding_right_bottom";
8792             type: RECT;
8793             scale: 1;
8794             mouse_events: 0;
8795             description { state: "default" 0.0;
8796                align: 1.0 1.0;
8797                rel1.relative: 1.0 1.0;
8798                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
8799                fixed: 1 1;
8800                visible: 0;
8801             }
8802          }
8803          part { name: "icon_rect";
8804             type: RECT;
8805             scale: 1;
8806             mouse_events: 0;
8807             description { state: "default" 0.0;
8808                min: 0 0;
8809                fixed: 1 0;
8810                rel1 {
8811                   relative: 1.0 1.0;
8812                   to: "padding_left_top";
8813                }
8814                rel2 {
8815                   relative: 1.0 0.0;
8816                   to_x: "padding_left_top";
8817                   to_y: "padding_right_bottom";
8818                }
8819                align: 0.0 0.5;
8820                color: 0 0 0 0;
8821             }
8822             description { state: "visible" 0.0;
8823                min: BUTTON_NAVIFRAME_CENTER_ICON_RECT_VISIBLE_MIN_SIZE;
8824                fixed: 1 0;
8825                rel1 {
8826                   relative: 1.0 1.0;
8827                   to: "padding_left_top";
8828                }
8829                rel2 {
8830                   relative: 1.0 0.0;
8831                   to_x: "padding_left_top";
8832                   to_y: "padding_right_bottom";
8833                }
8834                align: 0.0 0.5;
8835                color: 0 0 0 0;
8836             }
8837             description { state: "icononly" 0.0;
8838                inherit: "default" 0.0;
8839             }
8840          }
8841          part { name: "padding_after_icon";
8842             type: RECT;
8843             scale: 1;
8844             mouse_events: 0;
8845             description { state: "default" 0.0; //when only icon or no icon is there
8846                align: 0.0 0.0;
8847                rel1 {
8848                   relative: 1.0 0.0;
8849                   to: "icon_rect";
8850                }
8851                rel2.to: "icon_rect";
8852                fixed: 1 0;
8853                min: 0 0;
8854                color: 0 0 0 0;
8855             }
8856             description { state: "visible" 0.0;
8857                align: 0.0 0.0;
8858                rel1 {
8859                   relative: 1.0 0.0;
8860                   to: "icon_rect";
8861                }
8862                rel2.to: "icon_rect";
8863                fixed: 1 0;
8864                min: BUTTON_NAVIFRAME_CENTER_PADDING_AFTER_ICON_VISIBLE_MIN_INC;
8865                color: 0 0 0 0;
8866             }
8867             description { state: "icononly" 0.0;
8868                inherit: "default" 0.0;
8869             }
8870          }
8871          part { name: "padding_before_text";
8872             type: RECT;
8873             scale: 1;
8874             mouse_events: 0;
8875             description { state: "default" 0.0; //when only icon or no icon is there
8876                align: 1.0 0.5;
8877                rel1 {
8878                   relative: 0.0 1.0;
8879                   to_x: "elm.text";
8880                   to_y: "padding_left_top";
8881                }
8882                rel2 {
8883                   relative: 0.0 0.0;
8884                   to_x: "elm.text";
8885                   to_y: "padding_right_bottom";
8886                }
8887                fixed: 1 0;
8888                min: BUTTON_NAVIFRAME_CENTER_PADDING_BEFORE_TEXT_DEFAULT_MIN_INC;
8889                color: 0 0 0 0;
8890             }
8891          }
8892          part { name: "elm.swallow.content";
8893             type: SWALLOW;
8894             scale: 1;
8895             clip_to: "clipper";
8896             description { state: "default" 0.0;
8897                visible: 0;
8898                align: 0.0 0.5;
8899                rel1 {
8900                   relative: 1.0 1.0;
8901                   to: "padding_left_top";
8902                }
8903                rel2 {
8904                   relative: 1.0 0.0;
8905                   to_x: "padding_left_top";
8906                   to_y: "padding_right_bottom";
8907                }
8908                fixed: 1 0;
8909             }
8910             description { state: "visible" 0.0;
8911                fixed: 1 0;
8912                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8913                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
8914                align: 1.0 0.5;
8915                rel1 {
8916                   relative: 0.0 1.0;
8917                   to_x: "padding_before_text";
8918                   to_y: "padding_left_top";
8919                }
8920                rel2 {
8921                   relative: 0.0 0.0;
8922                   to_x: "padding_before_text";
8923                   to_y: "padding_right_bottom";
8924                }
8925                aspect: 1.0 1.0;
8926                aspect_preference: VERTICAL;
8927             }
8928             description { state: "icononly" 0.0;
8929                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8930                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
8931                rel1 {
8932                   relative: 1.0 1.0;
8933                   to: "padding_left_top";
8934                }
8935                rel2 {
8936                   relative: 0.0 0.0;
8937                   to: "padding_right_bottom";
8938                }
8939                aspect: 1.0 1.0;
8940                aspect_preference: VERTICAL;
8941             }
8942          }
8943          part { name: "elm.text";
8944             type: TEXT;
8945             mouse_events: 0;
8946             scale: 1;
8947             clip_to: "clipper";
8948             description { state: "default" 0.0;
8949                visible: 0;
8950                rel1 {
8951                   relative: 1.0 1.0;
8952                   to_x: "padding_after_icon";
8953                   to_y: "padding_left_top";
8954                }
8955                rel2 {
8956                   relative: 0.0 0.0;
8957                   to: "padding_right_bottom";
8958                }
8959                color: BUTTON_NAVIFRAME_DEFAULT_TEXT_COLOR_INC;
8960                text {
8961                   font: "SLP:style=Medium";
8962                   size: BUTTON_NAVIFRAME_CENTER_TEXT_FONT_SIZE_INC;
8963                   min: 0 0;
8964                   max: 1 0;
8965                   text_class: "slp_medium";
8966                }
8967             }
8968             description { state: "visible" 0.0;
8969                inherit: "default" 0.0;
8970                visible: 1;
8971             }
8972             description { state: "clicked" 0.0;
8973                inherit: "default" 0.0;
8974                visible: 1;
8975                min: 0 0;
8976             }
8977             description { state: "focused" 0.0;
8978                inherit: "default" 0.0;
8979                visible: 1;
8980                min: 0 0;
8981                color: BUTTON_NAVIFRAME_FOCUSED_TEXT_COLOR_INC;
8982             }
8983          }
8984          part { name: "over2";
8985             type: RECT;
8986             repeat_events: 1;
8987             ignore_flags: ON_HOLD;
8988             description { state: "default" 0.0;
8989                color: 0 0 0 0;
8990             }
8991          }
8992          part { name: "over3";
8993             type: RECT;
8994             repeat_events: 1;
8995             description { state: "default" 0.0;
8996                color: 0 0 0 0;
8997             }
8998          }
8999          part { name: "clipper";
9000             type: RECT;
9001             description { state: "default" 0.0;
9002                color: 255 255 255 255;
9003             }
9004             description { state: "disabled" 0.0;
9005                color: 255 255 255 127;
9006             }
9007          }
9008          part { name: "disabler";
9009             type: RECT;
9010             description { state: "default" 0.0;
9011                color: 0 0 0 0;
9012                visible: 0;
9013             }
9014             description { state: "disabled" 0.0;
9015                inherit: "default" 0.0;
9016                visible: 1;
9017             }
9018          }
9019       }
9020       programs {
9021          program { name: "button_click";
9022             signal: "mouse,down,1";
9023             source: "over2";
9024             action: SIGNAL_EMIT "elm,action,press" "";
9025             after: "button_click_anim";
9026          }
9027          program { name: "button_click_anim";
9028             action: STATE_SET "clicked" 0.0;
9029             target: "button_image";
9030             after: "text_clicked";
9031          }
9032          program { name: "text_clicked";
9033             script {
9034                new st[31];
9035                new Float:vl;
9036                get_state(PART:"elm.text", st, 30, vl);
9037                if (!strcmp(st, "visible"))
9038                  set_state(PART:"elm.text", "clicked", 0.0);
9039             }
9040          }
9041          program { name: "button_unpress";
9042             action: SIGNAL_EMIT "elm,action,unpress" "";
9043          }
9044          program { name: "button_mouseout_clicked";
9045             signal: "mouse,up,1";
9046             source: "over3";
9047             script {
9048                new st[31];
9049                new Float:vl;
9050                get_state(PART:"elm.swallow.content", st, 30, vl);
9051                if (strcmp(st, "icononly"))
9052                  {
9053                     emit("elm,action,default,text,set", "");
9054                     set_state(PART:"elm.text", "visible", 0.0);
9055                  }
9056                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9057                  set_state(PART:"button_image", "default", 0.0);
9058             }
9059             after: button_unpress;
9060          }
9061          program { name: "touch_snd";
9062             signal: "mouse,clicked,1";
9063             source: "over2";
9064             action: PLAY_SAMPLE "touch_sound" 1.0;
9065             after: button_unclick3;
9066          }
9067          program { name: "button_unclick3";
9068             action: SIGNAL_EMIT "elm,action,click" "";
9069          }
9070          program { name: "text_show";
9071             signal: "elm,state,text,visible";
9072             source: "elm";
9073             script {
9074                new st[31];
9075                new Float:vl;
9076                get_state(PART:"elm.swallow.content", st, 30, vl);
9077                if (!strcmp(st, "icononly"))
9078                  {
9079                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9080                     set_state(PART:"icon_rect", "visible", 0.0);
9081                     set_state(PART:"padding_after_icon", "visible", 0.0);
9082                  }
9083                set_state(PART:"elm.text", "visible", 0.0);
9084             }
9085          }
9086          program { name: "text_hide";
9087             signal: "elm,state,text,hidden";
9088             source: "elm";
9089             script {
9090                new st[31];
9091                new Float:vl;
9092                get_state(PART:"elm.swallow.content", st, 30, vl);
9093                if (!strcmp(st, "visible"))
9094                  {
9095                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9096                     set_state(PART:"icon_rect", "icononly", 0.0);
9097                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9098                  }
9099                set_state(PART:"elm.text", "default", 0.0);
9100             }
9101          }
9102          program { name: "icon_show";
9103             signal: "elm,state,icon,visible";
9104             source: "elm";
9105             script {
9106                new st[31];
9107                new Float:vl;
9108                get_state(PART:"elm.text", st, 30, vl);
9109                if (!strcmp(st, "visible"))
9110                  {
9111                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9112                     set_state(PART:"icon_rect", "visible", 0.0);
9113                     set_state(PART:"padding_after_icon", "visible", 0.0);
9114                  }
9115                else
9116                  {
9117                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9118                     set_state(PART:"icon_rect", "icononly", 0.0);
9119                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9120                  }
9121             }
9122          }
9123          program { name: "icon_hide";
9124             signal: "elm,state,icon,hidden";
9125             source: "elm";
9126             action: STATE_SET "default" 0.0;
9127             target: "elm.swallow.content";
9128             target: "icon_rect";
9129             target: "padding_after_icon";
9130          }
9131          program { name: "disable";
9132             signal: "elm,state,disabled";
9133             source: "elm";
9134             action: STATE_SET "disabled" 0.0;
9135             target: "button_image";
9136             target: "clipper";
9137             target: "disabler";
9138             after: "disable_text";
9139          }
9140          program { name: "disable_text";
9141             script {
9142                new st[31];
9143                new Float:vl;
9144                set_int(button_state, BUTTON_STATE_DISABLED);
9145                get_state(PART:"elm.text", st, 30, vl);
9146                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9147                  set_state(PART:"elm.text", "visible", 0.0);
9148             }
9149          }
9150          program { name: "enable";
9151             signal: "elm,state,enabled";
9152             source: "elm";
9153             action: STATE_SET "default" 0.0;
9154             target: "button_image";
9155             target: "clipper";
9156             target: "disabler";
9157             after: "enable_text";
9158          }
9159          program { name: "enable_text";
9160             script {
9161                new st[31];
9162                new Float:vl;
9163                set_int(button_state, BUTTON_STATE_ENABLED);
9164                get_state(PART:"elm.text", st, 30, vl);
9165                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9166                  set_state(PART:"elm.text", "visible", 0.0);
9167             }
9168          }
9169          program { name: "focused";
9170             //signal: "elm,action,focus";
9171             //source: "elm";
9172             action: STATE_SET "focused" 0.0;
9173             target: "button_image";
9174             target: "elm.text";
9175          }
9176          program { name: "unfocused";
9177             //signal: "elm,action,unfocus";
9178             //source: "elm";
9179             action: STATE_SET "default" 0.0;
9180             target: "button_image";
9181             after: "unfocus_text";
9182          }
9183          program { name: "unfocus_text";
9184             action: STATE_SET "visible" 0.0;
9185             target: "elm.text";
9186          }
9187       }
9188    }
9189
9190 ///////////////////////////////////////////////////////////////////////////////////////
9191    group { name: "elm/button/base/naviframe_control/multiline";
9192       script {
9193          public button_state = BUTTON_STATE_ENABLED;
9194       }
9195       images {
9196          image: "00_Option_header_bt.png" COMP;
9197          image: "00_Option_header_bt_dim.png" COMP;
9198          image: "00_Option_header_bt_press.png" COMP;
9199          image: "00_Option_header_bt_focus.png" COMP;
9200       }
9201       styles{
9202          style { name: "btn_multiline_naviframe_controlbar_style";
9203             base: "font=SLP:style=Medium font_size="BUTTON_NAVIFRAME_MULTILINE_TEXT_FONT_SIZE_INC" align=center color=#ffffff wrap=mixed text_class=slp_medium";
9204             tag: "br" "\n";
9205             tag: "ps" "ps";
9206             tag: "tab" "\t";
9207          }
9208       }
9209       parts {
9210          part { name: "button_image";
9211             scale: 1;
9212             description { state: "default" 0.0;
9213                min: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_MIN_INC;
9214                rel1.offset: 0 0;
9215                rel2.offset: -1 -1;
9216                image {
9217                   normal: "00_Option_header_bt.png";
9218                   border: BUTTON_NAVIFRAME_CENTER_BG_NORMAL_BORDER_INC;
9219                }
9220                color: 255 255 255 255;
9221             }
9222             description { state: "disabled" 0.0;
9223                inherit: "default" 0.0;
9224                image.normal: "00_Option_header_bt_dim.png";
9225             }
9226             description { state: "clicked" 0.0;
9227                inherit: "default" 0.0;
9228                image.normal: "00_Option_header_bt_press.png";
9229             }
9230             description { state: "focused" 0.0;
9231                inherit: "default" 0.0;
9232                image.normal: "00_Option_header_bt_focus.png";
9233             }
9234          }
9235          part { name: "padding_left_top";
9236             type: RECT;
9237             scale: 1;
9238             mouse_events: 0;
9239             description { state: "default" 0.0;
9240                align: 0.0 0.0;
9241                rel2.relative: 0.0 0.0;
9242                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
9243                fixed: 1 1;
9244                visible: 0;
9245             }
9246          }
9247          part { name: "padding_right_bottom";
9248             type: RECT;
9249             scale: 1;
9250             mouse_events: 0;
9251             description { state: "default" 0.0;
9252                align: 1.0 1.0;
9253                rel1.relative: 1.0 1.0;
9254                min: BUTTON_NAVIFRAME_CENTER_PADDING_MIN_MAX_INC;
9255                fixed: 1 1;
9256                visible: 0;
9257             }
9258          }
9259          part { name: "icon_rect";
9260             type: RECT;
9261             scale: 1;
9262             mouse_events: 0;
9263             description { state: "default" 0.0;
9264                visible: 0;
9265                min: 0 0;
9266                fixed: 1 0;
9267                rel1 {
9268                   relative: 0.0 1.0;
9269                   to_x: "elm.swallow.content";
9270                   to_y: "padding_left_top";
9271                }
9272                rel2 {
9273                   relative: 1.0 0.0;
9274                   to_x: "elm.swallow.content";
9275                   to_y: "padding_right_bottom";
9276                }
9277                align: 0.0 0.5;
9278             }
9279          }
9280          part { name: "padding_icon_text";
9281             type: RECT;
9282             scale: 1;
9283             mouse_events: 0;
9284             description { state: "default" 0.0; //when only icon or no icon is there
9285                visible: 0;
9286                align: 0.0 0.0;
9287                rel1 {
9288                   relative: 1.0 0.0;
9289                   to: "icon_rect";
9290                }
9291                rel2 {
9292                   relative: 1.0 1.0;
9293                   to: "icon_rect";
9294                }
9295                fixed: 1 0;
9296                min: 0 0;
9297             }
9298             description { state: "visible" 0.0;
9299                inherit: "default" 0.0;
9300                min: BUTTON_NAVIFRAME_CENTER_PADDING_AFTER_ICON_VISIBLE_MIN_INC;
9301                rel1 {
9302                   relative: 1.0 0.0;
9303                   to: "icon_rect";
9304                }
9305                rel2 {
9306                   relative: 1.0 1.0;
9307                   to: "icon_rect";
9308                }
9309            }
9310             description { state: "icononly" 0.0;
9311                inherit: "default" 0.0;
9312             }
9313          }
9314          part { name: "elm.swallow.content";
9315             type: SWALLOW;
9316             scale: 1;
9317             clip_to: "clipper";
9318             description { state: "default" 0.0;
9319                visible: 0;
9320                align: 0.0 0.5;
9321                rel1 {
9322                   relative: 1.0 1.0;
9323                   to: "padding_left_top";
9324                }
9325                rel2 {
9326                   relative: 1.0 0.0;
9327                   to_x: "padding_left_top";
9328                   to_y: "padding_right_bottom";
9329                }
9330                fixed: 1 0;
9331             }
9332             description { state: "visible" 0.0;
9333                fixed: 1 0;
9334                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
9335                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_VISIBLE_MIN_MAX_INC;
9336                align: 0.0 0.5;
9337                rel1 {
9338                   relative: 1.0 1.0;
9339                   to: "padding_left_top";
9340                }
9341                rel2 {
9342                   relative: 0.0 0.0;
9343                   to_x: "padding_left_top";
9344                   to_y: "padding_right_bottom";
9345                }
9346             }
9347             description { state: "icononly" 0.0;
9348                min: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
9349                max: BUTTON_NAVIFRAME_CENTER_SWALLOW_ICONONLY_MIN_MAX_INC;
9350                rel1 {
9351                   relative: 1.0 1.0;
9352                   to: "padding_left_top";
9353                }
9354                rel2 {
9355                   relative: 0.0 0.0;
9356                   to: "padding_right_bottom";
9357                }
9358             }
9359          }
9360          part { name: "elm.text";
9361             type: TEXTBLOCK;
9362             mouse_events: 0;
9363             scale: 1;
9364             clip_to: "clipper";
9365             description { state: "default" 0.0;
9366                visible: 0;
9367                rel1 {
9368                   relative: 1.0 1.0;
9369                   to_x: "padding_icon_text";
9370                   to_y: "padding_left_top";
9371                }
9372                rel2 {
9373                    relative: 0.0 0.0;
9374                    to: "padding_right_bottom";
9375                }
9376                color: BUTTON_NAVIFRAME_DEFAULT_TEXT_COLOR_INC;
9377                text {
9378                   style: "btn_multiline_naviframe_controlbar_style";
9379                   min: 0 0;
9380                   max: 0 1;
9381                }
9382             }
9383             description { state: "visible" 0.0;
9384                inherit: "default" 0.0;
9385                visible: 1;
9386                min: 80 0;
9387             }
9388             description { state: "clicked" 0.0;
9389                inherit: "default" 0.0;
9390                visible: 1;
9391                min: 0 0;
9392             }
9393             description { state: "focused" 0.0;
9394                inherit: "default" 0.0;
9395                visible: 1;
9396                min: 0 0;
9397                color: BUTTON_NAVIFRAME_FOCUSED_TEXT_COLOR_INC;
9398             }
9399          }
9400          part { name: "over2";
9401             type: RECT;
9402             repeat_events: 1;
9403             ignore_flags: ON_HOLD;
9404             description { state: "default" 0.0;
9405                color: 0 0 0 0;
9406             }
9407          }
9408          part { name: "over3";
9409             type: RECT;
9410             repeat_events: 1;
9411             description { state: "default" 0.0;
9412                color: 0 0 0 0;
9413             }
9414          }
9415          part { name: "clipper";
9416             type: RECT;
9417             description { state: "default" 0.0;
9418                color: 255 255 255 255;
9419             }
9420             description { state: "disabled" 0.0;
9421                color: 255 255 255 127;
9422             }
9423          }
9424          part { name: "disabler";
9425             type: RECT;
9426             description { state: "default" 0.0;
9427                color: 0 0 0 0;
9428                visible: 0;
9429             }
9430             description { state: "disabled" 0.0;
9431                inherit: "default" 0.0;
9432                visible: 1;
9433             }
9434          }
9435       }
9436       programs {
9437          program { name: "button_click";
9438             signal: "mouse,down,1";
9439             source: "over2";
9440             action: SIGNAL_EMIT "elm,action,press" "";
9441             after: "button_click_anim";
9442          }
9443          program { name: "button_click_anim";
9444             action: STATE_SET "clicked" 0.0;
9445             target: "button_image";
9446             after: "text_clicked";
9447          }
9448          program { name: "text_clicked";
9449             script {
9450                new st[31];
9451                new Float:vl;
9452                get_state(PART:"elm.text", st, 30, vl);
9453                if (!strcmp(st, "visible"))
9454                  set_state(PART:"elm.text", "clicked", 0.0);
9455             }
9456          }
9457          program { name: "button_unpress";
9458             action: SIGNAL_EMIT "elm,action,unpress" "";
9459          }
9460          program { name: "button_mouseout_clicked";
9461             signal: "mouse,up,1";
9462             source: "over3";
9463             script {
9464                new st[31];
9465                new Float:vl;
9466                get_state(PART:"elm.swallow.content", st, 30, vl);
9467                if (strcmp(st, "icononly"))
9468                  {
9469                     emit("elm,action,default,text,set", "");
9470                     set_state(PART:"elm.text", "visible", 0.0);
9471                  }
9472                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9473                  set_state(PART:"button_image", "default", 0.0);
9474             }
9475             after: button_unpress;
9476          }
9477          program { name: "touch_snd";
9478             signal: "mouse,clicked,1";
9479             source: "over2";
9480             action: PLAY_SAMPLE "touch_sound" 1.0;
9481             after: button_unclick3;
9482          }
9483          program { name: "button_unclick3";
9484             action: SIGNAL_EMIT "elm,action,click" "";
9485          }
9486          program { name: "text_show";
9487             signal: "elm,state,text,visible";
9488             source: "elm";
9489             script {
9490                new st[31];
9491                new Float:vl;
9492                get_state(PART:"elm.swallow.content", st, 30, vl);
9493                if (!strcmp(st, "icononly"))
9494                  {
9495                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9496                     set_state(PART:"padding_icon_text", "visible", 0.0);
9497                  }
9498                set_state(PART:"elm.text", "visible", 0.0);
9499             }
9500          }
9501          program { name: "text_hide";
9502             signal: "elm,state,text,hidden";
9503             source: "elm";
9504             script {
9505                new st[31];
9506                new Float:vl;
9507                get_state(PART:"elm.swallow.content", st, 30, vl);
9508                if (!strcmp(st, "visible"))
9509                  {
9510                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9511                     set_state(PART:"padding_icon_text", "icononly", 0.0);
9512                  }
9513                set_state(PART:"elm.text", "default", 0.0);
9514             }
9515          }
9516          program { name: "icon_show";
9517             signal: "elm,state,icon,visible";
9518             source: "elm";
9519             script {
9520                new st[31];
9521                new Float:vl;
9522                get_state(PART:"elm.text", st, 30, vl);
9523                if (!strcmp(st, "visible"))
9524                  {
9525                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9526                     set_state(PART:"padding_icon_text", "visible", 0.0);
9527                  }
9528                else
9529                  {
9530                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9531                     set_state(PART:"padding_icon_text", "icononly", 0.0);
9532                  }
9533             }
9534          }
9535          program { name: "icon_hide";
9536             signal: "elm,state,icon,hidden";
9537             source: "elm";
9538             action: STATE_SET "default" 0.0;
9539             target: "elm.swallow.content";
9540             target: "padding_icon_text";
9541          }
9542          program { name: "disable";
9543             signal: "elm,state,disabled";
9544             source: "elm";
9545             action: STATE_SET "disabled" 0.0;
9546             target: "button_image";
9547             target: "clipper";
9548             target: "disabler";
9549             after: "disable_text";
9550          }
9551          program { name: "disable_text";
9552             script {
9553                new st[31];
9554                new Float:vl;
9555                set_int(button_state, BUTTON_STATE_DISABLED);
9556                get_state(PART:"elm.text", st, 30, vl);
9557                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9558                  set_state(PART:"elm.text", "visible", 0.0);
9559             }
9560          }
9561          program { name: "enable";
9562             signal: "elm,state,enabled";
9563             source: "elm";
9564             action: STATE_SET "default" 0.0;
9565             target: "button_image";
9566             target: "clipper";
9567             target: "disabler";
9568             after: "enable_text";
9569          }
9570          program { name: "enable_text";
9571             script {
9572                new st[31];
9573                new Float:vl;
9574                set_int(button_state, BUTTON_STATE_ENABLED);
9575                get_state(PART:"elm.text", st, 30, vl);
9576                if (!strcmp(st, "clicked") || !strcmp(st, "focused"))
9577                  set_state(PART:"elm.text", "visible", 0.0);
9578             }
9579          }
9580          program { name: "focused";
9581             //signal: "elm,action,focus";
9582             //source: "elm";
9583             action: STATE_SET "focused" 0.0;
9584             target: "button_image";
9585             target: "elm.text";
9586          }
9587          program { name: "unfocused";
9588             //signal: "elm,action,unfocus";
9589             //source: "elm";
9590             action: STATE_SET "default" 0.0;
9591             target: "button_image";
9592             after: "unfocus_text";
9593          }
9594          program { name: "unfocus_text";
9595             action: STATE_SET "visible" 0.0;
9596             target: "elm.text";
9597          }
9598       }
9599    }
9600
9601 /////////////////////////////////////////////////////////////
9602    group { name: "elm/button/base/naviframe/title1/default";
9603       images {
9604          image: "00_winset_Back_btn_normal.png" COMP;
9605          image: "00_winset_Back_btn_press.png" COMP;
9606          image: "00_winset_Back_btn_normal_focus.png" COMP;
9607       }
9608       script {
9609          public button_state = BUTTON_STATE_ENABLED;
9610       }
9611       parts {
9612          part { name: "button_image";
9613             scale: 1;
9614             description { state: "default" 0.0;
9615                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9616                image {
9617                   normal: "00_winset_Back_btn_normal.png";
9618                   border: BUTTON_NAVIFRAME_TITLE1_BG_BORDER_INC;
9619                   border_scale: 1;
9620                }
9621             }
9622             description { state: "clicked" 0.0;
9623                inherit: "default" 0.0;
9624                image.normal: "00_winset_Back_btn_press.png";
9625             }
9626             description { state: "disabled" 0.0;
9627                inherit: "default" 0.0;
9628                color: 127 127 127 127;
9629             }
9630             description { state: "focused" 0.0;
9631                inherit: "default" 0.0;
9632                image.normal: "00_winset_Back_btn_normal_focus.png";
9633             }
9634          }
9635          part { name: "padding_left_top";
9636             type: RECT;
9637             scale: 1;
9638             mouse_events: 0;
9639             description { state: "default" 0.0;
9640                align: 0.0 0.0;
9641                rel2.relative: 0.0 0.0;
9642                min: BUTTON_NAVIFRAME_TITLE1_PADDING_MIN_INC;
9643                fixed: 1 1;
9644                visible: 0;
9645             }
9646          }
9647          part { name: "bg";
9648             type: RECT;
9649             scale: 1;
9650             mouse_events: 0;
9651             description { state: "default" 0.0;
9652                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9653                visible: 0;
9654             }
9655             description { state: "visible" 0.0;
9656                inherit: "default" 0.0;
9657                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9658             }
9659             description { state: "icononly" 0.0;
9660                inherit: "default" 0.0;
9661                min: BUTTON_NAVIFRAME_TITLE1_BG_MIN_INC;
9662             }
9663          }
9664          part { name: "padding_right_bottom";
9665             type: RECT;
9666             scale: 1;
9667             mouse_events: 0;
9668             description { state: "default" 0.0;
9669                align: 1.0 1.0;
9670                rel1.relative: 1.0 1.0;
9671                min: BUTTON_NAVIFRAME_TITLE1_PADDING_MIN_INC;
9672                fixed: 1 1;
9673                visible: 0;
9674             }
9675          }
9676          part { name: "icon_rect";
9677             type: RECT;
9678             scale: 1;
9679             mouse_events: 0;
9680             description { state: "default" 0.0;
9681                visible: 0;
9682                min: 0 0;
9683                fixed: 1 0;
9684                rel1 {
9685                   relative: 1.0 1.0;
9686                   to: "padding_left_top";
9687                }
9688                rel2 {
9689                   relative: 1.0 0.0;
9690                   to_x: "padding_left_top";
9691                   to_y: "padding_right_bottom";
9692                }
9693                align: 0.0 0.5;
9694             }
9695             description { state: "visible" 0.0;
9696                visible: 0;
9697                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
9698                max: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_RECT_MIN_MAX_INC;
9699                fixed: 1 0;
9700                rel1 {
9701                   relative: 1.0 1.0;
9702                   to: "padding_left_top";
9703                }
9704                rel2 {
9705                   relative: 1.0 0.0;
9706                   to_x: "padding_left_top";
9707                   to_y: "padding_right_bottom";
9708                }
9709                align: 0.0 0.5;
9710             }
9711             description { state: "icononly" 0.0;
9712                inherit: "default" 0.0;
9713             }
9714          }
9715          part { name: "padding_after_icon";
9716             type: RECT;
9717             scale: 1;
9718             mouse_events: 0;
9719             description { state: "default" 0.0; //when only icon or no icon is there
9720                align: 0.0 0.0;
9721                rel1 {
9722                   relative: 1.0 0.0;
9723                   to: "icon_rect";
9724                }
9725                rel2.to: "icon_rect";
9726                fixed: 1 0;
9727                min: 0 0;
9728                visible: 0;
9729             }
9730             description { state: "visible" 0.0;
9731                visible: 0;
9732                align: 0.0 0.0;
9733                rel1 {
9734                   relative: 1.0 0.0;
9735                   to: "icon_rect";
9736                }
9737                rel2.to: "icon_rect";
9738                fixed: 1 0;
9739                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9740             }
9741             description { state: "icononly" 0.0;
9742                inherit: "default" 0.0;
9743             }
9744          }
9745          part { name: "padding_before_text";
9746             type: RECT;
9747             scale: 1;
9748             mouse_events: 0;
9749             description { state: "default" 0.0; //when only icon or no icon is there
9750                align: 1.0 0.5;
9751                rel1 {
9752                   relative: 0.0 1.0;
9753                   to_x: "elm.text";
9754                   to_y: "padding_left_top";
9755                }
9756                rel2 {
9757                   relative: 0.0 0.0;
9758                   to_x: "elm.text";
9759                   to_y: "padding_right_bottom";
9760                }
9761                fixed: 1 0;
9762                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
9763                visible: 0;
9764             }
9765          }
9766          part { name: "elm.swallow.content";
9767             type: SWALLOW;
9768             scale: 1;
9769             clip_to: "clipper";
9770             description { state: "default" 0.0;
9771                visible: 0;
9772                align: 0.0 0.5;
9773                rel1 {
9774                   relative: 1.0 1.0;
9775                   to: "padding_left_top";
9776                }
9777                rel2 {
9778                   relative: 1.0 0.0;
9779                   to_x: "padding_left_top";
9780                   to_y: "padding_right_bottom";
9781                }
9782                fixed: 1 0;
9783             }
9784             description { state: "visible" 0.0;
9785                fixed: 1 0;
9786                min: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_MIN_MAX_INC;
9787                max: BUTTON_NAVIFRAME_TITLE1_VISIBLE_ICON_MIN_MAX_INC;
9788                align: 1.0 0.5;
9789                rel1 {
9790                   relative: 0.0 1.0;
9791                   to_x: "padding_before_text";
9792                   to_y: "padding_left_top";
9793                }
9794                rel2 {
9795                   relative: 0.0 0.0;
9796                   to_x: "padding_before_text";
9797                   to_y: "padding_right_bottom";
9798                }
9799             }
9800             description { state: "icononly" 0.0;
9801                min: BUTTON_NAVIFRAME_TITLE1_ICONONLY_ICON_MIN_MAX_INC;
9802                max: BUTTON_NAVIFRAME_TITLE1_ICONONLY_ICON_MIN_MAX_INC;
9803             }
9804          }
9805          part { name: "elm.text";
9806             type: TEXT;
9807             mouse_events: 0;
9808             scale: 1;
9809             clip_to: "clipper";
9810             description { state: "default" 0.0;
9811                visible: 0;
9812                rel1 {
9813                   relative: 1.0 1.0;
9814                   to_x: "padding_after_icon";
9815                   to_y: "padding_left_top";
9816                }
9817                rel2 {
9818                   relative: 0.0 0.0;
9819                   to: "padding_right_bottom";
9820                }
9821                color: BUTTON_NAVIFRAME_TITLE1_NORMAL_COLOR_INC;
9822                text {
9823                   font: "SLP:style=Medium";
9824                   size: BUTTON_NAVIFRAME_TITLE1_FONT_SIZE_INC;
9825                   min: 1 0;
9826                   max: 1 0;
9827                   text_class: "slp_medium";
9828                }
9829             }
9830             description { state: "visible" 0.0;
9831                inherit: "default" 0.0;
9832                visible: 1;
9833             }
9834             description { state: "clicked" 0.0;
9835                inherit: "default" 0.0;
9836                visible: 1;
9837                color: BUTTON_NAVIFRAME_TITLE1_PRESSED_COLOR_INC;
9838             }
9839             description { state: "disabled" 0.0;
9840                inherit: "default" 0.0;
9841                color: 0 0 0 128;
9842             }
9843             description { state: "disabled_visible" 0.0;
9844                inherit: "default" 0.0;
9845                color: BUTTON_NAVIFRAME_TITLE1_DISABLED_COLOR_INC;
9846                visible: 1;
9847             }
9848             description { state: "focused" 0.0;
9849                inherit: "default" 0.0;
9850                visible: 1;
9851                color: BUTTON_NAVIFRAME_TITLE1_FOCUSED_COLOR_INC;
9852             }
9853          }
9854          part { name: "over2";
9855             type: RECT;
9856             repeat_events: 1;
9857             ignore_flags: ON_HOLD;
9858             description { state: "default" 0.0;
9859                color: 0 0 0 0;
9860             }
9861          }
9862          part { name: "over3";
9863             type: RECT;
9864             repeat_events: 1;
9865             description { state: "default" 0.0;
9866                color: 0 0 0 0;
9867             }
9868          }
9869          part { name: "clipper";
9870             type: RECT;
9871             description { state: "default" 0.0;
9872                color: 255 255 255 255;
9873             }
9874          }
9875          part { name: "disabler";
9876             type: RECT;
9877             description { state: "default" 0.0;
9878                color: 0 0 0 0;
9879                visible: 0;
9880             }
9881             description { state: "disabled" 0.0;
9882                inherit: "default" 0.0;
9883                visible: 1;
9884             }
9885          }
9886       }
9887       programs {
9888          program { name: "button_click";
9889             signal: "mouse,down,1";
9890             source: "over2";
9891             action: SIGNAL_EMIT "elm,action,press" "";
9892             after: "button_click_anim";
9893          }
9894          program { name: "button_click_anim";
9895             action: STATE_SET "clicked" 0.0;
9896             target: "button_image";
9897             after: "text_clicked";
9898          }
9899          program { name: "text_clicked";
9900             script {
9901                new st[31];
9902                new Float:vl;
9903                get_state(PART:"elm.text", st, 30, vl);
9904                if (!strcmp(st, "visible"))
9905                  set_state(PART:"elm.text", "clicked", 0.0);
9906             }
9907          }
9908          program { name: "button_unpress";
9909             action: SIGNAL_EMIT "elm,action,unpress" "";
9910          }
9911          program { name: "button_mouseout_clicked";
9912             signal: "mouse,up,1";
9913             source: "over3";
9914             script {
9915                new st[31];
9916                new Float:vl;
9917                get_state(PART:"elm.swallow.content", st, 30, vl);
9918                if (strcmp(st, "icononly"))
9919                  {
9920                     emit("elm,action,default,text,set", "");
9921                     set_state(PART:"elm.text", "visible", 0.0);
9922                  }
9923                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9924                  set_state(PART:"button_image", "default", 0.0);
9925             }
9926             after: button_unpress;
9927          }
9928          program { name: "touch_snd";
9929             signal: "mouse,clicked,1";
9930             source: "over2";
9931             action: PLAY_SAMPLE "touch_sound" 1.0;
9932             after: button_unclick3;
9933          }
9934          program { name: "button_unclick3";
9935             action: SIGNAL_EMIT "elm,action,click" "";
9936          }
9937          program { name: "text_show";
9938             signal: "elm,state,text,visible";
9939             source: "elm";
9940             script {
9941                new st[31];
9942                new Float:vl;
9943                get_state(PART:"elm.swallow.content", st, 30, vl);
9944                if (!strcmp(st, "icononly"))
9945                  {
9946                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9947                     set_state(PART:"icon_rect", "visible", 0.0);
9948                     set_state(PART:"padding_after_icon", "visible", 0.0);
9949                     set_state(PART:"bg", "visible", 0.0);
9950                  }
9951                if (get_int(button_state) != BUTTON_STATE_DISABLED)
9952                  set_state(PART:"elm.text", "visible", 0.0);
9953                else
9954                  set_state(PART:"elm.text", "disabled_visible", 0.0);
9955             }
9956          }
9957          program { name: "text_hide";
9958             signal: "elm,state,text,hidden";
9959             source: "elm";
9960             script {
9961                new st[31];
9962                new Float:vl;
9963                get_state(PART:"elm.swallow.content", st, 30, vl);
9964                if (!strcmp(st, "visible"))
9965                  {
9966                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9967                     set_state(PART:"icon_rect", "icononly", 0.0);
9968                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9969                     set_state(PART:"bg", "icononly", 0.0);
9970                  }
9971                set_state(PART:"elm.text", "default", 0.0);
9972             }
9973          }
9974          program { name: "icon_show";
9975             signal: "elm,state,icon,visible";
9976             source: "elm";
9977             script {
9978                new st[31];
9979                new Float:vl;
9980                get_state(PART:"elm.text", st, 30, vl);
9981                if (!strcmp(st, "visible"))
9982                  {
9983                     set_state(PART:"elm.swallow.content", "visible", 0.0);
9984                     set_state(PART:"icon_rect", "visible", 0.0);
9985                     set_state(PART:"padding_after_icon", "visible", 0.0);
9986                     set_state(PART:"bg", "visible", 0.0);
9987                  }
9988                else
9989                  {
9990                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
9991                     set_state(PART:"icon_rect", "icononly", 0.0);
9992                     set_state(PART:"padding_after_icon", "icononly", 0.0);
9993                     set_state(PART:"bg", "icononly", 0.0);
9994                  }
9995             }
9996          }
9997          program { name: "icon_hide";
9998             signal: "elm,state,icon,hidden";
9999             source: "elm";
10000             action: STATE_SET "default" 0.0;
10001             target: "elm.swallow.content";
10002             target: "padding_after_icon";
10003             target: "icon_rect";
10004             target: "bg";
10005          }
10006          program { name: "disable";
10007             signal: "elm,state,disabled";
10008             source: "elm";
10009             action: STATE_SET "disabled" 0.0;
10010             target: "button_image";
10011             target: "disabler";
10012             after: "disable_text";
10013          }
10014          program { name: "disable_text";
10015             script {
10016                new st[31];
10017                new Float:vl;
10018                get_state(PART:"elm.text", st, 30, vl);
10019                if (!strcmp(st, "visible"))
10020                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10021                else
10022                  set_state(PART:"elm.text", "disabled", 0.0);
10023                set_int(button_state, BUTTON_STATE_DISABLED);
10024             }
10025          }
10026          program { name: "enable";
10027             signal: "elm,state,enabled";
10028             source: "elm";
10029             action: STATE_SET "default" 0.0;
10030             target: "button_image";
10031             target: "disabler";
10032             after: "enable_text";
10033          }
10034          program { name: "enable_text";
10035             script {
10036                new st[31];
10037                new Float:vl;
10038                get_state(PART:"elm.text", st, 30, vl);
10039                if (!strcmp(st, "disabled_visible"))
10040                  set_state(PART:"elm.text", "visible", 0.0);
10041                else
10042                  set_state(PART:"elm.text", "default", 0.0);
10043                set_int(button_state, BUTTON_STATE_ENABLED);
10044             }
10045          }
10046          program { name: "focused";
10047             //signal: "elm,action,focus";
10048             //source: "elm";
10049             action: STATE_SET "focused" 0.0;
10050             target: "button_image";
10051             target: "elm.text";
10052          }
10053          program { name: "unfocused";
10054             //signal: "elm,action,unfocus";
10055             //source: "elm";
10056             action: STATE_SET "default" 0.0;
10057             target: "button_image";
10058             after: "unfocus_text";
10059          }
10060          program { name: "unfocus_text";
10061             action: STATE_SET "visible" 0.0;
10062             target: "elm.text";
10063          }
10064       }
10065    }
10066
10067 //////////////////////////////////////////////////////////////
10068    group { name: "elm/button/base/naviframe/title/default";
10069       script {
10070          public button_state = BUTTON_STATE_ENABLED;
10071       }
10072       images {
10073          image: "00_title_btn_bg_press.png" COMP;
10074       }
10075       styles{
10076          style { name: "btn_naviframe_style";
10077             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";
10078             tag: "br" "\n";
10079             tag: "ps" "ps";
10080             tag: "tab" "\t";
10081          }
10082       }
10083       parts {
10084          part { name: "button_image";
10085             scale: 1;
10086             description { state: "default" 0.0;
10087                min: BUTTON_NAVIFRAME_TITLE_TEXT_BG_NORMAL_MIN_INC;
10088                max: BUTTON_NAVIFRAME_TITLE_TEXT_BG_NORMAL_MIN_INC;
10089                color: 0 0 0 0;
10090             }
10091             description { state: "clicked" 0.0;
10092                min: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_MIN_INC;
10093                max: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_MIN_INC;
10094                image {
10095                   normal: "00_title_btn_bg_press.png";
10096                   border: BUTTON_NAVIFRAME_TITLE_TEXT_BG_PRESSED_BORDER_INC;
10097                   border_scale: 1;
10098                }
10099             }
10100             description { state: "disabled" 0.0;
10101                inherit: "default" 0.0;
10102             }
10103             description { state: "focused" 0.0;
10104                inherit: "default" 0.0;
10105             }
10106          }
10107          part { name: "padding_left_top";
10108             type: RECT;
10109             scale: 1;
10110             mouse_events: 0;
10111             description { state: "default" 0.0;
10112                align: 0.0 0.0;
10113                rel2.relative: 0.0 0.0;
10114                min: BUTTON_NAVIFRAME_TITLE_TEXT_PADDING_MIN_INC;
10115                fixed: 1 1;
10116                visible: 0;
10117             }
10118          }
10119          part { name: "padding_right_bottom";
10120             type: RECT;
10121             scale: 1;
10122             mouse_events: 0;
10123             description { state: "default" 0.0;
10124                align: 1.0 1.0;
10125                rel1.relative: 1.0 1.0;
10126                min: BUTTON_NAVIFRAME_TITLE_TEXT_PADDING_MIN_INC;
10127                fixed: 1 1;
10128                visible: 0;
10129             }
10130          }
10131          part { name: "icon_rect";
10132             type: RECT;
10133             scale: 1;
10134             mouse_events: 0;
10135             description { state: "default" 0.0;
10136                visible: 0;
10137                min: 0 0;
10138                fixed: 1 0;
10139                rel1 {
10140                   relative: 1.0 1.0;
10141                   to: "padding_left_top";
10142                }
10143                rel2 {
10144                   relative: 1.0 0.0;
10145                   to_x: "padding_left_top";
10146                   to_y: "padding_right_bottom";
10147                }
10148                align: 0.0 0.5;
10149             }
10150             description { state: "visible" 0.0;
10151                visible: 0;
10152                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
10153                max: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
10154                fixed: 1 0;
10155                rel1 {
10156                   relative: 1.0 1.0;
10157                   to: "padding_left_top";
10158                }
10159                rel2 {
10160                   relative: 1.0 0.0;
10161                   to_x: "padding_left_top";
10162                   to_y: "padding_right_bottom";
10163                }
10164                align: 0.0 0.5;
10165             }
10166             description { state: "icononly" 0.0;
10167                inherit: "default" 0.0;
10168             }
10169          }
10170          part { name: "padding_after_icon";
10171             type: RECT;
10172             scale: 1;
10173             mouse_events: 0;
10174             description { state: "default" 0.0; //when only icon or no icon is there
10175                align: 0.0 0.0;
10176                rel1 {
10177                   relative: 1.0 0.0;
10178                   to: "icon_rect";
10179                }
10180                rel2.to: "icon_rect";
10181                fixed: 1 0;
10182                min: 0 0;
10183                visible: 0;
10184             }
10185             description { state: "visible" 0.0;
10186                visible: 0;
10187                align: 0.0 0.0;
10188                rel1 {
10189                   relative: 1.0 0.0;
10190                   to: "icon_rect";
10191                }
10192                rel2.to: "icon_rect";
10193                fixed: 1 0;
10194                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10195             }
10196             description { state: "icononly" 0.0;
10197                inherit: "default" 0.0;
10198             }
10199          }
10200          part { name: "padding_before_text";
10201             type: RECT;
10202             scale: 1;
10203             mouse_events: 0;
10204             description { state: "default" 0.0; //when only icon or no icon is there
10205                align: 1.0 0.5;
10206                rel1 {
10207                   relative: 0.0 1.0;
10208                   to_x: "elm.text";
10209                   to_y: "padding_left_top";
10210                }
10211                rel2 {
10212                   relative: 0.0 0.0;
10213                   to_x: "elm.text";
10214                   to_y: "padding_right_bottom";
10215                }
10216                fixed: 1 0;
10217                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10218                visible: 0;
10219             }
10220          }
10221          part { name: "elm.swallow.content";
10222             type: SWALLOW;
10223             scale: 1;
10224             clip_to: "clipper";
10225             description { state: "default" 0.0;
10226                visible: 0;
10227                align: 0.0 0.5;
10228                rel1 {
10229                   relative: 1.0 1.0;
10230                   to: "padding_left_top";
10231                }
10232                rel2 {
10233                   relative: 1.0 0.0;
10234                   to_x: "padding_left_top";
10235                   to_y: "padding_right_bottom";
10236                }
10237                fixed: 1 0;
10238             }
10239             description { state: "visible" 0.0;
10240                fixed: 1 0;
10241                min: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
10242                max: BUTTON_NAVIFRAME_TITLE_VISIBLE_ICON_RECT_MIN_MAX_INC;
10243                align: 1.0 0.5;
10244                rel1 {
10245                   relative: 0.0 1.0;
10246                   to_x: "padding_before_text";
10247                   to_y: "padding_left_top";
10248                }
10249                rel2 {
10250                   relative: 0.0 0.0;
10251                   to_x: "padding_before_text";
10252                   to_y: "padding_right_bottom";
10253                }
10254             }
10255             description { state: "icononly" 0.0;
10256                min: BUTTON_NAVIFRAME_TITLE_ICONONLY_ICON_MIN_MAX_INC;
10257                max: BUTTON_NAVIFRAME_TITLE_ICONONLY_ICON_MIN_MAX_INC;
10258             }
10259          }
10260          part { name: "elm.text";
10261             type: TEXTBLOCK;
10262             mouse_events: 0;
10263             scale: 1;
10264             clip_to: "clipper";
10265             description { state: "default" 0.0;
10266                visible: 0;
10267                rel1 {
10268                   relative: 1.0 1.0;
10269                   to_x: "padding_after_icon";
10270                   to_y: "padding_left_top";
10271                }
10272                rel2 {
10273                   relative: 0.0 0.0;
10274                   to: "padding_right_bottom";
10275                }
10276                color: BUTTON_NAVIFRAME_TITLE_TEXT_NORMAL_COLOR_INC;
10277                text {
10278                    style: "btn_naviframe_style";
10279                    min: 0 0;
10280                    max: 0 1;
10281                }
10282             }
10283             description { state: "visible" 0.0;
10284                inherit: "default" 0.0;
10285                visible: 1;
10286             }
10287             description { state: "clicked" 0.0;
10288                inherit: "default" 0.0;
10289                visible: 1;
10290                color: BUTTON_NAVIFRAME_TITLE_TEXT_PRESSED_COLOR_INC;
10291             }
10292             description { state: "disabled" 0.0;
10293                inherit: "default" 0.0;
10294                color: 0 0 0 128;
10295             }
10296             description { state: "disabled_visible" 0.0;
10297                inherit: "default" 0.0;
10298                color: BUTTON_NAVIFRAME_TITLE_TEXT_DISABLED_COLOR_INC;
10299                visible: 1;
10300             }
10301             description { state: "focused" 0.0;
10302                inherit: "default" 0.0;
10303                visible: 1;
10304                color: BUTTON_NAVIFRAME_TITLE_TEXT_FOCUSED_COLOR_INC;
10305             }
10306          }
10307          part { name: "over2";
10308             type: RECT;
10309             repeat_events: 1;
10310             ignore_flags: ON_HOLD;
10311             description { state: "default" 0.0;
10312                color: 0 0 0 0;
10313             }
10314          }
10315          part { name: "over3";
10316             type: RECT;
10317             repeat_events: 1;
10318             description { state: "default" 0.0;
10319                color: 0 0 0 0;
10320             }
10321          }
10322          part { name: "clipper";
10323             type: RECT;
10324             description { state: "default" 0.0;
10325                color: 255 255 255 255;
10326             }
10327          }
10328          part { name: "disabler";
10329             type: RECT;
10330             description { state: "default" 0.0;
10331                color: 0 0 0 0;
10332                visible: 0;
10333             }
10334             description { state: "disabled" 0.0;
10335                inherit: "default" 0.0;
10336                visible: 1;
10337             }
10338          }
10339       }
10340       programs {
10341          program { name: "button_click";
10342             signal: "mouse,down,1";
10343             source: "over2";
10344             action: SIGNAL_EMIT "elm,action,press" "";
10345             after: "button_click_anim";
10346          }
10347          program { name: "button_click_anim";
10348             action: STATE_SET "clicked" 0.0;
10349             target: "button_image";
10350             after: "text_clicked";
10351          }
10352          program { name: "text_clicked";
10353             script {
10354                new st[31];
10355                new Float:vl;
10356                get_state(PART:"elm.text", st, 30, vl);
10357                if (!strcmp(st, "visible"))
10358                  set_state(PART:"elm.text", "clicked", 0.0);
10359             }
10360          }
10361          program { name: "button_unpress";
10362             action: SIGNAL_EMIT "elm,action,unpress" "";
10363          }
10364          program { name: "button_mouseout_clicked";
10365             signal: "mouse,up,1";
10366             source: "over3";
10367             script {
10368                new st[31];
10369                new Float:vl;
10370                get_state(PART:"elm.swallow.content", st, 30, vl);
10371                if (strcmp(st, "icononly"))
10372                  {
10373                     emit("elm,action,default,text,set", "");
10374                     set_state(PART:"elm.text", "visible", 0.0);
10375                  }
10376                if (get_int(button_state) != BUTTON_STATE_DISABLED)
10377                  set_state(PART:"button_image", "default", 0.0);
10378             }
10379             after: button_unpress;
10380          }
10381          program { name: "touch_snd";
10382             signal: "mouse,clicked,1";
10383             source: "over2";
10384             action: PLAY_SAMPLE "touch_sound" 1.0;
10385             after: button_unclick3;
10386          }
10387          program { name: "button_unclick3";
10388             action: SIGNAL_EMIT "elm,action,click" "";
10389          }
10390          program { name: "text_show";
10391             signal: "elm,state,text,visible";
10392             source: "elm";
10393             script {
10394                new st[31];
10395                new Float:vl;
10396                get_state(PART:"elm.swallow.content", st, 30, vl);
10397                if (!strcmp(st, "icononly"))
10398                  {
10399                     set_state(PART:"elm.swallow.content", "visible", 0.0);
10400                     set_state(PART:"icon_rect", "visible", 0.0);
10401                     set_state(PART:"padding_after_icon", "visible", 0.0);
10402                  }
10403                if (get_int(button_state) != BUTTON_STATE_DISABLED)
10404                  set_state(PART:"elm.text", "visible", 0.0);
10405                else
10406                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10407             }
10408          }
10409          program { name: "text_hide";
10410             signal: "elm,state,text,hidden";
10411             source: "elm";
10412             script {
10413                new st[31];
10414                new Float:vl;
10415                get_state(PART:"elm.swallow.content", st, 30, vl);
10416                if (!strcmp(st, "visible"))
10417                  {
10418                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
10419                     set_state(PART:"icon_rect", "icononly", 0.0);
10420                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10421                  }
10422                set_state(PART:"elm.text", "default", 0.0);
10423             }
10424          }
10425          program { name: "icon_show";
10426             signal: "elm,state,icon,visible";
10427             source: "elm";
10428             script {
10429                new st[31];
10430                new Float:vl;
10431                get_state(PART:"elm.text", st, 30, vl);
10432                if (!strcmp(st, "visible"))
10433                  {
10434                     set_state(PART:"elm.swallow.content", "visible", 0.0);
10435                     set_state(PART:"icon_rect", "visible", 0.0);
10436                     set_state(PART:"padding_after_icon", "visible", 0.0);
10437                  }
10438                else
10439                  {
10440                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
10441                     set_state(PART:"icon_rect", "icononly", 0.0);
10442                     set_state(PART:"padding_after_icon", "icononly", 0.0);
10443                  }
10444             }
10445          }
10446          program { name: "icon_hide";
10447             signal: "elm,state,icon,hidden";
10448             source: "elm";
10449             action: STATE_SET "default" 0.0;
10450             target: "elm.swallow.content";
10451             target: "padding_after_icon";
10452             target: "icon_rect";
10453          }
10454          program { name: "disable";
10455             signal: "elm,state,disabled";
10456             source: "elm";
10457             action: STATE_SET "disabled" 0.0;
10458             target: "button_image";
10459             target: "disabler";
10460             after: "disable_text";
10461          }
10462          program { name: "disable_text";
10463             script {
10464                new st[31];
10465                new Float:vl;
10466                get_state(PART:"elm.text", st, 30, vl);
10467                if (!strcmp(st, "visible"))
10468                  set_state(PART:"elm.text", "disabled_visible", 0.0);
10469                else
10470                  set_state(PART:"elm.text", "disabled", 0.0);
10471                set_int(button_state, BUTTON_STATE_DISABLED);
10472             }
10473          }
10474          program { name: "enable";
10475             signal: "elm,state,enabled";
10476             source: "elm";
10477             action: STATE_SET "default" 0.0;
10478             target: "button_image";
10479             target: "disabler";
10480             after: "enable_text";
10481          }
10482          program { name: "enable_text";
10483             script {
10484                new st[31];
10485                new Float:vl;
10486                get_state(PART:"elm.text", st, 30, vl);
10487                if (!strcmp(st, "disabled_visible"))
10488                  set_state(PART:"elm.text", "visible", 0.0);
10489                else
10490                  set_state(PART:"elm.text", "default", 0.0);
10491                set_int(button_state, BUTTON_STATE_ENABLED);
10492             }
10493          }
10494          program { name: "focused";
10495             //signal: "elm,action,focus";
10496             //source: "elm";
10497             action: STATE_SET "focused" 0.0;
10498             target: "button_image";
10499             target: "elm.text";
10500          }
10501          program { name: "unfocused";
10502             //signal: "elm,action,unfocus";
10503             //source: "elm";
10504             action: STATE_SET "default" 0.0;
10505             target: "button_image";
10506             after: "unfocus_text";
10507          }
10508          program { name: "unfocus_text";
10509             action: STATE_SET "visible" 0.0;
10510             target: "elm.text";
10511          }
10512       }
10513    }
10514
10515 ///////////////////////////////////////////////////////////////////////////////////////
10516 #define BUTTON_NAVIFRAME_TITLE_ICON_STYLES(style_name, image_normal, image_press, min_width, min_height) \
10517    group { name: "elm/button/base/naviframe/title/icon/"style_name; \
10518       images { \
10519          image: image_normal COMP; \
10520          image: image_press COMP; \
10521          image: "00_title_btn_bg_press.png" COMP; \
10522       } \
10523       parts { \
10524          part { name: "button_image"; \
10525             scale: 1; \
10526             description { state: "default" 0.0; \
10527                min: BUTTON_NAVIFRAME_TITLE_ICON_BG_NORMAL_MIN_INC; \
10528                max: BUTTON_NAVIFRAME_TITLE_ICON_BG_NORMAL_MIN_INC; \
10529                color: 0 0 0 0; \
10530             } \
10531             description { \
10532                state: "clicked" 0.0; \
10533                min: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_MIN_INC; \
10534                max: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_MIN_INC; \
10535                image { \
10536                   normal: "00_title_btn_bg_press.png"; \
10537                   border: BUTTON_NAVIFRAME_TITLE_ICON_BG_PRESSED_BORDER_INC; \
10538                   border_scale: 1; \
10539                } \
10540             } \
10541             description { \
10542                state: "disabled" 0.0; \
10543                inherit: "default" 0.0; \
10544             } \
10545             description { state: "focused" 0.0; \
10546                inherit: "default" 0.0;\
10547             } \
10548          } \
10549          part { name: "icon_part"; \
10550             scale: 1; \
10551             description { state: "default" 0.0; \
10552                min: min_width min_height; \
10553                max: min_width min_height; \
10554                rel1.to: "button_image"; \
10555                rel2.to: "button_image"; \
10556                image.normal: image_normal; \
10557             } \
10558             description { \
10559                state: "clicked" 0.0; \
10560                inherit: "default" 0.0; \
10561                image.normal: image_press; \
10562             } \
10563             description { \
10564                state: "disabled" 0.0; \
10565                inherit: "default" 0.0; \
10566                color: 127 127 127 127; \
10567             } \
10568          } \
10569          part { name: "over1"; \
10570             type: RECT; \
10571             ignore_flags: ON_HOLD; \
10572             description { state: "default" 0.0; \
10573                color: 0 0 0 0; \
10574             } \
10575          } \
10576          part { name: "over2"; \
10577             repeat_events: 1; \
10578             description { state: "default" 0.0; \
10579                color: 0 0 0 0; \
10580             } \
10581          } \
10582          part { name: "disabler"; \
10583             type: RECT; \
10584             description { state: "default" 0.0; \
10585                color: 0 0 0 0; \
10586                visible: 0; \
10587             } \
10588             description { state: "disabled" 0.0; \
10589                inherit: "default" 0.0; \
10590                visible: 1; \
10591             } \
10592          } \
10593       } \
10594       programs { \
10595          program { name: "button_click"; \
10596             signal: "mouse,down,1"; \
10597             source: "over1"; \
10598             action: SIGNAL_EMIT "elm,action,press" ""; \
10599             after: "button_click_anim"; \
10600          } \
10601          program { name: "button_click_anim"; \
10602             action: STATE_SET "clicked" 0.0; \
10603             target: "button_image"; \
10604             target: "icon_part"; \
10605          } \
10606          program { name: "button_unclick"; \
10607             signal: "mouse,up,1"; \
10608             source: "over2"; \
10609             action: SIGNAL_EMIT "elm,action,unpress" ""; \
10610             after: "button_unclick_anim"; \
10611          } \
10612          program { name: "button_unclick_anim"; \
10613             action: STATE_SET "default" 0.0; \
10614             target: "button_image"; \
10615             target: "icon_part"; \
10616          } \
10617          program { name: "touch_snd"; \
10618             signal: "mouse,clicked,1"; \
10619             source: "over1"; \
10620             action: PLAY_SAMPLE "touch_sound" 1.0; \
10621             after: button_unclick3; \
10622          } \
10623          program { name: "button_unclick3"; \
10624             action: SIGNAL_EMIT "elm,action,click" ""; \
10625          } \
10626          program { name: "disable"; \
10627             signal: "elm,state,disabled"; \
10628             source: "elm"; \
10629             action: STATE_SET "disabled" 0.0; \
10630             target: "disabler"; \
10631             target: "button_image"; \
10632             target: "icon_part"; \
10633          } \
10634          program { name: "enable"; \
10635             signal: "elm,state,enabled"; \
10636             source: "elm"; \
10637             action: STATE_SET "default" 0.0; \
10638             target: "disabler"; \
10639             target: "button_image"; \
10640             target: "icon_part"; \
10641          } \
10642       } \
10643    }
10644 ///////////////////////////////////////////////////////////////////////////////////////
10645    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)
10646
10647    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)
10648
10649    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)
10650
10651    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)
10652
10653    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)
10654
10655 /////////////////////////////////////////////////////////////////////////////////////////
10656    group { name: "elm/button/base/naviframe/more/default";
10657       images {
10658          image: "00_winset_more.png" COMP;
10659          image: "00_winset_more_press.png" COMP;
10660          image: "00_title_btn_bg_press.png" COMP;
10661       }
10662       parts {
10663          part { name: "button_image";
10664             scale: 1;
10665             description { state: "default" 0.0;
10666                min: BUTTON_NAVIFRAME_MORE_BG_MIN_MAX_INC;
10667                max: BUTTON_NAVIFRAME_MORE_BG_MIN_MAX_INC;
10668                color: 0 0 0 0;
10669             }
10670             description { state: "clicked" 0.0;
10671                min: BUTTON_NAVIFRAME_MORE_BG_PRESSED_MIN_MAX_INC;
10672                max: BUTTON_NAVIFRAME_MORE_BG_PRESSED_MIN_MAX_INC;
10673                image {
10674                   normal: "00_title_btn_bg_press.png";
10675                   border: BUTTON_NAVIFRAME_MORE_BG_PRESSED_BORDER_INC;
10676                   border_scale: 1;
10677                }
10678             }
10679             description { state: "disabled" 0.0;
10680                inherit: "default" 0.0;
10681             }
10682             description { state: "focused" 0.0;
10683                inherit: "default" 0.0;
10684             }
10685          }
10686          part { name: "more_image";
10687             scale: 1;
10688             mouse_events: 0;
10689             description { state: "default" 0.0;
10690                min: BUTTON_NAVIFRAME_MORE_DEFAULT_IMAGE_MIN_MAX_INC;
10691                max: BUTTON_NAVIFRAME_MORE_DEFAULT_IMAGE_MIN_MAX_INC;
10692                rel1.to: "button_image";
10693                rel2.to: "button_image";
10694                image.normal: "00_winset_more.png";
10695             }
10696             description { state: "clicked" 0.0;
10697                inherit: "default" 0.0;
10698                image.normal: "00_winset_more_press.png";
10699             }
10700             description { state: "disabled" 0.0;
10701                inherit: "default" 0.0;
10702                color: 255 255 255 127;
10703             }
10704          }
10705          part { name: "over2";
10706             type: RECT;
10707             repeat_events: 1;
10708             ignore_flags: ON_HOLD;
10709             description { state: "default" 0.0;
10710                color: 0 0 0 0;
10711             }
10712          }
10713          part { name: "over3";
10714             type: RECT;
10715             repeat_events: 1;
10716             description { state: "default" 0.0;
10717                color: 0 0 0 0;
10718             }
10719          }
10720          part { name: "disabler";
10721             type: RECT;
10722             description { state: "default" 0.0;
10723                color: 0 0 0 0;
10724                visible: 0;
10725             }
10726             description { state: "disabled" 0.0;
10727                inherit: "default" 0.0;
10728                visible: 1;
10729             }
10730          }
10731       }
10732       programs {
10733          program { name: "button_click";
10734             signal: "mouse,down,1";
10735             source: "over2";
10736             action: SIGNAL_EMIT "elm,action,press" "";
10737             after: "button_click_anim";
10738          }
10739          program { name: "button_click_anim";
10740             action: STATE_SET "clicked" 0.0;
10741             target: "button_image";
10742             target: "more_image";
10743          }
10744          program { name: "button_unclick";
10745             signal: "mouse,up,1";
10746             source: "over3";
10747             action: SIGNAL_EMIT "elm,action,unpress" "";
10748             after: "button_unclick_anim";
10749          }
10750          program { name: "button_unclick_anim";
10751             action: STATE_SET "default" 0.0;
10752             target: "button_image";
10753             target: "more_image";
10754          }
10755          program { name: "touch_snd";
10756             signal: "mouse,clicked,1";
10757             source: "over2";
10758             action: PLAY_SAMPLE "touch_sound" 1.0;
10759             after: button_unclick3;
10760          }
10761          program { name: "button_unclick3";
10762             action: SIGNAL_EMIT "elm,action,click" "";
10763          }
10764          program { name: "disable";
10765             signal: "elm,state,disabled";
10766             source: "elm";
10767             action: STATE_SET "disabled" 0.0;
10768             target: "disabler";
10769             target: "button_image";
10770             target: "more_image";
10771          }
10772          program { name: "enable";
10773             signal: "elm,state,enabled";
10774             source: "elm";
10775             action: STATE_SET "default" 0.0;
10776             target: "disabler";
10777             target: "button_image";
10778             target: "more_image";
10779          }
10780       }
10781    }
10782
10783 ///////////////////////////////////////////////////////////////////////////////////////
10784    group { name: "elm/button/base/tickernoti";
10785       images {
10786          image: "00_button_06_normal.png" COMP;
10787          image: "00_button_06_press.png" COMP;
10788          image: "00_button_06_dim.png" COMP;
10789          image: "00_button_06_normal_focus.png" COMP;
10790       }
10791       script {
10792          public button_state = BUTTON_STATE_ENABLED;
10793       }
10794       parts {
10795          part { name: "button_image";
10796             scale: 1;
10797             description { state: "default" 0.0;
10798                image {
10799                   normal: "00_button_06_normal.png";
10800                   border: BUTTON_TICKERNOTI_BG_BORDER_INC;
10801                   border_scale: 1;
10802                }
10803             }
10804             description { state: "clicked" 0.0;
10805                inherit: "default" 0.0;
10806                image.normal: "00_button_06_press.png";
10807             }
10808             description { state: "disabled" 0.0;
10809                inherit: "default" 0.0;
10810                image.normal: "00_button_06_dim.png";
10811             }
10812             description { state: "focused" 0.0;
10813                inherit: "default" 0.0;
10814                image.normal: "00_button_06_normal_focus.png";
10815             }
10816          }
10817          part { name: "padding_left_top";
10818             type: RECT;
10819             scale: 1;
10820             mouse_events: 0;
10821             description { state: "default" 0.0;
10822                align: 0.0 0.0;
10823                rel2.relative: 0.0 0.0;
10824                min: BUTTON_TICKERNOTI_PADDING_MIN_INC;
10825                fixed: 1 1;
10826                visible: 0;
10827             }
10828          }
10829          part { name: "bg";
10830             type: RECT;
10831             scale: 1;
10832             mouse_events: 0;
10833             description { state: "default" 0.0;
10834                min: BUTTON_TICKERNOTI_BG_MIN_INC;
10835                visible: 0;
10836             }
10837             description { state: "visible" 0.0;
10838                inherit: "default" 0.0;
10839                min: BUTTON_TICKERNOTI_VISIBLE_BG_MIN_INC;
10840             }
10841             description { state: "icononly" 0.0;
10842                inherit: "default" 0.0;
10843                min: BUTTON_TICKERNOTI_ICONONLY_BG_MIN_INC;
10844             }
10845          }
10846          part { name: "padding_right_bottom";
10847             type: RECT;
10848             scale: 1;
10849             mouse_events: 0;
10850             description { state: "default" 0.0;
10851                align: 1.0 1.0;
10852                rel1.relative: 1.0 1.0;
10853                min: BUTTON_TICKERNOTI_PADDING_MIN_INC;
10854                fixed: 1 1;
10855                visible: 0;
10856             }
10857          }
10858          part { name: "icon_rect";
10859             type: RECT;
10860             scale: 1;
10861             mouse_events: 0;
10862             description { state: "default" 0.0;
10863                visible: 0;
10864                min: 0 0;
10865                fixed: 1 0;
10866                rel1 {
10867                   relative: 1.0 1.0;
10868                   to: "padding_left_top";
10869                }
10870                rel2 {
10871                   relative: 1.0 0.0;
10872                   to_x: "padding_left_top";
10873                   to_y: "padding_right_bottom";
10874                }
10875                align: 0.0 0.5;
10876             }
10877             description { state: "visible" 0.0;
10878                visible: 0;
10879                min: BUTTON_TICKERNOTI_VISIBLE_ICON_RECT_MIN_MAX_INC;
10880                max: BUTTON_TICKERNOTI_VISIBLE_ICON_RECT_MIN_MAX_INC;
10881                fixed: 1 0;
10882                rel1 {
10883                   relative: 1.0 1.0;
10884                   to: "padding_left_top";
10885                }
10886                rel2 {
10887                   relative: 1.0 0.0;
10888                   to_x: "padding_left_top";
10889                   to_y: "padding_right_bottom";
10890                }
10891                align: 0.0 0.5;
10892             }
10893             description { state: "icononly" 0.0;
10894                inherit: "default" 0.0;
10895             }
10896          }
10897          part { name: "padding_after_icon";
10898             type: RECT;
10899             scale: 1;
10900             mouse_events: 0;
10901             description { state: "default" 0.0; //when only icon or no icon is there
10902                align: 0.0 0.0;
10903                rel1 {
10904                   relative: 1.0 0.0;
10905                   to: "icon_rect";
10906                }
10907                rel2.to: "icon_rect";
10908                fixed: 1 0;
10909                min: 0 0;
10910                visible: 0;
10911             }
10912             description { state: "visible" 0.0;
10913                visible: 0;
10914                align: 0.0 0.0;
10915                rel1 {
10916                   relative: 1.0 0.0;
10917                   to: "icon_rect";
10918                }
10919                rel2.to: "icon_rect";
10920                fixed: 1 0;
10921                min: BUTTON_TICKERNOTI_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10922             }
10923             description { state: "icononly" 0.0;
10924                inherit: "default" 0.0;
10925             }
10926          }
10927          part { name: "padding_before_text";
10928             type: RECT;
10929             scale: 1;
10930             mouse_events: 0;
10931             description { state: "default" 0.0; //when only icon or no icon is there
10932                align: 1.0 0.5;
10933                rel1 {
10934                   relative: 0.0 1.0;
10935                   to_x: "elm.text";
10936                   to_y: "padding_left_top";
10937                }
10938                rel2 {
10939                   relative: 0.0 0.0;
10940                   to_x: "elm.text";
10941                   to_y: "padding_right_bottom";
10942                }
10943                fixed: 1 0;
10944                min: BUTTON_TICKERNOTI_VISIBLE_PADDING_ICON_TEXT_MIN_INC;
10945                visible: 0;
10946             }
10947          }
10948          part { name: "elm.swallow.content";
10949             type: SWALLOW;
10950             scale: 1;
10951             clip_to: "clipper";
10952             description { state: "default" 0.0;
10953                visible: 0;
10954                align: 0.0 0.5;
10955                rel1 {
10956                   relative: 1.0 1.0;
10957                   to: "padding_left_top";
10958                }
10959                rel2 {
10960                   relative: 1.0 0.0;
10961                   to_x: "padding_left_top";
10962                   to_y: "padding_right_bottom";
10963                }
10964                fixed: 1 0;
10965             }
10966             description { state: "visible" 0.0;
10967                fixed: 1 0;
10968                min: BUTTON_TICKERNOTI_VISIBLE_ICON_MIN_MAX_INC;
10969                max: BUTTON_TICKERNOTI_VISIBLE_ICON_MIN_MAX_INC;
10970                align: 1.0 0.5;
10971                rel1 {
10972                   relative: 0.0 1.0;
10973                   to_x: "padding_before_text";
10974                   to_y: "padding_left_top";
10975                }
10976                rel2 {
10977                   relative: 0.0 0.0;
10978                   to_x: "padding_before_text";
10979                   to_y: "padding_right_bottom";
10980                }
10981             }
10982             description { state: "icononly" 0.0;
10983                min: BUTTON_TICKERNOTI_ICONONLY_ICON_MIN_MAX_INC;
10984                max: BUTTON_TICKERNOTI_ICONONLY_ICON_MIN_MAX_INC;
10985             }
10986          }
10987          part { name: "elm.text";
10988             type: TEXT;
10989             mouse_events: 0;
10990             scale: 1;
10991             clip_to: "clipper";
10992             description { state: "default" 0.0;
10993                visible: 0;
10994                rel1 {
10995                   relative: 1.0 1.0;
10996                   to_x: "padding_after_icon";
10997                   to_y: "padding_left_top";
10998                }
10999                rel2 {
11000                   relative: 0.0 0.0;
11001                   to: "padding_right_bottom";
11002                }
11003                color: BUTTON_TICKERNOTI_NORMAL_COLOR_INC;
11004                text {
11005                   font: "SLP:style=Medium";
11006                   size: BUTTON_TICKERNOTI_FONT_SIZE_INC;
11007                   min: 1 0;
11008                   max: 1 0;
11009                   text_class: "slp_medium";
11010                }
11011             }
11012             description { state: "visible" 0.0;
11013                inherit: "default" 0.0;
11014                visible: 1;
11015             }
11016             description { state: "clicked" 0.0;
11017                inherit: "default" 0.0;
11018                visible: 1;
11019                color: BUTTON_TICKERNOTI_PRESSED_COLOR_INC;
11020             }
11021             description { state: "disabled" 0.0;
11022                inherit: "default" 0.0;
11023                color: 0 0 0 128;
11024             }
11025             description { state: "disabled_visible" 0.0;
11026                inherit: "default" 0.0;
11027                color: BUTTON_TICKERNOTI_DISABLED_COLOR_INC;
11028                visible: 1;
11029             }
11030             description { state: "focused" 0.0;
11031                inherit: "default" 0.0;
11032                visible: 1;
11033                color: BUTTON_TICKERNOTI_PRESSED_COLOR_INC;
11034             }
11035          }
11036          part { name: "over2";
11037             type: RECT;
11038             repeat_events: 1;
11039             ignore_flags: ON_HOLD;
11040             description { state: "default" 0.0;
11041                color: 0 0 0 0;
11042             }
11043          }
11044          part { name: "over3";
11045             type: RECT;
11046             repeat_events: 1;
11047             description { state: "default" 0.0;
11048                color: 0 0 0 0;
11049             }
11050          }
11051          part { name: "clipper";
11052             type: RECT;
11053             description { state: "default" 0.0;
11054                color: 255 255 255 255;
11055             }
11056          }
11057          part { name: "disabler";
11058             type: RECT;
11059             description { state: "default" 0.0;
11060                color: 0 0 0 0;
11061                visible: 0;
11062             }
11063             description { state: "disabled" 0.0;
11064                inherit: "default" 0.0;
11065                visible: 1;
11066             }
11067          }
11068       }
11069       programs {
11070          program { name: "button_click";
11071             signal: "mouse,down,1";
11072             source: "over2";
11073             action: SIGNAL_EMIT "elm,action,press" "";
11074             after: "button_click_anim";
11075          }
11076          program { name: "button_click_anim";
11077             action: STATE_SET "clicked" 0.0;
11078             target: "button_image";
11079             after: "text_clicked";
11080          }
11081          program { name: "text_clicked";
11082             script {
11083                new st[31];
11084                new Float:vl;
11085                get_state(PART:"elm.text", st, 30, vl);
11086                if (!strcmp(st, "visible"))
11087                  set_state(PART:"elm.text", "clicked", 0.0);
11088             }
11089          }
11090          program { name: "button_unpress";
11091             action: SIGNAL_EMIT "elm,action,unpress" "";
11092          }
11093          program { name: "button_mouseout_clicked";
11094             signal: "mouse,up,1";
11095             source: "over3";
11096             script {
11097                new st[31];
11098                new Float:vl;
11099                get_state(PART:"elm.swallow.content", st, 30, vl);
11100                if (strcmp(st, "icononly"))
11101                  {
11102                     emit("elm,action,default,text,set", "");
11103                     set_state(PART:"elm.text", "visible", 0.0);
11104                  }
11105                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11106                  set_state(PART:"button_image", "default", 0.0);
11107             }
11108             after: button_unpress;
11109          }
11110          program { name: "touch_snd";
11111             signal: "mouse,clicked,1";
11112             source: "over2";
11113             action: PLAY_SAMPLE "touch_sound" 1.0;
11114             after: button_unclick3;
11115          }
11116          program { name: "button_unclick3";
11117             action: SIGNAL_EMIT "elm,action,click" "";
11118          }
11119          program { name: "text_show";
11120             signal: "elm,state,text,visible";
11121             source: "elm";
11122             script {
11123                new st[31];
11124                new Float:vl;
11125                get_state(PART:"elm.swallow.content", st, 30, vl);
11126                if (!strcmp(st, "icononly"))
11127                  {
11128                     set_state(PART:"elm.swallow.content", "visible", 0.0);
11129                     set_state(PART:"icon_rect", "visible", 0.0);
11130                     set_state(PART:"padding_after_icon", "visible", 0.0);
11131                     set_state(PART:"bg", "visible", 0.0);
11132                  }
11133                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11134                  set_state(PART:"elm.text", "visible", 0.0);
11135                else
11136                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11137             }
11138          }
11139          program { name: "text_hide";
11140             signal: "elm,state,text,hidden";
11141             source: "elm";
11142             script {
11143                new st[31];
11144                new Float:vl;
11145                get_state(PART:"elm.swallow.content", st, 30, vl);
11146                if (!strcmp(st, "visible"))
11147                  {
11148                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
11149                     set_state(PART:"icon_rect", "icononly", 0.0);
11150                     set_state(PART:"padding_after_icon", "icononly", 0.0);
11151                     set_state(PART:"bg", "icononly", 0.0);
11152                  }
11153                set_state(PART:"elm.text", "default", 0.0);
11154             }
11155          }
11156          program { name: "icon_show";
11157             signal: "elm,state,icon,visible";
11158             source: "elm";
11159             script {
11160                new st[31];
11161                new Float:vl;
11162                get_state(PART:"elm.text", st, 30, vl);
11163                if (!strcmp(st, "visible"))
11164                  {
11165                     set_state(PART:"elm.swallow.content", "visible", 0.0);
11166                     set_state(PART:"icon_rect", "visible", 0.0);
11167                     set_state(PART:"padding_after_icon", "visible", 0.0);
11168                     set_state(PART:"bg", "visible", 0.0);
11169                  }
11170                else
11171                  {
11172                     set_state(PART:"elm.swallow.content", "icononly", 0.0);
11173                     set_state(PART:"icon_rect", "icononly", 0.0);
11174                     set_state(PART:"padding_after_icon", "icononly", 0.0);
11175                     set_state(PART:"bg", "icononly", 0.0);
11176                  }
11177             }
11178          }
11179          program { name: "icon_hide";
11180             signal: "elm,state,icon,hidden";
11181             source: "elm";
11182             action: STATE_SET "default" 0.0;
11183             target: "elm.swallow.content";
11184             target: "padding_after_icon";
11185             target: "icon_rect";
11186             target: "bg";
11187          }
11188          program { name: "disable";
11189             signal: "elm,state,disabled";
11190             source: "elm";
11191             action: STATE_SET "disabled" 0.0;
11192             target: "button_image";
11193             target: "disabler";
11194             after: "disable_text";
11195          }
11196          program { name: "disable_text";
11197             script {
11198                new st[31];
11199                new Float:vl;
11200                get_state(PART:"elm.text", st, 30, vl);
11201                if (!strcmp(st, "visible"))
11202                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11203                else
11204                  set_state(PART:"elm.text", "disabled", 0.0);
11205                set_int(button_state, BUTTON_STATE_DISABLED);
11206             }
11207          }
11208          program { name: "enable";
11209             signal: "elm,state,enabled";
11210             source: "elm";
11211             action: STATE_SET "default" 0.0;
11212             target: "button_image";
11213             target: "disabler";
11214             after: "enable_text";
11215          }
11216          program { name: "enable_text";
11217             script {
11218                new st[31];
11219                new Float:vl;
11220                get_state(PART:"elm.text", st, 30, vl);
11221                if (!strcmp(st, "disabled_visible"))
11222                  set_state(PART:"elm.text", "visible", 0.0);
11223                else
11224                  set_state(PART:"elm.text", "default", 0.0);
11225                set_int(button_state, BUTTON_STATE_ENABLED);
11226             }
11227          }
11228          program { name: "focused";
11229             //signal: "elm,action,focus";
11230             //source: "elm";
11231             action: STATE_SET "focused" 0.0;
11232             target: "button_image";
11233             target: "elm.text";
11234          }
11235          program { name: "unfocused";
11236             //signal: "elm,action,unfocus";
11237             //source: "elm";
11238             action: STATE_SET "default" 0.0;
11239             target: "button_image";
11240             after: "unfocus_text";
11241          }
11242          program { name: "unfocus_text";
11243             action: STATE_SET "visible" 0.0;
11244             target: "elm.text";
11245          }
11246       }
11247    }
11248
11249 ///////////////////////////////////////////////////////////////////////////////////////
11250    group { name: "elm/button/base/expandable_number";
11251       alias: "elm/button/base/text_only/expandable_number";
11252       images {
11253          image: "00_button_05_normal.png" COMP;
11254          image: "00_button_05_press.png" COMP;
11255          image: "00_button_05_dim.png" COMP;
11256          image: "00_button_05_normal_focus.png" COMP;
11257          image: "00_arrow_expand.png" COMP;
11258          image: "00_arrow_expand_press.png" COMP;
11259          image: "00_arrow_expand_dim.png" COMP;
11260       }
11261       script {
11262          public button_state = BUTTON_STATE_ENABLED;
11263       }
11264       parts {
11265          part { name: "button_image";
11266             scale: 1;
11267             description { state: "default" 0.0;
11268                min: BUTTON_EXPANDABLE_NUMBER_BG_NORMAL_MIN_MAX_INC;
11269                max: BUTTON_EXPANDABLE_NUMBER_BG_NORMAL_MIN_MAX_INC;
11270                image {
11271                   normal: "00_button_05_normal.png";
11272                   border: BUTTON_EXPANDABLE_NUMBER_BG_BORDER_INC;
11273                   border_scale: 1;
11274                }
11275             }
11276             description { state: "clicked" 0.0;
11277                inherit: "default" 0.0;
11278                image.normal: "00_button_05_press.png";
11279             }
11280             description { state: "disabled" 0.0;
11281                inherit: "default" 0.0;
11282                image.normal: "00_button_05_dim.png";
11283             }
11284             description { state: "focused" 0.0;
11285                inherit: "default" 0.0;
11286                image.normal: "00_button_05_normal_focus.png";
11287             }
11288          }
11289          part { name: "padding_left_top";
11290             type: RECT;
11291             scale: 1;
11292             mouse_events: 0;
11293             description { state: "default" 0.0;
11294                align: 0.0 0.0;
11295                rel2.relative: 0.0 0.0;
11296                min: BUTTON_EXPANDABLE_NUMBER_PADDING_MIN_INC;
11297                fixed: 1 1;
11298                visible: 0;
11299             }
11300          }
11301          part { name: "padding_right_bottom";
11302             type: RECT;
11303             scale: 1;
11304             mouse_events: 0;
11305             description { state: "default" 0.0;
11306                align: 1.0 1.0;
11307                rel1.relative: 1.0 1.0;
11308                min: BUTTON_EXPANDABLE_NUMBER_PADDING_MIN_INC;
11309                fixed: 1 1;
11310                visible: 0;
11311             }
11312          }
11313          part { name: "icon_rect";
11314             type: RECT;
11315             scale: 1;
11316             mouse_events: 0;
11317             description { state: "default" 0.0;
11318                visible: 0;
11319                min: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
11320                max: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
11321                fixed: 1 0;
11322                rel1 {
11323                   relative: 0.0 1.0;
11324                   to_x: "padding_right_bottom";
11325                   to_y: "padding_left_top";
11326                }
11327                rel2 {
11328                   relative: 0.0 0.0;
11329                   to: "padding_right_bottom";
11330                }
11331                align: 1.0 0.5;
11332                color: 0 0 0 0;
11333             }
11334          }
11335          part { name: "arrow_expand";
11336             scale: 1;
11337             mouse_events: 0;
11338             description { state: "default" 0.0;
11339                align: 0.0 0.5;
11340                min: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
11341                max: BUTTON_EXPANDABLE_NUMBER_ICON_RECT_EXPAND__MIN_MAX_INC;
11342                fixed: 0 0;
11343                rel1.to: "icon_rect";
11344                rel2.to: "icon_rect";
11345                image.normal:"00_arrow_expand.png";
11346             }
11347             description { state: "clicked" 0.0;
11348                inherit: "default" 0.0;
11349                image.normal:"00_arrow_expand_press.png";
11350             }
11351             description { state: "disabled" 0.0;
11352                inherit: "default" 0.0;
11353                image.normal:"00_arrow_expand_dim.png";
11354             }
11355          }
11356          part { name: "elm.text";
11357             type: TEXT;
11358             mouse_events: 0;
11359             scale: 1;
11360             description { state: "default" 0.0;
11361                min: BUTTON_EXPANDABLE_NUMBER_TEXT_MIN_MAX_INC;
11362                max: BUTTON_EXPANDABLE_NUMBER_TEXT_MIN_MAX_INC;
11363                fixed:1 0;
11364                rel1 {
11365                   relative: 1.0 1.0;
11366                   to: "padding_left_top";
11367                }
11368                rel2 {
11369                   relative: 1.0 1.0;
11370                   to_x:"padding_left_top";
11371                   to_y:"padding_right_bottom";
11372                }
11373                align: 0.0 0.5;
11374                color: BUTTON_TEXT_STYLE1_NORMAL_COLOR_INC;
11375                text {
11376                   font: "SLP:style=Medium";
11377                   size: BUTTON_EXPANDABLE_NUMBER_FONT_SIZE_INC;
11378                   min: 0 0;
11379                   fit: 1 1;
11380                   size_range: 14 20;
11381                   text_class: "slp_medium";
11382                }
11383             }
11384             description { state: "visible" 0.0;
11385                inherit: "default" 0.0;
11386             }
11387             description { state: "clicked" 0.0;
11388                inherit: "default" 0.0;
11389                color: BUTTON_TEXT_STYLE1_PRESSED_COLOR_INC;
11390             }
11391             description { state: "disabled" 0.0;
11392                inherit: "default" 0.0;
11393                color: 0 0 0 128;
11394             }
11395             description { state: "disabled_visible" 0.0;
11396                inherit: "default" 0.0;
11397                color: BUTTON_TEXT_STYLE1_DISABLED_COLOR_INC;
11398             }
11399             description { state: "focused" 0.0;
11400                inherit: "default" 0.0;
11401                color: BUTTON_TEXT_STYLE1_FOCUSED_COLOR_INC;
11402             }
11403          }
11404          part { name: "over2";
11405             type: RECT;
11406             repeat_events: 1;
11407             ignore_flags: ON_HOLD;
11408             description { state: "default" 0.0;
11409                color: 0 0 0 0;
11410             }
11411          }
11412          part { name: "over3";
11413             type: RECT;
11414             repeat_events: 1;
11415             description { state: "default" 0.0;
11416                color: 0 0 0 0;
11417             }
11418          }
11419          part { name: "disabler";
11420             type: RECT;
11421             description { state: "default" 0.0;
11422                color: 0 0 0 0;
11423                visible: 0;
11424             }
11425             description { state: "disabled" 0.0;
11426                inherit: "default" 0.0;
11427                visible: 1;
11428             }
11429          }
11430       }
11431       programs {
11432          program { name: "button_click";
11433             signal: "mouse,down,1";
11434             source: "over2";
11435             action: SIGNAL_EMIT "elm,action,press" "";
11436             after: "button_click_anim";
11437          }
11438          program { name: "button_click_anim";
11439             action: STATE_SET "clicked" 0.0;
11440             target: "button_image";
11441             target: "arrow_expand";
11442             after: "text_clicked";
11443          }
11444          program { name: "text_clicked";
11445             script {
11446                new st[31];
11447                new Float:vl;
11448                get_state(PART:"elm.text", st, 30, vl);
11449                if (!strcmp(st, "visible"))
11450                  set_state(PART:"elm.text", "clicked", 0.0);
11451             }
11452          }
11453          program { name: "button_unpress";
11454             action: SIGNAL_EMIT "elm,action,unpress" "";
11455          }
11456          program { name: "button_mouseout_clicked";
11457             signal: "mouse,up,1";
11458             source: "over3";
11459             script {
11460                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11461                  {
11462                     set_state(PART:"button_image", "default", 0.0);
11463                     set_state(PART:"elm.text", "visible", 0.0);
11464                     set_state(PART:"arrow_expand", "default", 0.0);
11465                  }
11466             }
11467             after: button_unpress;
11468          }
11469          program { name: "touch_snd";
11470             signal: "mouse,clicked,1";
11471             source: "over2";
11472             action: PLAY_SAMPLE "touch_sound" 1.0;
11473             after: button_unclick3;
11474          }
11475          program { name: "button_unclick3";
11476             action: SIGNAL_EMIT "elm,action,click" "";
11477          }
11478          program { name: "text_show";
11479             signal: "elm,state,text,visible";
11480             source: "elm";
11481             script {
11482                if (get_int(button_state) != BUTTON_STATE_DISABLED)
11483                  set_state(PART:"elm.text", "visible", 0.0);
11484                else
11485                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11486             }
11487          }
11488          program { name: "text_hide";
11489             signal: "elm,state,text,hidden";
11490             source: "elm";
11491             script {
11492                set_state(PART:"elm.text", "default", 0.0);
11493             }
11494          }
11495          program { name: "disable";
11496             signal: "elm,state,disabled";
11497             source: "elm";
11498             action: STATE_SET "disabled" 0.0;
11499             target: "button_image";
11500             target: "disabler";
11501             after: "disable_text";
11502          }
11503          program { name: "disable_text";
11504             script {
11505                new st[31];
11506                new Float:vl;
11507                get_state(PART:"elm.text", st, 30, vl);
11508                if (!strcmp(st, "visible"))
11509                  set_state(PART:"elm.text", "disabled_visible", 0.0);
11510                else
11511                  set_state(PART:"elm.text", "disabled", 0.0);
11512                set_int(button_state, BUTTON_STATE_DISABLED);
11513             }
11514          }
11515          program { name: "enable";
11516             signal: "elm,state,enabled";
11517             source: "elm";
11518             action: STATE_SET "default" 0.0;
11519             target: "button_image";
11520             target: "disabler";
11521             after: "enable_text";
11522          }
11523          program { name: "enable_text";
11524             script {
11525                new st[31];
11526                new Float:vl;
11527                get_state(PART:"elm.text", st, 30, vl);
11528                if (!strcmp(st, "disabled_visible"))
11529                  set_state(PART:"elm.text", "visible", 0.0);
11530                else
11531                  set_state(PART:"elm.text", "default", 0.0);
11532                set_int(button_state, BUTTON_STATE_ENABLED);
11533             }
11534          }
11535          program { name: "focused";
11536             //signal: "elm,action,focus";
11537             //source: "elm";
11538             action: STATE_SET "focused" 0.0;
11539             target: "button_image";
11540             target: "elm.text";
11541          }
11542          program { name: "unfocused";
11543             //signal: "elm,action,unfocus";
11544             //source: "elm";
11545             action: STATE_SET "default" 0.0;
11546             target: "button_image";
11547             after: "unfocus_text";
11548          }
11549          program { name: "unfocus_text";
11550             action: STATE_SET "visible" 0.0;
11551             target: "elm.text";
11552          }
11553       }
11554    }
11555
11556 #undef BUTTON_STATE_ENABLED
11557 #undef BUTTON_STATE_DISABLED