update for beta release
[framework/uifw/e17.git] / src / modules / conf_randr / e-module-conf_randr.edc
1 #define BORDERSIZE 1
2 #define SUGGESTION_TIMEOUT 2.5
3
4 images {
5    image: "icon.png" COMP;
6    image: "video-display.png" COMP;
7    image: "display.png" COMP;
8    image: "display-glass-shine.png" COMP;
9 }
10
11 data {
12    item: "disabled_output_width" "1024";
13    item: "disabled_output_height" "768";
14 }
15
16 collections {
17
18    // The icon used in the settings dialog
19    group {
20       name: "icon";
21       parts {
22          part {
23             name: "image";
24             mouse_events: 0;
25             description {
26                state: "default" 0.0;
27                aspect: 1.0 1.0;
28                aspect_preference: BOTH;
29                image.normal: "icon.png";
30             }
31          }
32       }
33    }
34
35    /**********************************************/
36    /*********Subdialog - Arrangement**************/
37    /**********************************************/
38
39    //The graphical representation of a single monitor, including its decorations
40    group {
41       name: "e/conf/randr/dialog/subdialog/arrangement/output";
42
43       styles {
44          style {
45             name: "display_name_text";
46             base: "font=Sans:style=Bold font_size=10 text_class=tb_plain align=center valign=center color=#fff style=soft_shadow shadow_color=#0000001f wrap=word";
47             tag:  "br" "\n";
48             tag:  "hilight" "+ font=Sans:style=Bold text_class=tb_light";
49          }
50       }
51
52
53       parts {
54
55          part {
56              name: "display";
57              type: IMAGE;
58              mouse_events: 0;
59
60              description {
61                 state: "default" 0.0;
62                 image.normal: "display.png";
63                 rel1.relative: 0.0 0.0;
64                 rel2.relative: 1.0 1.0;
65              }
66          }
67
68          part {
69             name: "e.swallow.content";
70             type: SWALLOW; // background of CRTC's zone
71
72             description {
73                state: "default" 0.0;
74                aspect_preference: BOTH;
75                color: 255 255 255 255;
76                rel1 {
77                   to: "display";
78                   relative: 0.047379 0.049303;
79                }
80                rel2 {
81                   to: "display";
82                   //relative: 0.97 0.657804;
83                   relative: 0.975 0.66;
84                }
85             }
86
87             description {
88                state: "disabled" 0.0;
89                inherit: "default" 0.0;
90                color: 255 255 255 128;
91             }
92          }
93
94          part {
95             name: "output_selected_frame_clip";
96             type: RECT;
97             mouse_events: 0;
98
99             description {
100                state: "default" 0.0;
101                color: 255 255 255 0;
102
103                rel1.relative: 0.0 0.0;
104                rel2.relative: 1.0 1.0;
105             }
106             description {
107                state: "selected" 0.0;
108                inherit: "default" 0.0;
109                color: 255 255 255 255;
110             }
111          }
112
113          part {
114             name: "output_selected_frame_border_top";
115             type: RECT;
116             clip_to: "output_selected_frame_clip";
117             mouse_events: 0;
118
119             description {
120                state: "default" 0.0;
121                color: 128 128 128 255;
122                min: 0 2;
123                fixed: 0 1;
124                align: 0.5 0.0;
125
126                rel1 {
127                   to: "output_selected_frame_clip";
128                   relative: 0.0 0.0;
129                }
130                rel2 {
131                   to: "output_selected_frame_clip";
132                   relative: 1.0 0.0;
133                   offset: 0 BORDERSIZE;
134                }
135             }
136          }
137
138          part {
139             name: "output_selected_frame_border_right";
140             type: RECT;
141             clip_to: "output_selected_frame_clip";
142             mouse_events: 0;
143
144             description {
145                state: "default" 0.0;
146                color: 128 128 128 255;
147                min: 1 0;
148                fixed: 1 0;
149                align: 1.0 0.5;
150
151                rel1 {
152                   to_x: "output_selected_frame_clip";
153                   to_y: "output_selected_frame_border_top";
154                   relative: 1.0 1.0;
155                   offset: (-BORDERSIZE-1) 0;
156                }
157                rel2 {
158                   to_x: "output_selected_frame_clip";
159                   to_y: "output_selected_frame_border_bottom";
160                   relative: 1.0 0.0;
161                }
162             }
163          }
164
165          part {
166             name: "output_selected_frame_border_bottom";
167             type: RECT;
168             clip_to: "output_selected_frame_clip";
169             mouse_events: 0;
170
171             description {
172                state: "default" 0.0;
173                color: 128 128 128 255;
174                min: 0 2;
175                fixed: 0 1;
176                align: 0.5 1.0;
177
178                rel1 {
179                   to: "output_selected_frame_clip";
180                   relative: 0.0 1.0;
181                   offset: 0 (-BORDERSIZE-1);
182                }
183                rel2 {
184                   to: "output_selected_frame_clip";
185                   relative: 1.0 1.0;
186                }
187             }
188          }
189
190          part {
191             name: "output_selected_frame_border_left";
192             type: RECT;
193             clip_to: "output_selected_frame_clip";
194             mouse_events: 0;
195
196             description {
197                state: "default" 0.0;
198                color: 128 128 128 255;
199                min: 1 0;
200                fixed: 1 0;
201                align: 0.0 0.5;
202
203                rel1 {
204                   to_x: "output_selected_frame_clip";
205                   to_y: "output_selected_frame_border_top";
206                   relative: 0.0 1.0;
207                }
208                rel2 {
209                   to_x: "output_selected_frame_clip";
210                   to_y: "output_selected_frame_border_bottom";
211                   relative: 0.0 0.0;
212                   offset: BORDERSIZE 0;
213                }
214             }
215          }
216
217          part {
218             name: "output_selected_frm_inside";
219             type: RECT;
220             clip_to: "output_selected_frame_clip";
221             mouse_events: 0;
222
223             description {
224                state: "default" 0.0;
225                color: 255 255 255 120;
226
227                rel1 {
228                   to: "output_selected_frame_clip";
229                   offset: BORDERSIZE BORDERSIZE;
230                }
231                rel2 {
232                   to: "output_selected_frame_clip";
233                   offset: -BORDERSIZE -BORDERSIZE;
234                }
235             }
236          }
237
238          part {
239             name: "output_txt_bg";
240             type: RECT;
241                   //clip_to: "output_txt_clip";
242             mouse_events: 0;
243
244             description {
245                state: "default" 0.0;
246                color: 255 255 255 128;
247                align: 0.5 0.5;
248
249                rel1 {
250                   to: "output_txt";
251                   relative: 0.0 0.0;
252                   offset: -5 -5;
253                }
254                rel2 {
255                   to: "output_txt";
256                   relative: 1.0 1.0;
257                   offset: 5 5;
258                }
259             }
260             description {
261                state: "selected" 0.0;
262                inherit: "default" 0.0;
263                color: 0 0 0 255;
264             }
265          }
266
267          part {
268             name: "output_txt";
269             type: TEXTBLOCK;
270                   //clip_to: "output_txt_clip";
271             mouse_events: 0;
272
273             description {
274                align: 0.5 0.5;
275                state: "default" 0.0;
276                color: 0 0 0 255;
277                       // define part coordinates:
278                       //rel1.to: "output_txt_clip";
279                       //rel2.to: "output_txt_clip";
280                rel1.to: "e.swallow.content";
281                rel2.to: "e.swallow.content";
282
283                text {
284                   style: "display_name_text";
285                   text: "output name";
286                   min: 1.0 1.0;
287                   max: 1.0 1.0;
288                }
289             }
290             description {
291                state: "selected" 0.0;
292                inherit: "default" 0.0;
293                color: 255 255 255 255;
294             }
295          }
296
297          part {
298             name: "selected_toggle_on";
299             type: RECT;
300             mouse_events: 1;
301
302             description {
303                state: "default" 0.0;
304                color: 0 0 0 0;
305                visible: 1;
306
307                rel1 {
308                   to: "e.swallow.content";
309                   relative: 0.0 0.0;
310                }
311                rel2 {
312                   to: "e.swallow.content";
313                   relative: 1.0 1.0;
314                }
315             }
316
317             description {
318                state: "disable" 0.0;
319                inherit: "default" 0.0;
320                visible: 0;
321             }
322          }
323
324          part {
325             name: "selected_toggle_off";
326             type: RECT;
327             mouse_events: 1;
328
329             description {
330                state: "default" 0.0;
331                color: 0 0 0 0;
332                visible: 0;
333
334                rel1 {
335                   to: "selected_toggle_on";
336                   relative: 0.0 0.0;
337                }
338                rel2 {
339                   to: "selected_toggle_on";
340                   relative: 1.0 1.0;
341                }
342             }
343
344             description {
345                state: "disable" 0.0;
346                inherit: "default" 0.0;
347                visible: 1;
348             }
349          }
350
351          part {
352              name: "display-glass-shine";
353              type: IMAGE;
354
355              description {
356                 state: "default" 0.0;
357                 image.normal: "display-glass-shine.png";
358              }
359          }
360
361          programs {
362             program {
363                name: "highlight";
364                signal: "mouse,down,1";
365                source: "selected_toggle_on";
366
367                action: STATE_SET "selected" 0.0;
368                transition: LINEAR 0.1;
369                            //target: "e.swallow.content";
370                            //target: "output_selected_clip";
371                target: "output_txt";
372                target: "output_txt_bg";
373                target: "output_selected_frame_clip";
374             }
375
376             program {
377                name: "normal";
378                signal: "mouse,clicked,1";
379                source: "selected_toggle_off";
380
381                action: STATE_SET "default" 0.0;
382                transition: LINEAR 0.1;
383                            //target: "e.swallow.content";
384                            //target: "output_selected_clip";
385                target: "output_txt";
386                target: "output_txt_bg";
387                target: "output_selected_frame_clip";
388             }
389
390             program {
391                name: "selected_toggle_off_on";
392                signal: "mouse,clicked,1";
393                source: "selected_toggle_on";
394                action: STATE_SET "disable" 1.0;
395                target: "selected_toggle_on";
396                target: "selected_toggle_off";
397             }
398
399             program {
400                name: "selected_toggle_on_off";
401                signal: "mouse,clicked,1";
402                source: "selected_toggle_off";
403                action: STATE_SET "default" 1.0;
404                target: "selected_toggle_on";
405                target: "selected_toggle_off";
406             }
407
408             program {
409                name: "emit_highlight";
410                signal: "select";
411                source: "e";
412                after: "highlight";
413             }
414
415             program {
416                name: "emit_normal";
417                signal: "deselect";
418                source: "e";
419                after: "normal";
420             }
421
422             program {
423                name: "disable";
424                signal: "disabled";
425                source: "e";
426                action: STATE_SET "disabled" 0.0;
427                target: "e.swallow.content";
428             }
429
430             program {
431                name: "enable";
432                signal: "enabled";
433                source: "e";
434                action: STATE_SET "default" 0.0;
435                target: "e.swallow.content";
436             }
437
438             program {
439                name: "init";
440                after: "normal";
441             }
442          }
443       }
444    }
445
446    //This group describes the look of the suggestion entity used, when a monitor
447    //representation is dragged. Its size matches the size of the monitor
448    //dragged.
449    group{
450       name: "e/conf/randr/dialog/subdialog/arrangement/suggestion";
451       data {
452          item: "distance_min" "20";
453       }
454
455       /*
456       script {
457          public fade_out_timer_id = 0;
458
459          public suggestion_fade_out ()
460          {
461             cancel_timer(get_int(fade_out_timer_id));
462             run_program(PROGRAM:"hide");
463          }
464       }
465           */
466
467       parts {
468          part {
469             name: "shape_clip";
470             type: RECT;
471             description {
472                state: "default" 0.0;
473                color: 255 255 255 0;
474                rel1.relative: 0.0 0.0;
475                rel2.relative: 1.0 1.0;
476             }
477             description {
478                state: "visible" 0.0;
479                inherit: "default" 0.0;
480                color: 255 255 255 255;
481             }
482          }
483          part {
484             name: "shape";
485             type: RECT;
486             mouse_events: 0;
487             clip_to: "shape_clip";
488             description {
489                state: "default" 0.0;
490                color: 0 0 0 100;
491                rel1.to: "shape_clip";
492                rel2.to: "shape_clip";
493             }
494          }
495       }
496       programs {
497          program {
498             name: "show_transition";
499             signal: "show";
500             source: "e";
501             action: STATE_SET "visible" 0.0;
502             target: "shape_clip";
503             transition: LINEAR 0.2;
504          }
505          /*
506          program {
507             name: "set_timeout";
508             signal: "show";
509             source: "e";
510             script {
511                new i = timer(SUGGESTION_TIMEOUT, "suggestion_fade_out", 0);
512                set_int(fade_out_timer_id, i);
513             }
514          }
515          */
516          program {
517             name: "hide";
518             signal: "hide";
519             source: "e";
520             action: STATE_SET "default" 0.0;
521             target: "shape_clip";
522             transition: LINEAR 0.2;
523          }
524       }
525    }
526
527    /**********************************************/
528    /************Subdialog - Policies**************/
529    /**********************************************/
530    group{
531       name: "e/conf/randr/dialog/subdialog/policies";
532       parts {
533          part {
534             name: "current_displays_setup/clipper";
535             type: RECT;
536             mouse_events: 0;
537             description {
538                state: "default" 0.0;
539                color: 0 0 0 0;
540                rel1.relative: 0.25 0.25;
541                rel2.relative: 0.75 0.75;
542             }
543             description {
544                state: "above" 0.0;
545                inherit: "default" 0.0;
546                color: 255 255 255 255;
547                rel1.relative: 0.25 0.5;
548                rel2.relative: 0.75 1.0;
549             }
550             description {
551                state: "right" 0.0;
552                inherit: "default" 0.0;
553                color: 255 255 255 255;
554                rel1.relative: 0.0 0.25;
555                rel2.relative: 0.5 0.75;
556             }
557             description {
558                state: "below" 0.0;
559                inherit: "default" 0.0;
560                color: 255 255 255 255;
561                rel1.relative: 0.25 0.0;
562                rel2.relative: 0.75 0.5;
563             }
564             description {
565                state: "left" 0.0;
566                inherit: "default" 0.0;
567                color: 255 255 255 255;
568                rel1.relative: 0.5 0.25;
569                rel2.relative: 1.0 0.75;
570             }
571             description {
572                state: "clone" 0.0;
573                inherit: "default" 0.0;
574                color: 255 255 255 255;
575             }
576             description {
577                state: "none" 0.0;
578                inherit: "default" 0.0;
579                color: 255 255 255 255;
580             }
581          }
582          part {
583             name: "current_displays_setup.swallow.content";
584             type: SWALLOW;
585             clip_to: "current_displays_setup/clipper";
586             description {
587                state: "default" 0.0;
588                rel1.to: "current_displays_setup/clipper";
589                rel2.to: "current_displays_setup/clipper";
590             }
591          }
592          part {
593             name: "new_display/clipper";
594             type: RECT;
595             mouse_events: 0;
596             description {
597                state: "default" 0.0;
598                color: 0 0 0 0;
599                rel1.relative: 0.25 0.25;
600                rel2.relative: 0.75 0.75;
601             }
602             description {
603                state: "above" 0.0;
604                inherit: "default" 0.0;
605                color: 0 0 0 0;
606                rel1.relative: 0.25 0.0;
607                rel2.relative: 0.75 0.5;
608             }
609             description {
610                state: "above_visible" 0.0;
611                inherit: "above" 0.0;
612                color: 255 255 255 255;
613             }
614             description {
615                state: "right" 0.0;
616                inherit: "default" 0.0;
617                color: 0 0 0 0;
618                rel1.relative: 0.5 0.25;
619                rel2.relative: 1.0 0.75;
620             }
621             description {
622                state: "right_visible" 0.0;
623                inherit: "right" 0.0;
624                color: 255 255 255 255;
625             }
626             description {
627                state: "below" 0.0;
628                inherit: "default" 0.0;
629                color: 0 0 0 0;
630                rel1.relative: 0.25 0.5;
631                rel2.relative: 0.75 1.0;
632             }
633             description {
634                state: "below_visible" 0.0;
635                inherit: "below" 0.0;
636                color: 255 255 255 255;
637             }
638             description {
639                state: "left" 0.0;
640                inherit: "default" 0.0;
641                color: 0 0 0 0;
642                rel1.relative: 0.0 0.25;
643                rel2.relative: 0.5 0.75;
644             }
645             description {
646                state: "left_visible" 0.0;
647                inherit: "left" 0.0;
648                color: 255 255 255 255;
649             }
650             description {
651                state: "clone" 0.0;
652                inherit: "default" 0.0;
653                color: 0 0 0 0;
654             }
655             description {
656                state: "clone_visible" 0.0;
657                inherit: "clone" 0.0;
658                color: 255 255 255 255;
659             }
660             description {
661                state: "none" 0.0;
662                inherit: "default" 0.0;
663                color: 0 0 0 0;
664             }
665             description {
666                state: "none_visible" 0.0;
667                inherit: "none" 0.0;
668                color: 255 255 255 255;
669             }
670          }
671          part {
672             name: "new_display.swallow.content";
673             type: SWALLOW;
674             clip_to: "new_display/clipper";
675             description {
676                state: "default" 0.0;
677                rel1.to: "new_display/clipper";
678                rel2.to: "new_display/clipper";
679             }
680          }
681       }
682       /*
683        * The signals emitted to the UI are encoded as their corresponding value
684        * in Ecore_X
685        *
686        * Policy                            = Signal emitted
687        * ECORE_X_RANDR_OUTPUT_POLICY_ABOVE = 1
688        * ECORE_X_RANDR_OUTPUT_POLICY_RIGHT = 2
689        * ECORE_X_RANDR_OUTPUT_POLICY_BELOW = 3
690        * ECORE_X_RANDR_OUTPUT_POLICY_LEFT  = 4
691        * ECORE_X_RANDR_OUTPUT_POLICY_CLONE = 5
692        * ECORE_X_RANDR_OUTPUT_POLICY_NONE  = 6
693        */
694       programs {
695          program {
696             name:   "new_display_hide";
697             signal: "conf,randr,dialog,policies,*";
698             source: "e";
699             action: STATE_SET "default" 0.0;
700             target: "new_display/clipper";
701          }
702          program {
703             name:   "current_displays_setup_clipper_above";
704             signal: "conf,randr,dialog,policies,1";
705             source: "e";
706             action: STATE_SET "above" 0.0;
707             target: "current_displays_setup/clipper";
708             target: "new_display/clipper";
709             after: "new_display_above_visible_set";
710             transition: LINEAR 0.5;
711          }
712          program {
713             name:   "new_display_above_visible_set";
714             action: STATE_SET "above_visible" 0.0;
715             target: "new_display/clipper";
716             transition: LINEAR 0.5;
717          }
718          program {
719             name:   "current_displays_setup_clipper_right";
720             signal: "conf,randr,dialog,policies,2";
721             source: "e";
722             action: STATE_SET "right" 0.0;
723             target: "current_displays_setup/clipper";
724             target: "new_display/clipper";
725             after: "new_display_right_visible_set";
726             transition: LINEAR 0.5;
727          }
728          program {
729             name:   "new_display_right_visible_set";
730             action: STATE_SET "right_visible" 0.0;
731             target: "new_display/clipper";
732             transition: LINEAR 0.5;
733          }
734          program {
735             name:   "current_displays_setup_clipper_below";
736             signal: "conf,randr,dialog,policies,3";
737             source: "e";
738             action: STATE_SET "below" 0.0;
739             target: "current_displays_setup/clipper";
740             target: "new_display/clipper";
741             after: "new_display_below_visible_set";
742             transition: LINEAR 0.5;
743          }
744          program {
745             name:   "new_display_below_visible_set";
746             action: STATE_SET "below_visible" 0.0;
747             target: "new_display/clipper";
748             transition: LINEAR 0.5;
749          }
750          program {
751             name:   "current_displays_setup_clipper_left";
752             signal: "conf,randr,dialog,policies,4";
753             source: "e";
754             action: STATE_SET "left" 0.0;
755             target: "current_displays_setup/clipper";
756             target: "new_display/clipper";
757             after: "new_display_left_visible_set";
758             transition: LINEAR 0.5;
759          }
760          program {
761             name:   "new_display_left_visible_set";
762             action: STATE_SET "left_visible" 0.0;
763             target: "new_display/clipper";
764             transition: LINEAR 0.5;
765          }
766          program {
767             name: "current_displays_setup_clipper_clone";
768             signal: "conf,randr,dialog,policies,5";
769             source: "e";
770             action: STATE_SET "clone" 0.0;
771             target: "current_displays_setup/clipper";
772             target: "new_display/clipper";
773             after: "new_display_clone_visible_set";
774             transition: LINEAR 0.5;
775          }
776          program {
777             name:   "new_display_clone_visible_set";
778             action: STATE_SET "clone_visible" 0.0;
779             target: "new_display/clipper";
780             transition: LINEAR 0.5;
781          }
782          program {
783             name:   "current_displays_setup_clipper_none";
784             signal: "conf,randr,dialog,policies,6";
785             source: "e";
786             action: STATE_SET "none" 0.0;
787             target: "current_displays_setup/clipper";
788             target: "new_display/clipper";
789             //after: "new_display_none_visible_set";
790             transition: LINEAR 0.5;
791          }
792          /*
793           * following is an analog program for none, but we don't want to show
794           * it anyway.
795          program {
796             name:   "new_display_none_visible_set";
797             action: STATE_SET "none_visible" 0.0;
798             target: "new_display/clipper";
799             transition: LINEAR 0.5;
800          }
801         */
802       }
803    }
804
805    // Text objects for rotation and reflection
806    group {
807       name: "e/conf/randr/dialog/subdialog/orientation";
808
809       parts {
810          part {
811             name: "clip";
812             type: RECT;
813             mouse_events: 0;
814             description {
815                state: "default" 0.0;
816                rel1.relative: 0.0 0.0;
817                rel2.relative: 1.0 1.0;
818             }
819          }
820          part {
821             name: "display";
822             clip_to: "clip";
823             mouse_events: 0;
824             description {
825                state: "default" 0.0;
826                aspect: 1.0 1.0;
827                aspect_preference: BOTH;
828                image.normal: "video-display.png";
829             }
830          }
831          part {
832             name: "orientation_text";
833             clip_to: "clip";
834             type: TEXT;
835             mouse_events: 0;
836             scale: 1;
837             description {
838                state: "default" 0.0;
839                rel1.relative: 0.0 0.0;
840                rel2.relative: 1.0 0.8;
841                color: 0 0 0 255;
842                text {
843                   //Maybe use some default theme label text style later
844                   text: "Orientation";
845                   font: "Sans:style=Bold";
846                   /* Use the Bold style
847                    * of the Sans font from
848                    * fontconfig */
849                   size: 10;
850                   /* size in pixels - 10 */
851                   min: 0 1;
852                   /* the text will not determine minimum horizontal
853                    * size but WILL determine minimal vertical size
854                    * (thus 0 1 - horiz then vert flags) */
855                   /* align text to top-left of the region
856                    * given */
857                   text_class: "title_bar";
858                   /* text class - so font and size
859                    * can be changed by users */
860                }
861                map {
862                   on: 1;
863                   rotation {
864                      x: 0.0;
865                      y: 0.0;
866                      z: 0.0;
867                   }
868                }
869             }
870             description {
871                state: "rotate" 0.90;
872                inherit: "default" 0.0;
873                map.rotation.z: 270.0;
874             }
875             description {
876                state: "rotate" 0.180;
877                inherit: "default" 0.0;
878                map.rotation.z: 180.0;
879             }
880             description {
881                state: "rotate" 0.270;
882                inherit: "default" 0.0;
883                map.rotation.z: 90.0;
884             }
885             description {
886                state: "reflect_horizontal" 0.0;
887                inherit: "default" 0.0;
888                map.rotation.y: 180.0;
889             }
890             description {
891                state: "reflect_vertical" 0.0;
892                inherit: "default" 0.0;
893                map.rotation.x: 180.0;
894             }
895          }
896       }
897       programs {
898          program {
899             name:   "rot0";
900             signal: "conf,randr,dialog,orientation,current,1";
901             source: "e";
902             action: STATE_SET "default" 0.0;
903             target: "orientation_text";
904             transition: LINEAR 0.5;
905          }
906          program {
907             name:   "rot90";
908             signal: "conf,randr,dialog,orientation,current,2";
909             source: "e";
910             action: STATE_SET "rotate" 0.90;
911             target: "orientation_text";
912             transition: LINEAR 0.5;
913          }
914          program {
915             name:   "rot180";
916             signal: "conf,randr,dialog,orientation,current,4";
917             source: "e";
918             action: STATE_SET "rotate" 0.180;
919             target: "orientation_text";
920             transition: LINEAR 0.5;
921          }
922          program {
923             name:   "rot270";
924             signal: "conf,randr,dialog,orientation,current,8";
925             source: "e";
926             action: STATE_SET "rotate" 0.270;
927             target: "orientation_text";
928             transition: LINEAR 0.5;
929          }
930          program {
931             name:   "ref_x";
932             signal: "conf,randr,dialog,orientation,current,16";
933             source: "e";
934             action: STATE_SET "reflect_horizontal" 0.0;
935             target: "orientation_text";
936             transition: LINEAR 0.5;
937          }
938          program {
939             name:   "ref_y";
940             signal: "conf,randr,dialog,orientation,current,32";
941             source: "e";
942             action: STATE_SET "reflect_vertical" 0.0;
943             target: "orientation_text";
944             transition: LINEAR 0.5;
945          }
946       }
947
948    }
949
950 }