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