7d26d840c8282b880d8a333e623d58cd58c29f55
[profile/ivi/efl-theme-tizen.git] / themes / widgets / genlist / genlist_macro.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 GENLIST_PART_BASE( param_item_height ) \
20          part { name: "base"; \
21             type: RECT; \
22             repeat_events: 1; \
23             scale: 1; \
24             description { state: "default" 0.0; \
25                min: 0 param_item_height; \
26                color: GENLIST_PART_BG_COLOR_INC; \
27             } \
28          }
29
30 #define GENLIST_PART_BG \
31          part { name: "bg"; \
32             type: RECT; \
33             clip_to: "disclip"; \
34             mouse_events: 0; \
35             description { state: "default" 0.0; \
36                color: GENLIST_PART_BG_COLOR_INC; \
37             } \
38             description { state: "hide" 0.0; \
39                inherit: "default" 0.0; \
40                rel1 { relative: 0.025 0.0; } \
41                rel2 { relative: 1.025 1.0; } \
42             } \
43             description { state: "hide" 0.1;  \
44                inherit: "default" 0.0; \
45                rel1 { relative: 0.13 0.0; } \
46                rel2 { relative: 1.13 1.0; } \
47             } \
48             description { state: "hide" 0.2; \
49                inherit: "default" 0.0; \
50                rel1 { relative: 0.5 0.0; } \
51                rel2 { relative: 1.5 1.0; } \
52             } \
53             description { state: "hide" 0.3; \
54                inherit: "default" 0.0; \
55                rel1 { relative: 1.0 0.0; } \
56                rel2 { relative: 2.0 1.0; } \
57             } \
58          }
59
60 #define GENLIST_PART_BG_IMAGE \
61          part { name: "bg_image"; \
62             type: RECT; \
63             clip_to: "disclip"; \
64             mouse_events: 0; \
65             description { state: "default" 0.0; \
66                color: GENLIST_PART_LIST_BG_COLOR_INC; \
67             } \
68             description { state: "selected" 0.0; \
69                inherit: "default" 0.0; \
70                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
71             } \
72          }
73
74 #define GENLIST_PART_BOTTOM_LINE \
75          part { name: "bottom_line"; \
76             type: RECT; \
77             mouse_events: 0; \
78             description { state: "default" 0.0; \
79                min: 0 1; \
80                fixed: 0 1; \
81                visible: 1; \
82                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
83                rel1 { \
84                   relative: 0.0 1.0; \
85                   offset: 0 -1; \
86                } \
87             } \
88          }
89
90 #define GENLIST_PART_BOTTOM_EFFECT_LINE \
91          part { name: "bottom_line"; \
92             type: RECT; \
93             mouse_events: 0; \
94             description { state: "default" 0.0; \
95                min: 0 1; \
96                fixed: 0 1; \
97                visible: 1; \
98                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
99                rel1 { \
100                   relative: 0.0 1.0; \
101                   offset: 0 -1; \
102                } \
103             } \
104             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
105             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
106          }
107
108 #define GENLIST_PART_PADDING_TOP( param_padding_size ) \
109        part { name: "elm.padding.top"; \
110             type: RECT; \
111             scale: 1; \
112             description { \
113                state: "default" 0.0; \
114                min: 0 param_padding_size; \
115                fixed: 0 1; \
116                visible: 0; \
117                rel2.relative: 1.0 0.0; \
118                align: 0.0 0.0; \
119             } \
120          }
121
122 #define GENLIST_PART_PADDING_TEXT_TOP( param_padding_size ) \
123        part { name: "elm.padding.text.top"; \
124             type: RECT; \
125             scale: 1; \
126             description { \
127                state: "default" 0.0; \
128                min: 0 param_padding_size; \
129                fixed: 0 1; \
130                visible: 0; \
131                rel2.relative: 1.0 0.0; \
132                align: 0.0 0.0; \
133             } \
134          }
135
136 #define GENLIST_PART_PADDING_BOTTOM( param_padding_size ) \
137        part { name: "elm.padding.bottom"; \
138             type: RECT; \
139             scale: 1; \
140             description { state: "default" 0.0; \
141                min: 0 param_padding_size; \
142                fixed: 0 1; \
143                visible: 0; \
144                rel1.relative: 0.0 1.0; \
145                align: 0.0 1.0; \
146             } \
147          }
148
149 #define GENLIST_PART_PADDING_LEFT( param_padding_size ) \
150          part { name: "elm.padding.left"; \
151             type: RECT; \
152             scale: 1; \
153             description { state: "default" 0.0; \
154                min: param_padding_size 0; \
155                fixed: 1 0; \
156                visible: 0; \
157                rel2.relative: 0.0 1.0; \
158                align: 0.0 0.0; \
159             } \
160          }
161
162 #define GENLIST_PART_PADDING_RIGHT( param_padding_size ) \
163        part { name: "elm.padding.right"; \
164             type: RECT; \
165             scale: 1; \
166             description { state: "default" 0.0; \
167                min: param_padding_size 0; \
168                fixed: 1 0; \
169                visible: 0; \
170                rel1.relative: 1.0  0.0; \
171                align: 1.0 0.0; \
172             } \
173          }
174
175 #define GENLIST_PART_DIALOGUE_BASE( param_item_height ) \
176          part { name: "base"; \
177             type: RECT; \
178             clip_to: "disclip"; \
179             repeat_events: 1; \
180             scale: 1; \
181             description { state: "default" 0.0; \
182                min: 0 param_item_height; \
183                color: LAYOUT_GROUP_LIST_BG_COLOR_INC; \
184             } \
185          }
186
187 #define GENLIST_PART_DIALOGUE_BG_IMAGE \
188          part { name: "bg_image"; \
189             type: RECT; \
190             clip_to: "disclip"; \
191             mouse_events: 0; \
192             description { state: "default" 0.0; \
193                color: GENLIST_DIALOGUE_BG_IMAGE_COLOR_INC; \
194             } \
195             description { state: "selected" 0.0; \
196                inherit: "default" 0.0; \
197                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
198             } \
199          }
200
201 #define GENLIST_PART_DIALOGUE_ITEM \
202          part { name: "elm.rect.dialogue"; \
203             type: RECT; \
204             scale: 1; \
205             description { state: "default" 0.0; \
206                min: GENLIST_PADDING_12_INC 0; \
207                fixed: 1 0; \
208                color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
209                rel2.relative: 0.0 1.0; \
210                align: 0.0 0.0; \
211             } \
212          }
213
214 #define GENLIST_PART_DIALOGUE_RIGHT_LINE \
215          part { name: "elm.rect.dialogue.right.line"; \
216             type: RECT; \
217             scale: 1; \
218             description { state: "default" 0.0; \
219                min: 1 0; \
220                fixed: 1 0; \
221                visible: 1; \
222                rel1.relative: 1.0  0.0; \
223                align: 1.0 0.0; \
224                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
225             } \
226          }
227
228 #define GENLIST_PART_DIALOGUE_EXPANDABLE_ITEM \
229          part { name: "elm.rect.dialogue"; \
230             type: RECT; \
231             scale: 1; \
232             description { state: "default" 0.0; \
233                min: GENLIST_PADDING_12_INC 0; \
234                fixed: 1 0; \
235                color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
236                rel2.relative: 0.0 1.0; \
237                align: 0.0 0.0; \
238             } \
239             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
240             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
241          }
242
243 #define GENLIST_PART_SWALLOW_END( param_padding_size ) \
244          part { name: "elm.padding.left.swallow.end";\
245             clip_to: "disclip"; \
246             type: RECT;\
247             scale: 1;\
248             description { state: "default" 0.0;\
249                min: param_padding_size 0;\
250                fixed: 1 0;\
251                visible: 0; \
252                rel1.to_x: "elm.swallow.end";\
253                rel2 {\
254                   relative: 0.0  1.0;\
255                   to_x: "elm.swallow.end";\
256                }\
257                align: 1.0 0.5;\
258             }\
259          }\
260          part { name: "elm.swallow.end";\
261             clip_to: "disclip"; \
262             type: SWALLOW;\
263             scale: 1;\
264             description { state: "default" 0.0;\
265                fixed: 1 0;\
266                align: 1.0 0.5;\
267                rel1.to_x: "elm.padding.right";\
268                rel2 {\
269                   relative: 0.0  1.0;\
270                   to_x: "elm.padding.right";\
271                }\
272             }\
273          }
274
275 #define GENLIST_PART_DISCLIP \
276         part { name: "disclip"; \
277             type: RECT; \
278             description { state: "default" 0.0; \
279             } \
280             description { state: "disabled" 0.0; \
281                inherit: "default" 0.0; \
282                color: GENLIST_PART_DISCLIP_COLOR_INC; \
283             } \
284          }
285
286 #define GENLIST_EXPANDABLE_PART_PERSPECTIVE_POINT() \
287                 part { name: "point"; \
288                         type: RECT; \
289                         scale: 1; \
290                         description { \
291                                 state: "default" 0.0; \
292                                 color: 0 0 0 0; \
293                                 rel1 { relative: 0.0 0.0; } \
294                                 rel2 { relative: 1.0 0.0; } \
295                         } \
296                 }
297
298 #define GENLIST_PART_MAP_START( param_x, param_y, param_z ) \
299                 description { state: "map_transition" 0.0; \
300                    inherit: "default" 0.0; \
301                    color: 50 50 50 100; \
302                    map { \
303                       perspective: "point"; \
304                       on: 1; \
305                       smooth: 1; \
306                       perspective_on: 1; \
307                       backface_cull: 1; \
308                       rotation { \
309                          center: "point"; \
310                          x: param_x; \
311                          y: param_y; \
312                          z: param_z; \
313                       } \
314                   } \
315                 } \
316                 description { \
317                         state: "hide" 0.0; \
318                         inherit: "default" 0.0; \
319                         visible: 0; \
320                 }
321
322 #define GENLIST_PART_MAP_FINISH( param_x, param_y, param_z ) \
323                 description { \
324                         state: "map_rotate" 0.0; \
325                         inherit: "default" 0.0; \
326                         map { \
327                                 perspective: "point"; \
328                                 on: 1; \
329                                 smooth: 1; \
330                                 perspective_on: 1; \
331                                 backface_cull: 1; \
332                                 rotation { \
333                                         center: "point"; \
334                                         x: param_x; \
335                                         y: param_y; \
336                                         z: param_z; \
337                                 } \
338                        } \
339                } \
340
341 #define GENLIST_PART_MAP_BASE( param_item_height ) \
342          part { name: "base"; \
343             type: RECT; \
344             repeat_events: 1; \
345             scale: 1; \
346             description { state: "default" 0.0; \
347                min: 0 param_item_height; \
348                color: GENLIST_PART_BG_COLOR_INC; \
349             } \
350             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
351             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
352          }
353
354 #define GENLIST_EXPANDABLE_PART_BASE( GE_HEIGHT , GE_COLOR ) \
355          part { name: "base"; \
356             type: RECT; \
357             repeat_events: 1; \
358             scale: 1; \
359             description { state: "default" 0.0; \
360                min: 0 GE_HEIGHT; \
361                color: GE_COLOR; \
362             } \
363             description { state: "selected" 0.0; \
364                inherit: "default" 0.0; \
365                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
366             } \
367             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
368             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
369          }
370
371 /* XXX: refactor expandable edc first.
372         and use GENLIST_EXPANDABLE_PART_BASE_NEW as GENLIST_EXPANDABLE_PART_BASE.
373 */
374 #define GENLIST_EXPANDABLE_PART_BASE_NEW( GE_HEIGHT , GE_COLOR ) \
375          part { name: "base"; \
376             type: RECT; \
377             repeat_events: 1; \
378             scale: 1; \
379             description { state: "default" 0.0; \
380                min: 0 GE_HEIGHT; \
381                color: GE_COLOR; \
382             } \
383             description { state: "selected" 0.0; \
384                inherit: "default" 0.0; \
385                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
386             } \
387          }
388
389 #define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_START() \
390                 name: "rotaion_transition"; \
391                 signal: "flip_item"; \
392                 action: STATE_SET "map_transition" 0.0; \
393                 after: "rotation";
394
395 #define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_FINISH( second ) \
396                 name: "rotation"; \
397                 action: STATE_SET "map_rotate" 0.0; \
398                 transition: LINEAR second; \
399                 after: "rotation_end";
400
401 #define GENLIST_PROGRAM_MAP_EXPAND_END() \
402                 name: "rotation_end"; \
403                 action: STATE_SET "default" 0.0;
404
405 #define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_START() \
406                 name: "rotation_transition2"; \
407                 signal: "elm,state,contract_flip"; \
408                 action: STATE_SET "map_rotate" 0.0; \
409                 after: "rotation2";
410
411 #define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_FINISH( second ) \
412                 name: "rotation2"; \
413                 action: STATE_SET "map_transition" 0.0; \
414                 transition: LINEAR second; \
415                 after: "rotation3";
416
417 #define GENLIST_PROGRAM_MAP_CONTRACT_END() \
418                 name: "rotation3"; \
419                 action: STATE_SET "hide" 0.0;
420
421 #define GENLIST_PART_EXPANDABLE2_NOSHADOW_BASE( param_item_height ) \
422          part { name: "base"; \
423             type: RECT; \
424             repeat_events: 1; \
425             scale: 1; \
426             description { state: "default" 0.0; \
427                min: 0 param_item_height; \
428                color: GENLIST_PART_EXPANDABLE_2ND_DEPTH_BG_COLOR_INC; \
429             } \
430             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
431             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
432          }
433
434 #define GENLIST_PART_EXPANDABLE_SWALLOW_PADDING \
435          part { name: "elm.swallow.pad"; \
436             type: SWALLOW; \
437             description { state: "default" 0.0; \
438                fixed: 1 0; \
439                align: 0.0 0.5; \
440                rel1 { \
441                   relative: 1.0 0.0;\
442                   to_x: "elm.padding.left"; \
443                } \
444                rel2.to_x: "elm.padding.left"; \
445             } \
446             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
447             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
448          } \
449
450 #define GENLIST_PART_PADDING_LEFT_SLIDE( param_padding_size ) \
451          part { name: "elm.padding.left"; \
452             type: RECT; \
453             scale: 1; \
454             description { \
455                state: "default" 0.0; \
456                min: param_padding_size 0; \
457                fixed: 1 0; \
458                visible: 0; \
459                rel1 { relative: 0.0 0.0; to: "bg"; } \
460                rel2 { relative: 0.0 1.0; to: "bg"; } \
461                align: 0.0 0.0; \
462             } \
463          }
464
465 /* only for demo */
466 #define GENLIST_PART_BUTTON( param_name, param_text_name, param_text, param_left, param_right, param_top, param_bottom ) \
467        part { name: param_name; \
468          mouse_events: 1; \
469          description { state: "default" 0.0; \
470             visible: 1; \
471             rel1 { relative: param_left param_top; offset: 0 0; } \
472             rel2 { relative: param_right param_bottom; offset: -1 -1; } \
473             image { \
474                normal: "btn_normal.png"; \
475                border: 10 10 10 10; \
476                border_scale: 1; \
477             } \
478             image.middle: SOLID; \
479             fill.smooth: 0; \
480          } \
481          description { state: "selected" 0.0;  \
482             inherit: "default" 0.0;  \
483             image { \
484                normal: "btn_selected.png"; \
485             } \
486          } \
487       } \
488       part { name: param_text_name;  \
489          type: TEXT;  \
490          mouse_events: 0; \
491          scale: 1; \
492          description {  \
493             align: 0.0 0.0; \
494             state: "default" 0.0;  \
495             color: 0 0 0 255;  \
496             rel1 { relative: 0.0 0.0; to: param_name; } \
497             rel2 { relative: 1.0 1.0; to: param_name; } \
498             text {  \
499                text: param_text; \
500                font: "SLP:style=Roman"; \
501                size: 24;  \
502                min: 1 1;  \
503                align: 0.5 0.5;  \
504                text_class: "list_item"; \
505             }  \
506          }  \
507       }
508
509 /* only for demo */
510 #define GENLIST_PROGRAM_BUTTON( param_name_focused, param_name_normal, param_part_name ) \
511       program { name: param_name_focused; \
512          source: param_part_name; \
513          signal: "mouse,down,1"; \
514          action:  STATE_SET "selected" 0.0;  \
515          target: param_part_name; \
516       } \
517       program { name: param_name_normal; \
518          source: param_part_name; \
519          signal: "mouse,up,1"; \
520          action:  STATE_SET "default" 0.0;  \
521          target: param_part_name; \
522       }
523
524 #define GENLIST_PROGRAM_SLIDE_WITH_AFTER( param_name, param_state, param_next ) \
525       program { name: param_name; \
526          action:  STATE_SET "hide" param_state; \
527          target: "bg"; \
528          transition: LINEAR 0.3; \
529          after: param_next; \
530       }
531
532 #define GENLIST_PROGRAM_SLIDE( param_name, param_state_name, param_state_value ) \
533       program { name: param_name; \
534          action:  STATE_SET param_state_name param_state_value; \
535          target: "bg"; \
536          transition: LINEAR 0.3; \
537       }
538
539 #define DESC_FLIP_IMAGE( param_state_value, param_image_file_name ) \
540       description { state: "flipping" param_state_value; \
541          inherit: "default" 0.0; \
542          image { normal: param_image_file_name; } \
543       }
544
545 #define DESC_TEXT_HIDE( param_state_value ) \
546    description { state: "hide" param_state_value; \
547       inherit: "default" 0.0; \
548       color: 0 0 0 (255*(1-param_state_value/0.20)); \
549    }
550
551 #define GENLIST_EDIT_PART_BASE( param_item_height ) \
552          part { name: "base"; \
553             type: RECT; \
554             repeat_events: 0; \
555             scale: 1; \
556             description { state: "default" 0.0; \
557                min: 0 param_item_height; \
558                color: 0 0 0 0; \
559             } \
560          }
561
562 #define GENLIST_PART_FLIP \
563          part { name: "elm.flip.content"; \
564             clip_to: "disclip"; \
565             type: SWALLOW; \
566             mouse_events: 1; \
567             scale: 1; \
568             description { state: "default" 0.0; \
569                visible: 0; \
570                fixed: 1 1; \
571                rel1 { \
572                   relative: 1.0  0.5; \
573                   to_x: "elm.padding.left"; \
574                } \
575                rel2 { \
576                   relative: 0.0  0.5; \
577                   to_x: "elm.padding.right"; \
578                } \
579             } \
580             description { state: "flip_enabled" 0.0; \
581                inherit: "default" 0.0; \
582                visible: 1; \
583             } \
584          }
585
586 #define GENLIST_DESCRIPTION_INVISIBLE_SELECTED \
587             description { state: "selected" 1.0; \
588                inherit: "default" 0.0; \
589                visible: 0; \
590             }
591
592 #define GENLIST_DESCRIPTION_FLIP_ENABLED \
593             description { state: "flip_enabled" 0.0; \
594                inherit: "default" 0.0; \
595                visible: 0; \
596             }
597
598 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_1TEXT \
599             script { \
600                new st[31]; \
601                new Float:vl; \
602                get_state(PART:"elm.text", st, 30, vl); \
603                set_state(PART:"bg_image", "selected", 0.0); \
604                if (!strcmp(st, "flip_enabled")) \
605                   set_state(PART:"elm.text", "selected", 1.0); \
606                else \
607                   set_state(PART:"elm.text", "selected", 0.0); \
608             }
609
610 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_2TEXT \
611             script { \
612                new st[31]; \
613                new Float:vl; \
614                get_state(PART:"elm.text.1", st, 30, vl); \
615                set_state(PART:"bg_image", "selected", 0.0); \
616                if (!strcmp(st, "flip_enabled")) { \
617                   set_state(PART:"elm.text.1", "selected", 1.0); \
618                   set_state(PART:"elm.text.2", "selected", 1.0); \
619                } \
620                else { \
621                   set_state(PART:"elm.text.1", "selected", 0.0); \
622                   set_state(PART:"elm.text.2", "selected", 0.0); \
623                } \
624             }
625
626 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_3TEXT \
627             script { \
628                new st[31]; \
629                new Float:vl; \
630                get_state(PART:"elm.text.1", st, 30, vl); \
631                set_state(PART:"bg_image", "selected", 0.0); \
632                if (!strcmp(st, "flip_enabled")) { \
633                   set_state(PART:"elm.text.1", "selected", 1.0); \
634                   set_state(PART:"elm.text.2", "selected", 1.0); \
635                   set_state(PART:"elm.text.3", "selected", 1.0); \
636                } \
637                else { \
638                   set_state(PART:"elm.text.1", "selected", 0.0); \
639                   set_state(PART:"elm.text.2", "selected", 0.0); \
640                   set_state(PART:"elm.text.3", "selected", 0.0); \
641                } \
642             }
643
644 #define GENLIST_PROGRAM_FLIP_1TEXT \
645          program { name: "flip_enabled"; \
646             signal: "elm,state,flip,enabled"; \
647             source: "elm"; \
648             action: STATE_SET "flip_enabled" 0.0; \
649             target: "elm.text"; \
650             target: "elm.flip.content"; \
651          } \
652          program { name: "flip_disabled"; \
653             signal: "elm,state,flip,disabled"; \
654             source: "elm"; \
655             action: STATE_SET "default" 0.0; \
656             target: "elm.text"; \
657             target: "elm.flip.content"; \
658          }
659
660 #define GENLIST_PROGRAM_FLIP_1TEXT_1ICON \
661          program { name: "flip_enabled"; \
662             signal: "elm,state,flip,enabled"; \
663             source: "elm"; \
664             action: STATE_SET "flip_enabled" 0.0; \
665             target: "elm.text"; \
666             target: "elm.icon"; \
667             target: "elm.flip.content"; \
668          } \
669          program { name: "flip_disabled"; \
670             signal: "elm,state,flip,disabled"; \
671             source: "elm"; \
672             action: STATE_SET "default" 0.0; \
673             target: "elm.text"; \
674             target: "elm.icon"; \
675             target: "elm.flip.content"; \
676          }
677
678 #define GENLIST_PROGRAM_FLIP_1TEXT_2ICON \
679          program { name: "flip_enabled"; \
680             signal: "elm,state,flip,enabled"; \
681             source: "elm"; \
682             action: STATE_SET "flip_enabled" 0.0; \
683             target: "elm.text"; \
684             target: "elm.icon.1"; \
685             target: "elm.icon.2"; \
686             target: "elm.flip.content"; \
687          } \
688          program { name: "flip_disabled"; \
689             signal: "elm,state,flip,disabled"; \
690             source: "elm"; \
691             action: STATE_SET "default" 0.0; \
692             target: "elm.text"; \
693             target: "elm.icon.1"; \
694             target: "elm.icon.2"; \
695             target: "elm.flip.content"; \
696          }
697
698 #define GENLIST_PROGRAM_FLIP_1TEXT_3ICON \
699          program { name: "flip_enabled"; \
700             signal: "elm,state,flip,enabled"; \
701             source: "elm"; \
702             action: STATE_SET "flip_enabled" 0.0; \
703             target: "elm.text"; \
704             target: "elm.icon.1"; \
705             target: "elm.icon.2"; \
706             target: "elm.icon.3"; \
707             target: "elm.flip.content"; \
708          } \
709          program { name: "flip_disabled"; \
710             signal: "elm,state,flip,disabled"; \
711             source: "elm"; \
712             action: STATE_SET "default" 0.0; \
713             target: "elm.text"; \
714             target: "elm.icon.1"; \
715             target: "elm.icon.2"; \
716             target: "elm.icon.3"; \
717             target: "elm.flip.content"; \
718          }
719
720 #define GENLIST_PROGRAM_FLIP_2TEXT \
721          program { name: "flip_enabled"; \
722             signal: "elm,state,flip,enabled"; \
723             source: "elm"; \
724             action: STATE_SET "flip_enabled" 0.0; \
725             target: "elm.text.1"; \
726             target: "elm.text.2"; \
727             target: "elm.flip.content"; \
728          } \
729          program { name: "flip_disabled"; \
730             signal: "elm,state,flip,disabled"; \
731             source: "elm"; \
732             action: STATE_SET "default" 0.0; \
733             target: "elm.text.1"; \
734             target: "elm.text.2"; \
735             target: "elm.flip.content"; \
736          }
737
738 #define GENLIST_PROGRAM_FLIP_2TEXT_1ICON \
739          program { name: "flip_enabled"; \
740             signal: "elm,state,flip,enabled"; \
741             source: "elm"; \
742             action: STATE_SET "flip_enabled" 0.0; \
743             target: "elm.text.1"; \
744             target: "elm.text.2"; \
745             target: "elm.icon"; \
746             target: "elm.flip.content"; \
747          } \
748          program { name: "flip_disabled"; \
749             signal: "elm,state,flip,disabled"; \
750             source: "elm"; \
751             action: STATE_SET "default" 0.0; \
752             target: "elm.text.1"; \
753             target: "elm.text.2"; \
754             target: "elm.icon"; \
755             target: "elm.flip.content"; \
756          }
757
758 #define GENLIST_PROGRAM_FLIP_2TEXT_2ICON \
759          program { name: "flip_enabled"; \
760             signal: "elm,state,flip,enabled"; \
761             source: "elm"; \
762             action: STATE_SET "flip_enabled" 0.0; \
763             target: "elm.text.1"; \
764             target: "elm.text.2"; \
765             target: "elm.icon.1"; \
766             target: "elm.icon.2"; \
767             target: "elm.flip.content"; \
768          } \
769          program { name: "flip_disabled"; \
770             signal: "elm,state,flip,disabled"; \
771             source: "elm"; \
772             action: STATE_SET "default" 0.0; \
773              target: "elm.text.1"; \
774             target: "elm.text.2"; \
775             target: "elm.icon.1"; \
776             target: "elm.icon.2"; \
777             target: "elm.flip.content"; \
778          }
779
780 #define GENLIST_PROGRAM_FLIP_2TEXT_3ICON \
781          program { name: "flip_enabled"; \
782             signal: "elm,state,flip,enabled"; \
783             source: "elm"; \
784             action: STATE_SET "flip_enabled" 0.0; \
785             target: "elm.text.1"; \
786             target: "elm.text.2"; \
787             target: "elm.icon.1"; \
788             target: "elm.icon.2"; \
789             target: "elm.icon.3"; \
790             target: "elm.flip.content"; \
791          } \
792          program { name: "flip_disabled"; \
793             signal: "elm,state,flip,disabled"; \
794             source: "elm"; \
795             action: STATE_SET "default" 0.0; \
796             target: "elm.text.1"; \
797             target: "elm.text.2"; \
798             target: "elm.icon.1"; \
799             target: "elm.icon.2"; \
800             target: "elm.icon.3"; \
801             target: "elm.flip.content"; \
802          }
803
804 #define GENLIST_PROGRAM_FLIP_3TEXT \
805          program { name: "flip_enabled"; \
806             signal: "elm,state,flip,enabled"; \
807             source: "elm"; \
808             action: STATE_SET "flip_enabled" 0.0; \
809             target: "elm.text.1"; \
810             target: "elm.text.2"; \
811             target: "elm.text.3"; \
812             target: "elm.flip.content"; \
813          } \
814          program { name: "flip_disabled"; \
815             signal: "elm,state,flip,disabled"; \
816             source: "elm"; \
817             action: STATE_SET "default" 0.0; \
818             target: "elm.text.1"; \
819             target: "elm.text.2"; \
820             target: "elm.text.3"; \
821             target: "elm.flip.content"; \
822          }
823
824 #define GENLIST_PROGRAM_FLIP_3TEXT_1ICON \
825          program { name: "flip_enabled"; \
826             signal: "elm,state,flip,enabled"; \
827             source: "elm"; \
828             action: STATE_SET "flip_enabled" 0.0; \
829             target: "elm.text.1"; \
830             target: "elm.text.2"; \
831             target: "elm.text.3"; \
832             target: "elm.icon"; \
833             target: "elm.flip.content"; \
834          } \
835          program { name: "flip_disabled"; \
836             signal: "elm,state,flip,disabled"; \
837             source: "elm"; \
838             action: STATE_SET "default" 0.0; \
839             target: "elm.text.1"; \
840             target: "elm.text.2"; \
841             target: "elm.text.3"; \
842             target: "elm.icon"; \
843             target: "elm.flip.content"; \
844          }
845
846 #define GENLIST_PROGRAM_FLIP_3TEXT_2ICON \
847          program { name: "flip_enabled"; \
848             signal: "elm,state,flip,enabled"; \
849             source: "elm"; \
850             action: STATE_SET "flip_enabled" 0.0; \
851             target: "elm.text.1"; \
852             target: "elm.text.2"; \
853             target: "elm.text.3"; \
854             target: "elm.icon.1"; \
855             target: "elm.icon.2"; \
856             target: "elm.flip.content"; \
857          } \
858          program { name: "flip_disabled"; \
859             signal: "elm,state,flip,disabled"; \
860             source: "elm"; \
861             action: STATE_SET "default" 0.0; \
862             target: "elm.text.1"; \
863             target: "elm.text.2"; \
864             target: "elm.text.3"; \
865             target: "elm.icon.1"; \
866             target: "elm.icon.2"; \
867             target: "elm.flip.content"; \
868          }
869
870 #define GENLIST_PROGRAM_FLIP_3TEXT_3ICON \
871          program { name: "flip_enabled"; \
872             signal: "elm,state,flip,enabled"; \
873             source: "elm"; \
874             action: STATE_SET "flip_enabled" 0.0; \
875             target: "elm.text.1"; \
876             target: "elm.text.2"; \
877             target: "elm.text.3"; \
878             target: "elm.icon.1"; \
879             target: "elm.icon.2"; \
880             target: "elm.icon.3"; \
881             target: "elm.flip.content"; \
882          } \
883          program { name: "flip_disabled"; \
884             signal: "elm,state,flip,disabled"; \
885             source: "elm"; \
886             action: STATE_SET "default" 0.0; \
887             target: "elm.text.1"; \
888             target: "elm.text.2"; \
889             target: "elm.text.3"; \
890             target: "elm.icon.1"; \
891             target: "elm.icon.2"; \
892             target: "elm.icon.3"; \
893             target: "elm.flip.content"; \
894          }
895
896 /* genlist multisense macro - start */
897 #define GENLIST_PROGRAM_AFTER_PLAY_BUTTON_PRESS \
898             after: "play_button_press";
899
900 #define GENLIST_PROGRAM_PLAY_BUTTON_PRESS \
901          program { name: "play_button_press"; \
902             action: PLAY_SAMPLE "button-pressed" 1.0; \
903          }
904 /* genlist multisense macro - end */