EFL migration revision 67547
[framework/uifw/elementary.git] / data / themes / widgets / menu.edc
1 group { name: "elm/menu/item/default";
2    images {
3       image: "bt_base1.png" COMP;
4       image: "bt_base2.png" COMP;
5       image: "bt_hilight.png" COMP;
6       image: "bt_shine.png" COMP;
7       image: "bt_glow.png" COMP;
8       image: "bt_dis_base.png" COMP;
9       image: "bt_dis_hilight.png" COMP;
10    }
11    script {
12       public menu_text_visible; //0:hide (default), 1:visible
13       public menu_disable; //0:enable, 1:disable
14    }
15    parts {
16       part { name: "item_image";
17          mouse_events: 1;
18          description { state: "default" 0.0;
19             color: 255 255 255 0;
20             image {
21                normal: "bt_base2.png";
22                border: 7 7 7 7;
23             }
24             image.middle: SOLID;
25          }
26          description { state: "visible" 0.0;
27             inherit: "default" 0.0;
28             color: 255 255 255 255;
29          }
30          description { state: "clicked" 0.0;
31             inherit: "default" 0.0;
32             inherit: "visible" 0.0;
33             image.normal: "bt_base1.png";
34             image.middle: SOLID;
35          }
36          description { state: "disabled" 0.0;
37             inherit:  "default" 0.0;
38          }
39       }
40       part { name: "item_image_disabled";
41          mouse_events: 1;
42          description { state: "default" 0.0;
43             color: 255 255 255 0;
44             image {
45                normal: "bt_dis_base.png";
46                border: 4 4 4 4;
47             }
48             image.middle: SOLID;
49          }
50          description { state: "disabled" 0.0;
51             inherit:  "default" 0.0;
52             color: 255 255 255 255;
53          }
54       }
55       part { name: "elm.swallow.content";
56          type: SWALLOW;
57          description { state: "default" 0.0;
58             fixed: 1 0;
59             visible: 1;
60             align: 0.0 0.5;
61             rel1.offset: 4 4;
62             rel2.offset: 3 -5;
63             rel2.relative: 0.0 1.0;
64             aspect: 1.0 1.0;
65             aspect_preference: VERTICAL;
66             rel2.offset: 4 -5;
67          }
68       }
69       part {
70          name:          "elm.text";
71          type:          TEXT;
72          mouse_events:  0;
73          scale: 1;
74          description { state: "default" 0.0;
75             visible: 0;
76             rel1.to_x: "elm.swallow.content";
77             rel1.relative: 1.0 0.0;
78             rel1.offset: 5 7;
79             rel2.offset: -10 -8;
80             color: 0 0 0 255;
81             text {
82                font:     "Sans,Edje-Vera";
83                size:     10;
84                min:      1 1;
85                align:    0.0 0.5;
86                text_class: "menu_item";
87             }
88          }
89          description { state: "visible" 0.0;
90             inherit: "default" 0.0;
91             visible: 1;
92             text.min: 1 1;
93          }
94          description { state: "selected" 0.0;
95             inherit: "default" 0.0;
96             inherit: "visible" 0.0;
97             color: 254 254 254 255;
98          }
99          description { state: "disabled" 0.0;
100             inherit: "default" 0.0;
101             color: 0 0 0 128;
102          }
103          description { state: "disabled_visible" 0.0;
104             inherit: "default" 0.0;
105             inherit: "visible" 0.0;
106             color: 0 0 0 128;
107          }
108       }
109       part {          name: "over1";
110          mouse_events: 0;
111          description { state: "default" 0.0;
112             color: 255 255 255 0;
113             rel2.relative: 1.0 0.5;
114             image {
115                normal: "bt_hilight.png";
116                border: 7 7 7 0;
117             }
118          }
119          description { state: "visible" 0.0;
120             inherit:  "default" 0.0;
121             color: 255 255 255 255;
122          }
123          description { state: "disabled" 0.0;
124             inherit:  "default" 0.0;
125          }
126       }
127       part {          name: "over_disabled";
128          mouse_events: 0;
129          description { state: "default" 0.0;
130             color: 255 255 255 0;
131             rel2.relative: 1.0 0.5;
132             image {
133                normal: "bt_dis_hilight.png";
134                border: 4 4 4 0;
135             }
136          }
137          description { state: "disabled" 0.0;
138             inherit:  "default" 0.0;
139             color: 255 255 255 255;
140          }
141       }
142       part { name: "over2";
143          mouse_events: 1;
144          repeat_events: 1;
145          ignore_flags: ON_HOLD;
146          description { state: "default" 0.0;
147             image {
148                normal: "bt_shine.png";
149                border: 7 7 7 7;
150             }
151          }
152          description { state: "disabled" 0.0;
153             inherit:  "default" 0.0;
154             visible: 0;
155          }
156       }
157       part { name: "over3";
158          mouse_events: 1;
159          repeat_events: 1;
160          description { state: "default" 0.0;
161             color: 255 255 255 0;
162             image {
163                normal: "bt_glow.png";
164                border: 12 12 12 12;
165             }
166             fill.smooth : 0;
167          }
168          description { state: "clicked" 0.0;
169             inherit:  "default" 0.0;
170             visible: 1;
171             color: 255 255 255 255;
172          }
173       }
174       part { name: "disabler";
175          type: RECT;
176          description { state: "default" 0.0;
177             color: 0 0 0 0;
178             visible: 0;
179          }
180          description { state: "disabled" 0.0;
181             inherit: "default" 0.0;
182             visible: 1;
183          }
184       }
185    }
186    programs {
187         //
188       program {
189          name:   "item_mouse_in";
190          signal: "mouse,in";
191          source: "over2";
192          action: SIGNAL_EMIT "elm,action,activate" "";
193          after: "item_mouse_in_2";
194          after: "item_mouse_in_3";
195       }
196       program {
197          name:   "item_mouse_in_2";
198          transition: DECELERATE 0.5;
199          script {
200             new v, d;
201             v = get_int(menu_text_visible);
202             d = get_int(menu_disable);
203
204             if (v==1 && d==0)
205             run_program(PROGRAM:"selected_text");
206          }
207       }
208       program {
209          name:   "item_mouse_in_3";
210          action : STATE_SET "visible" 0.0;
211          target: "item_image";
212          target: "over1";
213          transition: DECELERATE 0.5;
214       }
215       program {
216          name:   "selected_text";
217          action: STATE_SET "selected" 0.0;
218          target: "elm.text";
219          transition: DECELERATE 0.5;
220       }
221       //
222
223       //
224       program {
225          name:   "item_mouse_out";
226          signal: "mouse,out";
227          source: "over2";
228          action: SIGNAL_EMIT "elm,action,inactivate" "";
229          after: "item_mouse_out_2";
230          after: "item_mouse_out_3";
231       }
232       program {
233          name:   "item_mouse_out_2";
234          transition: DECELERATE 0.5;
235          script {
236             new v, d;
237             v = get_int(menu_text_visible);
238             d = get_int(menu_disable);
239
240             if (v==1 && d==0)
241             run_program(PROGRAM:"visible_text");
242          }
243       }
244       program {
245          name:   "item_mouse_out_3";
246          action: STATE_SET "default" 0.0;
247          target: "item_image";
248          target: "over1";
249          transition: DECELERATE 0.5;
250       }
251       program {
252          name:   "visible_text";
253          action: STATE_SET "visible" 0.0;
254          target: "elm.text";
255          transition: DECELERATE 0.5;
256       }
257       //
258
259       program {
260          name:   "item_unclick";
261          signal: "mouse,up,1";
262          source: "over2";
263          action: STATE_SET "visible" 0.0;
264          target: "item_image";
265       }
266       program {
267          name:   "item_click2";
268          signal: "mouse,down,1";
269          source: "over3";
270          action: STATE_SET "clicked" 0.0;
271          target: "over3";
272       }
273       program {
274          name:   "item_unclick2";
275          signal: "mouse,up,1";
276          source: "over3";
277          action: STATE_SET "default" 0.0;
278          transition: DECELERATE 0.5;
279          target: "over3";
280       }
281       program {
282          name:   "item_unclick3";
283          signal: "mouse,up,1";
284          source: "over2";
285          action: SIGNAL_EMIT "elm,action,click" "";
286       }
287       program { name: "text_show";
288          signal: "elm,state,text,visible";
289          source: "elm";
290          script {
291             set_int(menu_text_visible, 1);
292             set_state(PART:"elm.text", "visible", 0.0);
293          }
294       }
295       program { name: "text_hide";
296          signal: "elm,state,text,hidden";
297          source: "elm";
298          script {
299             set_int(menu_text_visible, 0);
300             set_state(PART:"elm.text", "default", 0.0);
301          }
302       }
303       program { name: "disable";
304          signal: "elm,state,disabled";
305          source: "elm";
306          action: STATE_SET "disabled" 0.0;
307          target: "item_image";
308          target: "item_image_disabled";
309          target: "over1";
310          target: "over2";
311          target: "over_disabled";
312          target: "disabler";
313          after: "disable_text";
314       }
315       program { name: "disable_text";
316          script {
317             new v;
318             v = get_int(menu_text_visible);
319             if (v==1)
320             set_state(PART:"elm.text", "disabled_visible", 0.0);
321             else if (v==0)
322             set_state(PART:"elm.text", "disabled", 0.0);
323             set_int(menu_disable, 1);
324          }
325       }
326       program { name: "item_select";
327          signal: "elm,state,selected";
328          source: "elm";
329          after: "item_mouse_in_2";
330          after: "item_mouse_in_3";
331       }
332       program { name: "item_unselect";
333          signal: "elm,state,unselected";
334          source: "elm";
335          after: "item_mouse_out_2";
336          after: "item_mouse_out_3";
337       }
338       program { name: "enable";
339          signal: "elm,state,enabled";
340          source: "elm";
341          action: STATE_SET "default" 0.0;
342          target: "item_image";
343          target: "item_image_disabled";
344          target: "over1";
345          target: "over2";
346          target: "over_disabled";
347          target: "disabler";
348          after: "enable_text";
349       }
350       program { name: "enable_text";
351          script {
352             new v;
353             v = get_int(menu_text_visible);
354             if (v==1)
355             set_state(PART:"elm.text", "visible", 0.0);
356             else  if (v==0)
357             set_state(PART:"elm.text", "default", 0.0);
358             set_int(menu_disable, 0);
359          }
360       }
361    }
362 }
363
364 group { name: "elm/menu/item_with_submenu/default";
365    images {
366       image: "bt_base1.png" COMP;
367       image: "bt_base2.png" COMP;
368       image: "bt_hilight.png" COMP;
369       image: "bt_shine.png" COMP;
370       image: "bt_glow.png" COMP;
371       image: "bt_dis_base.png" COMP;
372       image: "bt_dis_hilight.png" COMP;
373       image: "arrow_right.png" COMP;
374       image: "arrow_left.png" COMP;
375    }
376    script {
377       public menu_text_visible; //0:hide (default), 1:visible
378       public menu_disable; //0:enable, 1:disable
379    }
380    parts {
381       part { name: "item_image";
382          mouse_events: 1;
383          description { state: "default" 0.0;
384             color: 255 255 255 0;
385             image {
386                normal: "bt_base2.png";
387                border: 7 7 7 7;
388             }
389             image.middle: SOLID;
390          }
391          description { state: "visible" 0.0;
392             inherit: "default" 0.0;
393             color: 255 255 255 255;
394          }
395          description { state: "clicked" 0.0;
396             inherit: "default" 0.0;
397             inherit: "visible" 0.0;
398             image.normal: "bt_base1.png";
399             image.middle: SOLID;
400          }
401          description { state: "disabled" 0.0;
402             inherit:  "default" 0.0;
403          }
404       }
405       part { name: "item_image_disabled";
406          mouse_events: 1;
407          description { state: "default" 0.0;
408             color: 255 255 255 0;
409             image {
410                normal: "bt_dis_base.png";
411                border: 4 4 4 4;
412             }
413             image.middle: SOLID;
414          }
415          description { state: "disabled" 0.0;
416             inherit:  "default" 0.0;
417             color: 255 255 255 255;
418          }
419       }
420       part { name: "arrow";
421          mouse_events: 1;
422          description { state: "default" 0.0;
423             color: 255 255 255 255;
424             align: 1.0 0.5;
425             aspect: 1 1;
426             aspect_preference: BOTH;
427             image {
428                normal: "arrow_right.png";
429             }
430          }
431          description { state: "rtl" 0.0;
432             inherit: "default" 0.0;
433             image.normal: "arrow_left.png";
434          }
435       }
436       part { name: "elm.swallow.content";
437          type: SWALLOW;
438          description { state: "default" 0.0;
439             fixed: 1 0;
440             visible: 1;
441             align: 0.0 0.5;
442             rel1.offset: 4 4;
443             rel2.offset: 3 -5;
444             rel2.relative: 0.0 1.0;
445             aspect: 1.0 1.0;
446             aspect_preference: VERTICAL;
447             rel2.offset: 4 -5;
448          }
449       }
450       part {
451          name:          "elm.text";
452          type:          TEXT;
453          mouse_events:  0;
454          scale: 1;
455          description { state: "default" 0.0;
456             visible: 0;
457             rel1.to_x: "elm.swallow.content";
458             rel1.relative: 1.0 0.0;
459             rel1.offset: 5 7;
460             rel2.offset: -10 -8;
461             color: 0 0 0 255;
462             text {
463                font:     "Sans,Edje-Vera";
464                size:     10;
465                min:      1 1;
466                align:    0.0 0.5;
467                text_class: "menu_item";
468             }
469          }
470          description { state: "visible" 0.0;
471             inherit: "default" 0.0;
472             visible: 1;
473             text.min: 1 1;
474          }
475          description { state: "selected" 0.0;
476             inherit: "default" 0.0;
477             inherit: "visible" 0.0;
478             color: 254 254 254 255;
479          }
480          description { state: "disabled" 0.0;
481             inherit: "default" 0.0;
482             color: 0 0 0 128;
483          }
484          description { state: "disabled_visible" 0.0;
485             inherit: "default" 0.0;
486             inherit: "visible" 0.0;
487             color: 0 0 0 128;
488          }
489       }
490       part {          name: "over1";
491          mouse_events: 0;
492          description { state: "default" 0.0;
493             color: 255 255 255 0;
494             rel2.relative: 1.0 0.5;
495             image {
496                normal: "bt_hilight.png";
497                border: 7 7 7 0;
498             }
499          }
500          description { state: "visible" 0.0;
501             inherit:  "default" 0.0;
502             color: 255 255 255 255;
503          }
504          description { state: "disabled" 0.0;
505             inherit:  "default" 0.0;
506          }
507       }
508       part { name: "over_disabled";
509          mouse_events: 0;
510          description { state: "default" 0.0;
511             color: 255 255 255 0;
512             rel2.relative: 1.0 0.5;
513             image {
514                normal: "bt_dis_hilight.png";
515                border: 4 4 4 0;
516             }
517          }
518          description { state: "disabled" 0.0;
519             inherit:  "default" 0.0;
520             color: 255 255 255 255;
521          }
522       }
523       part { name: "over2";
524          mouse_events: 1;
525          repeat_events: 1;
526          ignore_flags: ON_HOLD;
527          description { state: "default" 0.0;
528             image {
529                normal: "bt_shine.png";
530                border: 7 7 7 7;
531             }
532          }
533          description { state: "disabled" 0.0;
534             inherit:  "default" 0.0;
535             visible: 0;
536          }
537       }
538       part { name: "over3";
539          mouse_events: 1;
540          repeat_events: 1;
541          description { state: "default" 0.0;
542             color: 255 255 255 0;
543             image {
544                normal: "bt_glow.png";
545                border: 12 12 12 12;
546             }
547             fill.smooth : 0;
548          }
549          description { state: "clicked" 0.0;
550             inherit:  "default" 0.0;
551             visible: 1;
552             color: 255 255 255 255;
553          }
554       }
555       part { name: "disabler";
556          type: RECT;
557          description { state: "default" 0.0;
558             color: 0 0 0 0;
559             visible: 0;
560          }
561          description { state: "disabled" 0.0;
562             inherit: "default" 0.0;
563             visible: 1;
564          }
565       }
566    }
567    programs {
568         //
569       program {
570          name:   "item_mouse_in";
571          signal: "mouse,in";
572          source: "over2";
573          action: SIGNAL_EMIT "elm,action,activate" "";
574          after: "item_mouse_in_2";
575          after: "item_mouse_in_3";
576       }
577       program {
578          name:   "item_mouse_in_2";
579          transition: DECELERATE 0.5;
580          script {
581             new v, d;
582             v = get_int(menu_text_visible);
583             d = get_int(menu_disable);
584
585             if (v==1 && d==0)
586             run_program(PROGRAM:"selected_text");
587          }
588       }
589       program {
590          name:   "item_mouse_in_3";
591          action : STATE_SET "visible" 0.0;
592          target: "item_image";
593          target: "over1";
594          transition: DECELERATE 0.5;
595       }
596       program {
597          name:   "selected_text";
598          action: STATE_SET "selected" 0.0;
599          target: "elm.text";
600          transition: DECELERATE 0.5;
601       }
602       //
603
604       //
605       program {
606          name:   "item_mouse_out";
607          signal: "mouse,out";
608          source: "over2";
609          after: "item_mouse_out_2";
610          after: "item_mouse_out_3";
611       }
612       program {
613          name:   "item_mouse_out_2";
614          transition: DECELERATE 0.5;
615          script {
616             new v, d;
617             v = get_int(menu_text_visible);
618             d = get_int(menu_disable);
619
620             if (v==1 && d==0)
621             run_program(PROGRAM:"visible_text");
622          }
623       }
624       program {
625          name:   "item_mouse_out_3";
626          action: STATE_SET "default" 0.0;
627          target: "item_image";
628          target: "over1";
629          transition: DECELERATE 0.5;
630       }
631       program {
632          name:   "visible_text";
633          action: STATE_SET "visible" 0.0;
634          target: "elm.text";
635          transition: DECELERATE 0.5;
636       }
637       //
638
639       program {
640          name:   "item_unclick";
641          signal: "mouse,up,1";
642          source: "over2";
643          action: STATE_SET "visible" 0.0;
644          target: "item_image";
645       }
646       program {
647          name:   "item_click2";
648          signal: "mouse,down,1";
649          source: "over3";
650          action: STATE_SET "clicked" 0.0;
651          target: "over3";
652       }
653       program {
654          name:   "item_unclick2";
655          signal: "mouse,up,1";
656          source: "over3";
657          action: STATE_SET "default" 0.0;
658          transition: DECELERATE 0.5;
659          target: "over3";
660       }
661       program {
662          name:   "item_unclick3";
663          signal: "mouse,up,1";
664          source: "over2";
665          action: SIGNAL_EMIT "elm,action,click" "";
666       }
667       program {
668          name:   "menu_open";
669          signal: "mouse,in";
670          source: "over2";
671          action: SIGNAL_EMIT "elm,action,open" "";
672       }
673       program { name: "text_show";
674          signal: "elm,state,text,visible";
675          source: "elm";
676          script {
677             set_int(menu_text_visible, 1);
678             set_state(PART:"elm.text", "visible", 0.0);
679          }
680       }
681       program { name: "text_hide";
682          signal: "elm,state,text,hidden";
683          source: "elm";
684          script {
685             set_int(menu_text_visible, 0);
686             set_state(PART:"elm.text", "default", 0.0);
687          }
688       }
689       program { name: "disable";
690          signal: "elm,state,disabled";
691          source: "elm";
692          action: STATE_SET "disabled" 0.0;
693          target: "item_image";
694          target: "item_image_disabled";
695          target: "over1";
696          target: "over2";
697          target: "over_disabled";
698          target: "disabler";
699          after: "disable_text";
700       }
701       program { name: "disable_text";
702          script {
703             new st[31];
704             new Float:vl;
705             get_state(PART:"elm.text", st, 30, vl);
706             if (!strcmp(st, "visible"))
707             set_state(PART:"elm.text", "disabled_visible", 0.0);
708             else if (!strcmp(st, "default"))
709             set_state(PART:"elm.text", "disabled", 0.0);
710          }
711       }
712       program { name: "enable";
713          signal: "elm,state,enabled";
714          source: "elm";
715          action: STATE_SET "default" 0.0;
716          target: "item_image";
717          target: "item_image_disabled";
718          target: "over1";
719          target: "over2";
720          target: "over_disabled";
721          target: "disabler";
722          after: "enable_text";
723       }
724       program { name: "enable_text";
725          script {
726             new v;
727             v = get_int(menu_text_visible);
728             if (v==1)
729             set_state(PART:"elm.text", "visible", 0.0);
730             else  if (v==0)
731             set_state(PART:"elm.text", "default", 0.0);
732             set_int(menu_disable, 0);
733          }
734       }
735       program { name: "to_rtl";
736          signal: "edje,state,rtl";
737          source: "edje";
738          action: STATE_SET "rtl" 0.0;
739          target: "arrow";
740       }
741       program { name: "to_ltr";
742          signal: "edje,state,ltr";
743          source: "edje";
744          action: STATE_SET "default" 0.0;
745          target: "arrow";
746       }
747    }
748 }
749
750 group { name: "elm/menu/separator/default";
751    images {
752       image: "separator_h.png" COMP;
753    }
754    parts {
755       part { name: "separator"; // separator group
756          description { state: "default" 0.0;
757             min: 2 2;
758             rel1.offset: 4 4;
759             rel2.offset: -5 -5;
760             image {
761                normal: "separator_h.png";
762             }
763             fill {
764                smooth: 0;
765             }
766          }
767       }
768    }
769 }