Fix reorder mode for new UX & Change macors & Fix some incorrect text
[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 // *************** Default Size Macro **************** //
20 // if size is different for each theme, split it into each theme inc.
21
22
23 #define GENLIST_HEIGHT_1LINE 113  // excep bottom 1 line
24 //FIXME: Change from GENLIST_TREESIZE_DEFAULT to below macro
25 #define GENLIST_TREESIZE_DEFAULT 32
26
27 #define GENLIST_PADDING_SIZE_DEFAULT   16
28 #define GENLIST_PADDING_SIZE_LEFT      GENLIST_PADDING_SIZE_DEFAULT
29 #define GENLIST_PADDING_SIZE_RIGHT     GENLIST_PADDING_SIZE_DEFAULT
30 #define GENLIST_PADDING_SIZE_TOP       10
31 #define GENLIST_PADDING_SIZE_BOTTOM    10
32
33 #define GENLIST_TEXT2_WIDTH_MIN 150
34
35 #define GENLIST_SIZE_PASSWORD_ICON 114
36
37 #define GENLIST_TEXT_BTN_HEIGHT   72
38 #define GENLIST_ICON_SMALL_SIZE   32
39 #define GENLIST_ICON_MEDIUM_SIZE  48
40 #define GENLIST_ICON_ONOFF_HEIGHT 80
41 #define GENLIST_ICON_ONOFF_WIDTH  60
42 #define GENLIST_ICON_CHECK_SIZE   60
43 #define GENLIST_ICON_RADIO_SIZE   60
44
45 // Group Title
46 #define GENLIST_DIALOGUE_GROUP_TITLE_PADDING_TOP_SIZE 36
47 #define GENLIST_DIALOGUE_GROUP_TITLE_PADDING_BOTTOM_SIZE 10
48 #define GENLIST_DIALOGUE_GROUP_TITLE_TEXT_HEIGHT 36
49 #define GENLIST_DIALOGUE_GROUP_TITLE_HEIGHT GENLIST_DIALOGUE_GROUP_TITLE_PADDING_TOP_SIZE + GENLIST_DIALOGUE_GROUP_TITLE_PADDING_BOTTOM_SIZE + GENLIST_DIALOGUE_GROUP_TITLE_TEXT_HEIGHT
50
51 #define GENLIST_DIALOGUE_SEPARATOR_DEFAULT_HEIGHT 40
52 #define GENLIST_DIALOGUE_ITEM_WIDTH 10
53
54 // EDJE description have 24 patterns
55 //      |   top  |
56 // ---------------------
57 // left |  HERE  | right
58 // ---------------------
59 //      | bottom |
60 #define GENLIST_DESCRIPTION( left, right, top, bottom, param ) \
61       description { state: "default" 0.0;\
62          rel1 { \
63             relative: 1 1; \
64             to_x: left; \
65             to_y: top; \
66          }\
67          rel2 {\
68             relative: 0 0;\
69             to_x: right;\
70             to_y: bottom;\
71          }\
72          param\
73       }
74
75 // ---------------------
76 // left |--> HERE
77 // ---------------------
78 #define GENLIST_DESCRIPTION_L( left, param ) \
79       description { state: "default" 0.0;\
80          align: 0 0.5; \
81          fixed: 1 0; \
82          rel1 { \
83             relative: 1 0; \
84             to_x: left; \
85             to_y: "base"; \
86          }\
87          rel2 { \
88             relative: 1 1;\
89             to_x: left; \
90             to_y: "base"; \
91          }\
92          param\
93       }
94
95 // ---------------------
96 //   HERE  <--| right
97 // ---------------------
98 #define GENLIST_DESCRIPTION_R( right, param ) \
99       description { state: "default" 0.0;\
100          align: 1 0.5; \
101          fixed: 1 0; \
102          rel1 { \
103             relative: 0 0; \
104             to_x: right; \
105             to_y: "base"; \
106          }\
107          rel2 {\
108             relative: 0 1;\
109             to_x: right; \
110             to_y: "base"; \
111          }\
112          param\
113       }
114
115 // --------------------------
116 // left |--> HERE  <--| right
117 // --------------------------
118 #define GENLIST_DESCRIPTION_LR( left, right, param ) \
119       description { state: "default" 0.0;\
120          rel1 { \
121             relative: 1 0; \
122             to_x: left; \
123             to_y: "base"; \
124          }\
125          rel2 {\
126             relative: 0 1;\
127             to_x: right;\
128             to_y: "base"; \
129          }\
130          param\
131       }
132
133 #define GENLIST_DESCRIPT_DOT_LT( NAME, left, top, param ) \
134       description { state: NAME 0.0;\
135          align: 0 0;\
136          rel1 { \
137             relative: 1 1; \
138             to_x: left; \
139             to_y: top; \
140          }\
141          rel2 {\
142             relative: 1 1;\
143             to_x: left;\
144             to_y: top;\
145          }\
146          param\
147       }
148
149 #define GENLIST_DESCRIPT_DOT_RT( NAME, right, top, param ) \
150       description { state: NAME 0.0;\
151          align: 1 0;\
152          rel1 { \
153             relative: 0 1; \
154             to_x: right; \
155             to_y: top; \
156          }\
157          rel2 {\
158             relative: 0 1;\
159             to_x: right;\
160             to_y: top;\
161          }\
162          param\
163       }
164
165 #define GENLIST_DESCRIPT_DOT_LB( NAME, left, bottom, param ) \
166       description { state: NAME 0.0;\
167          align: 0 1;\
168          rel1 { \
169             relative: 1 0; \
170             to_x: left; \
171             to_y: bottom; \
172          }\
173          rel2 {\
174             relative: 1 0;\
175             to_x: left;\
176             to_y: bottom;\
177          }\
178          param\
179       }\
180
181 #define GENLIST_DESCRIPT_DOT_RB( NAME, right, bottom, param ) \
182       description { state: NAME 0.0;\
183          align: 1 1;\
184          rel1 { \
185             relative: 0 0; \
186             to_x: right; \
187             to_y: bottom; \
188          }\
189          rel2 {\
190             relative: 0 0;\
191             to_x: right;\
192             to_y: bottom;\
193          }\
194          param\
195       }
196
197 #define GENLIST_DESCRIPT_LINE_LEFT( NAME, left, top, bottom, param ) \
198       description { state: NAME 0.0;\
199          align: 0 0.5;\
200          rel1 { \
201             relative: 1 1; \
202             to_x: left; \
203             to_y: top; \
204          }\
205          rel2 {\
206             relative: 1 0;\
207             to_x: left;\
208             to_y: bottom;\
209          }\
210          param\
211       }
212
213 #define GENLIST_DESCRIPT_LINE_RIGHT( NAME, right, top, bottom, param ) \
214       description { state: NAME 0.0;\
215          align: 1 0.5;\
216          rel1 { \
217             relative: 0 1; \
218             to_x: right; \
219             to_y: top; \
220          }\
221          rel2 {\
222             relative: 0 0;\
223             to_x: right;\
224             to_y: bottom;\
225          }\
226          param\
227       }
228
229 #define GENLIST_DESCRIPT_LINE_TOP( NAME, left, right, top, param ) \
230       description { state: NAME 0.0;\
231          align: 0.5 0;\
232          rel1 { \
233             relative: 1 1; \
234             to_x: left; \
235             to_y: top; \
236          }\
237          rel2 {\
238             relative: 0 1;\
239             to_x: right;\
240             to_y: top;\
241          }\
242          param\
243       }
244
245 #define GENLIST_DESCRIPT_LINE_BOTTOM( NAME, left, right, bottom, param ) \
246       description { state: NAME 0.0;\
247          align: 0.5 1;\
248          rel1 { \
249             relative: 1 0; \
250             to_x: left; \
251             to_y: bottom; \
252          }\
253          rel2 {\
254             relative: 0 0;\
255             to_x: right;\
256             to_y: bottom;\
257          }\
258          param\
259       }
260
261 #define GENLIST_PADDING(NAME, DESCRIPT) \
262        part { name: NAME; \
263             type: RECT; \
264             scale: 1; \
265             DESCRIPT \
266        }
267
268 // *************** Function Macro ******************* //
269 #define GENLIST_PART_BASE( HEIGHT ) \
270          part { name: "base"; \
271             type: RECT; \
272             repeat_events: 1; \
273             scale: 1; \
274             description { state: "default" 0.0; \
275                min: 0 HEIGHT; \
276                align: 0.5 0.5; \
277                color: GENLIST_PART_DIALOGUE_GROUP_BG_COLOR; \
278             } \
279          }
280
281 #define GENLIST_PART_BASE_REORDER( HEIGHT ) \
282          part { name: "base"; \
283             type: RECT; \
284             repeat_events: 1; \
285             scale: 1; \
286             description { state: "default" 0.0; \
287                min: 0 HEIGHT; \
288                align: 0 0; \
289                color: 0 0 0 0;\
290                rel1 { \
291                   relative: 1 1; \
292                   to_x: "reorder.padding.left"; \
293                   to_y: "reorder.padding.top"; \
294                } \
295             } \
296          } \
297          part { name: "reorder.padding.left"; \
298             type: RECT; \
299             scale: 1; \
300             description { state: "default" 0.0; \
301                visible: 0; \
302                rel2.relative: 0 1; \
303                align: 0 0.5; \
304             } \
305             description { state: "reorder" 0.0; \
306                inherit: "default" 0.0; \
307                visible: 1; \
308                fixed: 1 0; \
309                min: 16 0; \
310                color: GENLIST_PART_REORDER_BG_COLOR; \
311             } \
312          } \
313        part { name: "reorder.padding.top"; \
314             type: RECT; \
315             scale: 1; \
316             description { state: "default" 0.0; \
317                visible: 0; \
318                rel2.relative: 1 0; \
319                align: 0.5 0; \
320             } \
321             description { state: "reorder" 0.0; \
322                inherit: "default" 0.0; \
323                visible: 1; \
324                fixed: 0 1; \
325                min: 0 8; \
326                color: GENLIST_PART_REORDER_BG_COLOR; \
327             } \
328          }
329
330 /// Why is this needed??? (event block??)
331 #define GENLIST_PART_BASE_EVENT_OFF \
332          part { name: "base";\
333             type: RECT;\
334             repeat_events: 0;\
335             description { state: "default" 0.0;\
336                color: 0 0 0 0;\
337             }\
338          }
339
340 #define GENLIST_PART_BOTTOM_LINE \
341          part { name: "bottom_line"; \
342             type: RECT; \
343             mouse_events: 0; \
344             description { state: "default" 0.0; \
345                min: 0 1; \
346                fixed: 0 1; \
347                visible: 1; \
348                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
349                rel1 { \
350                   relative: 0.0 1.0; \
351                   offset: 0 -1; \
352                } \
353             } \
354             description { state: "reorder" 0.0; \
355                inherit: "default" 0.0; \
356                color: 0 0 0 0; \
357             } \
358          }
359
360 #define GENLIST_PART_BG_IMAGE \
361          part { name: "bg_image"; \
362             type: RECT; \
363             clip_to: "disclip"; \
364             mouse_events: 0; \
365             description { state: "default" 0.0; \
366                color: GENLIST_PART_LIST_BG_COLOR; \
367             } \
368             description { state: "selected" 0.0; \
369                inherit: "default" 0.0; \
370                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
371             } \
372          }
373
374 #define GENLIST_PART_BG \
375          part { name: "bg"; \
376             type: RECT; \
377             clip_to: "disclip"; \
378             mouse_events: 0; \
379             description { state: "default" 0.0; \
380                color: GENLIST_PART_DIALOGUE_GROUP_BG_COLOR; \
381             } \
382             description { state: "hide" 0.0; \
383                inherit: "default" 0.0; \
384                rel1 { relative: 0.025 0.0; } \
385                rel2 { relative: 1.025 1.0; } \
386             } \
387             description { state: "hide" 0.1;  \
388                inherit: "default" 0.0; \
389                rel1 { relative: 0.13 0.0; } \
390                rel2 { relative: 1.13 1.0; } \
391             } \
392             description { state: "hide" 0.2; \
393                inherit: "default" 0.0; \
394                rel1 { relative: 0.5 0.0; } \
395                rel2 { relative: 1.5 1.0; } \
396             } \
397             description { state: "hide" 0.3; \
398                inherit: "default" 0.0; \
399                rel1 { relative: 1.0 0.0; } \
400                rel2 { relative: 2.0 1.0; } \
401             } \
402          }
403
404 #define GENLIST_PART_BOTTOM_EFFECT_LINE \
405          part { name: "bottom_line"; \
406             type: RECT; \
407             mouse_events: 0; \
408             description { state: "default" 0.0; \
409                min: 0 1; \
410                fixed: 0 1; \
411                visible: 1; \
412                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
413                rel1 { \
414                   relative: 0.0 1.0; \
415                   offset: 0 -1; \
416                } \
417             } \
418             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
419             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
420          }
421
422 #define GENLIST_PART_PADDING_TEXT_TOP( param_padding_size ) \
423        part { name: "elm.padding.text.top"; \
424             type: RECT; \
425             scale: 1; \
426             description { \
427                state: "default" 0.0; \
428                min: 0 param_padding_size; \
429                fixed: 0 1; \
430                visible: 0; \
431                rel2.relative: 1.0 0.0; \
432                align: 0.0 0.0; \
433             } \
434          }
435
436
437 #define GENLIST_PART_PADDING( NAME, SIZE, REL1, REL2 ) \
438        part { name: NAME; \
439             type: RECT; \
440             scale: 1; \
441             description { state: "default" 0.0; \
442                min: SIZE 0; \
443                fixed: 1 0; \
444                visible: 0; \
445                align: 0.5 0.5; \
446                rel1 { \
447                   relative: REL1; \
448                   to: "base"; \
449                } \
450                rel2 { \
451                   relative: REL2; \
452                   to: "base"; \
453                } \
454             } \
455          }
456
457 #define GENLIST_PART_PADDING_LEFT( SIZE ) \
458          part { name: "elm.padding.left"; \
459             type: RECT; \
460             scale: 1; \
461             description { state: "default" 0.0; \
462                min: SIZE 0; \
463                max: SIZE 0; \
464                fixed: 1 0; \
465                visible: 0; \
466                align: 0.0 0.5; \
467                rel1.to: "base"; \
468                rel2.to: "base"; \
469                rel2.relative: 0.0 1.0; \
470             } \
471          }
472
473 #define GENLIST_PART_PADDING_LEFT_TO( NAME, LEFT, SIZE ) \
474        part { name: NAME; \
475             type: RECT; \
476             scale: 1; \
477             description { state: "default" 0.0; \
478                min: SIZE 0; \
479                fixed: 1 0; \
480                visible: 0; \
481                align: 0 0.5; \
482                rel1 { \
483                   relative: 1 0.5; \
484                   to_x: LEFT; \
485                   to_y: LEFT; \
486                } \
487                rel2 { \
488                   relative: 1 0.5; \
489                   to_x: LEFT; \
490                   to_y: LEFT; \
491                } \
492             } \
493          }
494
495 #define GENLIST_PART_PADDING_RIGHT( SIZE ) \
496        part { name: "elm.padding.right"; \
497             type: RECT; \
498             scale: 1; \
499             description { state: "default" 0.0; \
500                min: SIZE 0; \
501                max: SIZE 0; \
502                fixed: 1 0; \
503                visible: 0; \
504                align: 1.0 0.5; \
505                rel1.to: "base"; \
506                rel2.to: "base"; \
507                rel1.relative: 1 0; \
508             } \
509          }
510
511 #define GENLIST_PART_PADDING_RIGHT_TO( NAME, RIGHT, SIZE ) \
512        part { name: NAME; \
513             type: RECT; \
514             scale: 1; \
515             description { state: "default" 0.0; \
516                min: SIZE 0; \
517                fixed: 1 0; \
518                visible: 0; \
519                align: 1 0.5; \
520                rel1 { \
521                   relative: 0 0.5; \
522                   to: RIGHT; \
523                } \
524                rel2 { \
525                   relative: 0 0.5; \
526                   to: RIGHT; \
527                } \
528             } \
529          }
530
531 #define GENLIST_PART_PADDING_TOP( SIZE ) \
532        part { name: "elm.padding.top"; \
533             type: RECT; \
534             scale: 1; \
535             description { \
536                state: "default" 0.0; \
537                min: 0 SIZE; \
538                fixed: 0 1; \
539                visible: 0; \
540                rel1.to: "base"; \
541                rel2.to: "base"; \
542                rel2.relative: 1.0 0.0; \
543                align: 0.5 0.0; \
544             } \
545          }
546
547 #define GENLIST_PART_PADDING_TOP_TO( NAME, TOP, SIZE ) \
548        part { name: NAME; \
549             type: RECT; \
550             scale: 1; \
551             description { state: "default" 0.0; \
552                min: 0 SIZE; \
553                fixed: 0 1; \
554                visible: 0; \
555                align: 0.5 0; \
556                rel1 { \
557                   relative: 0.5 1; \
558                   to: TOP; \
559                } \
560                rel2 { \
561                   relative: 0.5 1; \
562                   to: TOP; \
563                } \
564             } \
565          }
566
567 #define GENLIST_PART_PADDING_BOTTOM( SIZE ) \
568        part { name: "elm.padding.bottom"; \
569             type: RECT; \
570             scale: 1; \
571             description { state: "default" 0.0; \
572                min: 0 SIZE; \
573                fixed: 0 1; \
574                visible: 0; \
575                color: 0 0 0 0; \
576                rel1.to: "base"; \
577                rel2.to: "base"; \
578                rel1.relative: 0.0 1.0; \
579                align: 0.5 1.0; \
580             } \
581          }
582
583 #define GENLIST_PART_PADDING_BOTTOM_TO( NAME, BOTTOM, SIZE ) \
584        part { name: NAME; \
585             type: RECT; \
586             scale: 1; \
587             description { state: "default" 0.0; \
588                min: 0 SIZE; \
589                fixed: 0 1; \
590                visible: 0; \
591                align: 0.5 1; \
592                rel1 { \
593                   relative: 0.5 0; \
594                   to: BOTTOM; \
595                } \
596                rel2 { \
597                   relative: 0.5 0; \
598                   to: BOTTOM; \
599                } \
600             } \
601          }
602
603 #define GENLIST_PART_DIALOGUE_BASE( param_item_height ) \
604          part { name: "base"; \
605             type: RECT; \
606             clip_to: "disclip"; \
607             repeat_events: 1; \
608             scale: 1; \
609             description { state: "default" 0.0; \
610                min: 0 param_item_height; \
611                color: LAYOUT_GROUP_LIST_BG_COLOR_INC; \
612             } \
613          }
614
615 #define GENLIST_PART_DIALOGUE_BG_IMAGE \
616          part { name: "bg_image"; \
617             type: RECT; \
618             clip_to: "disclip"; \
619             mouse_events: 0; \
620             description { state: "default" 0.0; \
621                color: GENLIST_DIALOGUE_BG_IMAGE_COLOR_INC; \
622             } \
623             description { state: "selected" 0.0; \
624                inherit: "default" 0.0; \
625                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
626             } \
627          }
628
629 #define GENLIST_PART_DIALOGUE_ITEM \
630          part { name: "elm.rect.dialogue"; \
631             type: RECT; \
632             scale: 1; \
633             description { state: "default" 0.0; \
634                min: GENLIST_PADDING_12_INC 0; \
635                fixed: 1 0; \
636                color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
637                rel2.relative: 0.0 1.0; \
638                align: 0.0 0.0; \
639             } \
640          }
641
642 #define GENLIST_PART_DIALOGUE_RIGHT_LINE \
643          part { name: "elm.rect.dialogue.right.line"; \
644             type: RECT; \
645             scale: 1; \
646             description { state: "default" 0.0; \
647                min: 1 0; \
648                fixed: 1 0; \
649                visible: 1; \
650                rel1 { \
651                   relative: 1.0  0.0; \
652                   offset: -1 0; \
653                } \
654                align: 1.0 0.0; \
655                color: GENLIST_PART_LIST_LINE_COLOR_INC; \
656             } \
657          }
658
659 #define GENLIST_PART_DIALOGUE_EXPANDABLE_ITEM \
660          part { name: "elm.rect.dialogue"; \
661             type: RECT; \
662             scale: 1; \
663             description { state: "default" 0.0; \
664                min: GENLIST_PADDING_12_INC 0; \
665                fixed: 1 0; \
666                color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
667                rel2.relative: 0.0 1.0; \
668                align: 0.0 0.0; \
669             } \
670             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
671             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
672          }
673
674 #define GENLIST_PART_SWALLOW_END( param_padding_size ) \
675          part { name: "elm.padding.left.swallow.end";\
676             clip_to: "disclip"; \
677             type: RECT;\
678             scale: 1;\
679             description { state: "default" 0.0;\
680                min: param_padding_size 0;\
681                fixed: 1 0;\
682                visible: 0; \
683                rel1.to_x: "elm.swallow.end";\
684                rel2 {\
685                   relative: 0.0  1.0;\
686                   to_x: "elm.swallow.end";\
687                }\
688                align: 1.0 0.5;\
689             }\
690          }\
691          part { name: "elm.swallow.end";\
692             clip_to: "disclip"; \
693             type: SWALLOW;\
694             scale: 1;\
695             description { state: "default" 0.0;\
696                fixed: 1 0;\
697                align: 1.0 0.5;\
698                rel1.to_x: "elm.padding.right";\
699                rel2 {\
700                   relative: 0.0  1.0;\
701                   to_x: "elm.padding.right";\
702                }\
703             }\
704          }
705
706 // When rotating, sometimes item size is expaned.
707 #define GENLIST_PART_DISCLIP \
708         part { name: "disclip"; \
709             type: RECT; \
710             description { state: "default" 0.0; \
711             } \
712             description { state: "disabled" 0.0; \
713                inherit: "default" 0.0; \
714                color: GENLIST_PART_DISCLIP_COLOR_INC; \
715             } \
716          }
717
718 #define GENLIST_EXPANDABLE_PART_PERSPECTIVE_POINT() \
719                 part { name: "point"; \
720                         type: RECT; \
721                         scale: 1; \
722          description { \
723             state: "default" 0.0; \
724             color: 0 0 0 0; \
725             rel1 { relative: 0.0 0.0; } \
726             rel2 { relative: 1.0 0.0; } \
727          } \
728       }
729
730 #define GENLIST_PART_MAP_START( param_x, param_y, param_z ) \
731                 description { state: "map_transition" 0.0; \
732                    inherit: "default" 0.0; \
733                    color: 50 50 50 100; \
734                    map { \
735                       perspective: "point"; \
736                       on: 1; \
737                       smooth: 1; \
738                       perspective_on: 1; \
739                       backface_cull: 1; \
740                       rotation { \
741                          center: "point"; \
742                          x: param_x; \
743                          y: param_y; \
744                          z: param_z; \
745                       } \
746                   } \
747                 } \
748                 description { \
749                         state: "hide" 0.0; \
750                         inherit: "default" 0.0; \
751                         visible: 0; \
752                 }
753
754 #define GENLIST_PART_MAP_FINISH( param_x, param_y, param_z ) \
755                 description { \
756                         state: "map_rotate" 0.0; \
757                         inherit: "default" 0.0; \
758                         map { \
759                                 perspective: "point"; \
760                                 on: 1; \
761                                 smooth: 1; \
762                                 perspective_on: 1; \
763                                 backface_cull: 1; \
764                                 rotation { \
765                                         center: "point"; \
766                                         x: param_x; \
767                                         y: param_y; \
768                                         z: param_z; \
769                                 } \
770                        } \
771                } \
772
773 #define GENLIST_PART_MAP_BASE( param_item_height ) \
774          part { name: "base"; \
775             type: RECT; \
776             repeat_events: 1; \
777             scale: 1; \
778             description { state: "default" 0.0; \
779                min: 0 param_item_height; \
780                color: GENLIST_PART_DIALOGUE_GROUP_BG_COLOR; \
781             } \
782             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
783             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
784          }
785
786 #define GENLIST_EXPANDABLE_PART_BASE( GE_HEIGHT , GE_COLOR ) \
787          part { name: "base"; \
788             type: RECT; \
789             repeat_events: 1; \
790             scale: 1; \
791             description { state: "default" 0.0; \
792                min: 0 GE_HEIGHT; \
793                color: GE_COLOR; \
794             } \
795             description { state: "selected" 0.0; \
796                inherit: "default" 0.0; \
797                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
798             } \
799             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
800             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
801          }
802
803 /* XXX: refactor expandable edc first.
804         and use GENLIST_EXPANDABLE_PART_BASE_NEW as GENLIST_EXPANDABLE_PART_BASE.
805 */
806 #define GENLIST_EXPANDABLE_PART_BASE_NEW( GE_HEIGHT , GE_COLOR ) \
807          part { name: "base"; \
808             type: RECT; \
809             repeat_events: 1; \
810             scale: 1; \
811             description { state: "default" 0.0; \
812                min: 0 GE_HEIGHT; \
813                color: GE_COLOR; \
814             } \
815             description { state: "selected" 0.0; \
816                inherit: "default" 0.0; \
817                color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
818             } \
819          }
820
821 #define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_START() \
822                 name: "rotaion_transition"; \
823                 signal: "flip_item"; \
824                 action: STATE_SET "map_transition" 0.0; \
825                 after: "rotation";
826
827 #define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_FINISH( second ) \
828                 name: "rotation"; \
829                 action: STATE_SET "map_rotate" 0.0; \
830                 transition: LINEAR second; \
831                 after: "rotation_end";
832
833 #define GENLIST_PROGRAM_MAP_EXPAND_END() \
834                 name: "rotation_end"; \
835                 action: STATE_SET "default" 0.0;
836
837 #define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_START() \
838                 name: "rotation_transition2"; \
839                 signal: "elm,state,contract_flip"; \
840                 action: STATE_SET "map_rotate" 0.0; \
841                 after: "rotation2";
842
843 #define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_FINISH( second ) \
844                 name: "rotation2"; \
845                 action: STATE_SET "map_transition" 0.0; \
846                 transition: LINEAR second; \
847                 after: "rotation3";
848
849 #define GENLIST_PROGRAM_MAP_CONTRACT_END() \
850                 name: "rotation3"; \
851                 action: STATE_SET "hide" 0.0;
852
853 #define GENLIST_PART_EXPANDABLE2_NOSHADOW_BASE( param_item_height ) \
854          part { name: "base"; \
855             type: RECT; \
856             repeat_events: 1; \
857             scale: 1; \
858             description { state: "default" 0.0; \
859                min: 0 param_item_height; \
860                color: GENLIST_PART_EXPANDABLE_2ND_DEPTH_BG_COLOR_INC; \
861             } \
862             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
863             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
864          }
865
866 #define GENLIST_PART_EXPANDABLE_SWALLOW_PADDING \
867          part { name: "elm.swallow.pad"; \
868             type: SWALLOW; \
869             description { state: "default" 0.0; \
870                fixed: 1 0; \
871                align: 0.0 0.5; \
872                rel1 { \
873                   relative: 1.0 0.0;\
874                   to_x: "elm.padding.left"; \
875                } \
876                rel2.to_x: "elm.padding.left"; \
877             } \
878             GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
879             GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
880          } \
881
882 #define GENLIST_PART_PADDING_LEFT_SLIDE( param_padding_size ) \
883          part { name: "elm.padding.left"; \
884             type: RECT; \
885             scale: 1; \
886             description { \
887                state: "default" 0.0; \
888                min: param_padding_size 0; \
889                fixed: 1 0; \
890                visible: 0; \
891                rel1 { relative: 0.0 0.0; to: "bg"; } \
892                rel2 { relative: 0.0 1.0; to: "bg"; } \
893                align: 0.0 0.0; \
894             } \
895          }
896
897 /* only for demo */
898 #define GENLIST_PART_BUTTON( param_name, param_text_name, param_text, param_left, param_right, param_top, param_bottom ) \
899        part { name: param_name; \
900          mouse_events: 1; \
901          description { state: "default" 0.0; \
902             visible: 1; \
903             rel1 { relative: param_left param_top; offset: 0 0; } \
904             rel2 { relative: param_right param_bottom; offset: -1 -1; } \
905             image { \
906                normal: "btn_normal.png"; \
907                border: 10 10 10 10; \
908                border_scale: 1; \
909             } \
910             image.middle: SOLID; \
911             fill.smooth: 0; \
912          } \
913          description { state: "selected" 0.0;  \
914             inherit: "default" 0.0;  \
915             image { \
916                normal: "btn_selected.png"; \
917             } \
918          } \
919       } \
920       part { name: param_text_name;  \
921          type: TEXT;  \
922          mouse_events: 0; \
923          scale: 1; \
924          description {  \
925             align: 0.0 0.0; \
926             state: "default" 0.0;  \
927             color: 0 0 0 255;  \
928             rel1 { relative: 0.0 0.0; to: param_name; } \
929             rel2 { relative: 1.0 1.0; to: param_name; } \
930             text {  \
931                text: param_text; \
932                font: "SLP:style=Roman"; \
933                size: 24;  \
934                min: 1 1;  \
935                align: 0.5 0.5;  \
936                text_class: "list_item"; \
937             }  \
938          }  \
939       }
940
941 /* only for demo */
942 #define GENLIST_PROGRAM_BUTTON( param_name_focused, param_name_normal, param_part_name ) \
943       program { name: param_name_focused; \
944          source: param_part_name; \
945          signal: "mouse,down,1"; \
946          action:  STATE_SET "selected" 0.0;  \
947          target: param_part_name; \
948       } \
949       program { name: param_name_normal; \
950          source: param_part_name; \
951          signal: "mouse,up,1"; \
952          action:  STATE_SET "default" 0.0;  \
953          target: param_part_name; \
954       }
955
956 #define GENLIST_PROGRAM_SLIDE_WITH_AFTER( param_name, param_state, param_next ) \
957       program { name: param_name; \
958          action:  STATE_SET "hide" param_state; \
959          target: "bg"; \
960          transition: LINEAR 0.3; \
961          after: param_next; \
962       }
963
964 #define GENLIST_PROGRAM_SLIDE( param_name, param_state_name, param_state_value ) \
965       program { name: param_name; \
966          action:  STATE_SET param_state_name param_state_value; \
967          target: "bg"; \
968          transition: LINEAR 0.3; \
969       }
970
971 #define DESC_FLIP_IMAGE( param_state_value, param_image_file_name ) \
972       description { state: "flipping" param_state_value; \
973          inherit: "default" 0.0; \
974          image { normal: param_image_file_name; } \
975       }
976
977 #define DESC_TEXT_HIDE( param_state_value ) \
978    description { state: "hide" param_state_value; \
979       inherit: "default" 0.0; \
980       color: 0 0 0 (255*(1-param_state_value/0.20)); \
981    }
982
983 #define GENLIST_EDIT_PART_BASE( param_item_height ) \
984          part { name: "base"; \
985             type: RECT; \
986             repeat_events: 0; \
987             scale: 1; \
988             description { state: "default" 0.0; \
989                min: 0 param_item_height; \
990                color: 0 0 0 0; \
991             } \
992          }
993
994 // 2.2.7 Genlist_Edit mode (Rename)
995 #define GENLIST_PART_FLIP \
996          part { name: "flip_event_block";\
997             type: RECT;\
998             mouse_events: 0; \
999             repeat_events: 0;\
1000             description { state: "default" 0.0;\
1001                visible: 0; \
1002                color: 0 0 0 0; \
1003             } \
1004             description { state: "flip_enabled" 0.0; \
1005                inherit: "default" 0.0; \
1006                visible: 1; \
1007                color: GENLIST_PART_FLIP_BG_COLOR;\
1008             }\
1009          }\
1010          part { name: "elm.flip.content.left"; \
1011             type: RECT; \
1012             scale: 1; \
1013             description { state: "default" 0.0; \
1014                min: 16 0; \
1015                fixed: 1 0; \
1016                visible: 0; \
1017                align: 0 0.5; \
1018                rel1 { \
1019                   relative: 0 0; \
1020                   to_x: "base"; \
1021                   to_y: "base"; \
1022                } \
1023                rel2 { \
1024                   relative: 0 1; \
1025                   to_x: "base"; \
1026                   to_y: "base"; \
1027                } \
1028             } \
1029          } \
1030          part { name: "elm.flip.content"; \
1031             clip_to: "disclip"; \
1032             type: SWALLOW; \
1033             scale: 1; \
1034             GENLIST_DESCRIPTION_LR("elm.flip.content.left", "elm.flip.icon.left", fixed: 1 1; visible: 0;) \
1035             description { state: "flip_enabled" 0.0; \
1036                inherit: "default" 0.0; \
1037                visible: 1; \
1038             } \
1039          } \
1040          GENLIST_PART_PADDING_RIGHT_TO("elm.flip.icon.left", "elm.flip.icon", 16) \
1041          part { name: "elm.flip.icon"; \
1042             clip_to: "disclip"; \
1043             type: SWALLOW; \
1044             scale: 1; \
1045             description { state: "default" 0.0; \
1046                visible: 0; \
1047                fixed: 1 1; \
1048                align: 1 0.5; \
1049                max: 132 72; \
1050                rel1 { \
1051                   relative: 0 0; \
1052                   to_x: "elm.flip.icon.right"; \
1053                } \
1054                rel2 { \
1055                   relative: 0 1; \
1056                   to_x: "elm.flip.icon.right"; \
1057                } \
1058             } \
1059             description { state: "flip_enabled" 0.0; \
1060                inherit: "default" 0.0; \
1061                visible: 1; \
1062             } \
1063          } \
1064          part { name: "elm.flip.icon.right"; \
1065             type: RECT; \
1066             scale: 1; \
1067             description { state: "default" 0.0; \
1068                min: 16 0; \
1069                fixed: 1 0; \
1070                visible: 0; \
1071                align: 1 0.5; \
1072                rel1 { \
1073                   relative: 1 0; \
1074                   to_x: "base"; \
1075                   to_y: "base"; \
1076                } \
1077                rel2 { \
1078                   relative: 1 1; \
1079                   to_x: "base"; \
1080                   to_y: "base"; \
1081                } \
1082             } \
1083          }
1084
1085 #define GENLIST_DESCRIPTION_INVISIBLE_SELECTED \
1086             description { state: "selected" 1.0; \
1087                inherit: "default" 0.0; \
1088                visible: 0; \
1089             }
1090
1091 #define GENLIST_DESCRIPTION_FLIP_ENABLED \
1092             description { state: "flip_enabled" 0.0; \
1093                inherit: "default" 0.0; \
1094                visible: 0; \
1095             }
1096
1097 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_1TEXT \
1098             script { \
1099                new st[31]; \
1100                new Float:vl; \
1101                get_state(PART:"elm.text", st, 30, vl); \
1102                set_state(PART:"bg_image", "selected", 0.0); \
1103                if (!strcmp(st, "flip_enabled")) \
1104                   set_state(PART:"elm.text", "selected", 1.0); \
1105                else \
1106                   set_state(PART:"elm.text", "selected", 0.0); \
1107             }
1108
1109 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_2TEXT \
1110             script { \
1111                new st[31]; \
1112                new Float:vl; \
1113                get_state(PART:"elm.text.1", st, 30, vl); \
1114                set_state(PART:"bg_image", "selected", 0.0); \
1115                if (!strcmp(st, "flip_enabled")) { \
1116                   set_state(PART:"elm.text.1", "selected", 1.0); \
1117                   set_state(PART:"elm.text.2", "selected", 1.0); \
1118                } \
1119                else { \
1120                   set_state(PART:"elm.text.1", "selected", 0.0); \
1121                   set_state(PART:"elm.text.2", "selected", 0.0); \
1122                } \
1123             }
1124
1125 #define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_3TEXT \
1126             script { \
1127                new st[31]; \
1128                new Float:vl; \
1129                get_state(PART:"elm.text.1", st, 30, vl); \
1130                set_state(PART:"bg_image", "selected", 0.0); \
1131                if (!strcmp(st, "flip_enabled")) { \
1132                   set_state(PART:"elm.text.1", "selected", 1.0); \
1133                   set_state(PART:"elm.text.2", "selected", 1.0); \
1134                   set_state(PART:"elm.text.3", "selected", 1.0); \
1135                } \
1136                else { \
1137                   set_state(PART:"elm.text.1", "selected", 0.0); \
1138                   set_state(PART:"elm.text.2", "selected", 0.0); \
1139                   set_state(PART:"elm.text.3", "selected", 0.0); \
1140                } \
1141             }
1142
1143 #define GENLIST_PROGRAM_FLIP_1TEXT \
1144          program { name: "flip_enabled"; \
1145             signal: "elm,state,flip,enabled"; \
1146             source: "elm"; \
1147             action: STATE_SET "flip_enabled" 0.0; \
1148             target: "elm.text"; \
1149             target: "elm.flip.content"; \
1150          } \
1151          program { name: "flip_disabled"; \
1152             signal: "elm,state,flip,disabled"; \
1153             source: "elm"; \
1154             action: STATE_SET "default" 0.0; \
1155             target: "elm.text"; \
1156             target: "elm.flip.content"; \
1157          }
1158
1159 #define GENLIST_PROGRAM_FLIP_1TEXT_1ICON \
1160          program { name: "flip_enabled"; \
1161             signal: "elm,state,flip,enabled"; \
1162             source: "elm"; \
1163             action: STATE_SET "flip_enabled" 0.0; \
1164             target: "elm.text"; \
1165             target: "elm.icon"; \
1166             target: "elm.flip.content"; \
1167          } \
1168          program { name: "flip_disabled"; \
1169             signal: "elm,state,flip,disabled"; \
1170             source: "elm"; \
1171             action: STATE_SET "default" 0.0; \
1172             target: "elm.text"; \
1173             target: "elm.icon"; \
1174             target: "elm.flip.content"; \
1175          }
1176
1177 #define GENLIST_PROGRAM_FLIP_1TEXT_2ICON \
1178          program { name: "flip_enabled"; \
1179             signal: "elm,state,flip,enabled"; \
1180             source: "elm"; \
1181             action: STATE_SET "flip_enabled" 0.0; \
1182             target: "elm.text"; \
1183             target: "elm.icon.1"; \
1184             target: "elm.icon.2"; \
1185             target: "elm.flip.content"; \
1186          } \
1187          program { name: "flip_disabled"; \
1188             signal: "elm,state,flip,disabled"; \
1189             source: "elm"; \
1190             action: STATE_SET "default" 0.0; \
1191             target: "elm.text"; \
1192             target: "elm.icon.1"; \
1193             target: "elm.icon.2"; \
1194             target: "elm.flip.content"; \
1195          }
1196
1197 #define GENLIST_PROGRAM_FLIP_1TEXT_3ICON \
1198          program { name: "flip_enabled"; \
1199             signal: "elm,state,flip,enabled"; \
1200             source: "elm"; \
1201             action: STATE_SET "flip_enabled" 0.0; \
1202             target: "elm.text"; \
1203             target: "elm.icon.1"; \
1204             target: "elm.icon.2"; \
1205             target: "elm.icon.3"; \
1206             target: "elm.flip.content"; \
1207          } \
1208          program { name: "flip_disabled"; \
1209             signal: "elm,state,flip,disabled"; \
1210             source: "elm"; \
1211             action: STATE_SET "default" 0.0; \
1212             target: "elm.text"; \
1213             target: "elm.icon.1"; \
1214             target: "elm.icon.2"; \
1215             target: "elm.icon.3"; \
1216             target: "elm.flip.content"; \
1217          }
1218
1219 #define GENLIST_PROGRAM_FLIP_2TEXT \
1220          program { name: "flip_enabled"; \
1221             signal: "elm,state,flip,enabled"; \
1222             source: "elm"; \
1223             action: STATE_SET "flip_enabled" 0.0; \
1224             target: "elm.text.1"; \
1225             target: "elm.text.2"; \
1226             target: "elm.flip.content"; \
1227          } \
1228          program { name: "flip_disabled"; \
1229             signal: "elm,state,flip,disabled"; \
1230             source: "elm"; \
1231             action: STATE_SET "default" 0.0; \
1232             target: "elm.text.1"; \
1233             target: "elm.text.2"; \
1234             target: "elm.flip.content"; \
1235          }
1236
1237 #define GENLIST_PROGRAM_FLIP_2TEXT_1ICON \
1238          program { name: "flip_enabled"; \
1239             signal: "elm,state,flip,enabled"; \
1240             source: "elm"; \
1241             action: STATE_SET "flip_enabled" 0.0; \
1242             target: "elm.text.1"; \
1243             target: "elm.text.2"; \
1244             target: "elm.icon"; \
1245             target: "elm.flip.content"; \
1246          } \
1247          program { name: "flip_disabled"; \
1248             signal: "elm,state,flip,disabled"; \
1249             source: "elm"; \
1250             action: STATE_SET "default" 0.0; \
1251             target: "elm.text.1"; \
1252             target: "elm.text.2"; \
1253             target: "elm.icon"; \
1254             target: "elm.flip.content"; \
1255          }
1256
1257 #define GENLIST_PROGRAM_FLIP_2TEXT_2ICON \
1258          program { name: "flip_enabled"; \
1259             signal: "elm,state,flip,enabled"; \
1260             source: "elm"; \
1261             action: STATE_SET "flip_enabled" 0.0; \
1262             target: "elm.text.1"; \
1263             target: "elm.text.2"; \
1264             target: "elm.icon.1"; \
1265             target: "elm.icon.2"; \
1266             target: "elm.flip.content"; \
1267          } \
1268          program { name: "flip_disabled"; \
1269             signal: "elm,state,flip,disabled"; \
1270             source: "elm"; \
1271             action: STATE_SET "default" 0.0; \
1272              target: "elm.text.1"; \
1273             target: "elm.text.2"; \
1274             target: "elm.icon.1"; \
1275             target: "elm.icon.2"; \
1276             target: "elm.flip.content"; \
1277          }
1278
1279 #define GENLIST_PROGRAM_FLIP_2TEXT_3ICON \
1280          program { name: "flip_enabled"; \
1281             signal: "elm,state,flip,enabled"; \
1282             source: "elm"; \
1283             action: STATE_SET "flip_enabled" 0.0; \
1284             target: "elm.text.1"; \
1285             target: "elm.text.2"; \
1286             target: "elm.icon.1"; \
1287             target: "elm.icon.2"; \
1288             target: "elm.icon.3"; \
1289             target: "elm.flip.content"; \
1290          } \
1291          program { name: "flip_disabled"; \
1292             signal: "elm,state,flip,disabled"; \
1293             source: "elm"; \
1294             action: STATE_SET "default" 0.0; \
1295             target: "elm.text.1"; \
1296             target: "elm.text.2"; \
1297             target: "elm.icon.1"; \
1298             target: "elm.icon.2"; \
1299             target: "elm.icon.3"; \
1300             target: "elm.flip.content"; \
1301          }
1302
1303 #define GENLIST_PROGRAM_FLIP_3TEXT \
1304          program { name: "flip_enabled"; \
1305             signal: "elm,state,flip,enabled"; \
1306             source: "elm"; \
1307             action: STATE_SET "flip_enabled" 0.0; \
1308             target: "elm.text.1"; \
1309             target: "elm.text.2"; \
1310             target: "elm.text.3"; \
1311             target: "elm.flip.content"; \
1312          } \
1313          program { name: "flip_disabled"; \
1314             signal: "elm,state,flip,disabled"; \
1315             source: "elm"; \
1316             action: STATE_SET "default" 0.0; \
1317             target: "elm.text.1"; \
1318             target: "elm.text.2"; \
1319             target: "elm.text.3"; \
1320             target: "elm.flip.content"; \
1321          }
1322
1323 #define GENLIST_PROGRAM_FLIP_3TEXT_1ICON \
1324          program { name: "flip_enabled"; \
1325             signal: "elm,state,flip,enabled"; \
1326             source: "elm"; \
1327             action: STATE_SET "flip_enabled" 0.0; \
1328             target: "elm.text.1"; \
1329             target: "elm.text.2"; \
1330             target: "elm.text.3"; \
1331             target: "elm.icon"; \
1332             target: "elm.flip.content"; \
1333          } \
1334          program { name: "flip_disabled"; \
1335             signal: "elm,state,flip,disabled"; \
1336             source: "elm"; \
1337             action: STATE_SET "default" 0.0; \
1338             target: "elm.text.1"; \
1339             target: "elm.text.2"; \
1340             target: "elm.text.3"; \
1341             target: "elm.icon"; \
1342             target: "elm.flip.content"; \
1343          }
1344
1345 #define GENLIST_PROGRAM_FLIP_3TEXT_2ICON \
1346          program { name: "flip_enabled"; \
1347             signal: "elm,state,flip,enabled"; \
1348             source: "elm"; \
1349             action: STATE_SET "flip_enabled" 0.0; \
1350             target: "elm.text.1"; \
1351             target: "elm.text.2"; \
1352             target: "elm.text.3"; \
1353             target: "elm.icon.1"; \
1354             target: "elm.icon.2"; \
1355             target: "elm.flip.content"; \
1356          } \
1357          program { name: "flip_disabled"; \
1358             signal: "elm,state,flip,disabled"; \
1359             source: "elm"; \
1360             action: STATE_SET "default" 0.0; \
1361             target: "elm.text.1"; \
1362             target: "elm.text.2"; \
1363             target: "elm.text.3"; \
1364             target: "elm.icon.1"; \
1365             target: "elm.icon.2"; \
1366             target: "elm.flip.content"; \
1367          }
1368
1369 #define GENLIST_PROGRAM_FLIP_3TEXT_3ICON \
1370          program { name: "flip_enabled"; \
1371             signal: "elm,state,flip,enabled"; \
1372             source: "elm"; \
1373             action: STATE_SET "flip_enabled" 0.0; \
1374             target: "elm.text.1"; \
1375             target: "elm.text.2"; \
1376             target: "elm.text.3"; \
1377             target: "elm.icon.1"; \
1378             target: "elm.icon.2"; \
1379             target: "elm.icon.3"; \
1380             target: "elm.flip.content"; \
1381          } \
1382          program { name: "flip_disabled"; \
1383             signal: "elm,state,flip,disabled"; \
1384             source: "elm"; \
1385             action: STATE_SET "default" 0.0; \
1386             target: "elm.text.1"; \
1387             target: "elm.text.2"; \
1388             target: "elm.text.3"; \
1389             target: "elm.icon.1"; \
1390             target: "elm.icon.2"; \
1391             target: "elm.icon.3"; \
1392             target: "elm.flip.content"; \
1393          }
1394
1395 /* genlist multisense macro - start */
1396 #define GENLIST_PROGRAM_AFTER_PLAY_BUTTON_PRESS \
1397             after: "play_button_press";
1398
1399 #define GENLIST_PROGRAM_PLAY_BUTTON_PRESS \
1400          program { name: "play_button_press"; \
1401             action: PLAY_SAMPLE "button-pressed" 1.0; \
1402          }
1403
1404 // signal: elm,state,%s,active
1405 //   a "check" item named %s went active
1406 // signal: elm,state,%s,passive
1407 //   a "check" item named %s went passive
1408 // default is passive
1409 #define GENLIST_PROGRAM_DISCLIP( TARGET ) \
1410          program { name: "enabled"; \
1411             signal: "elm,state,enabled"; \
1412             source: "elm"; \
1413             action: STATE_SET "default" 0.0; \
1414             target: "disclip"; \
1415             TARGET \
1416          } \
1417          program { name: "disabled"; \
1418             signal: "elm,state,disabled"; \
1419             source: "elm"; \
1420             action: STATE_SET "disabled" 0.0; \
1421             target: "disclip"; \
1422             TARGET \
1423          }
1424
1425 #define GENLIST_PROGRAM_SELECT( TARGET ) \
1426          program { name: "selected"; \
1427             signal: "elm,state,selected"; \
1428             source: "elm"; \
1429             action: STATE_SET "selected" 0.0; \
1430             target: "bg_image"; \
1431             TARGET \
1432             after: "play_button_press"; \
1433          } \
1434          program { name: "unselected"; \
1435             signal: "elm,state,unselected"; \
1436             source: "elm"; \
1437             action: STATE_SET "default" 0.0; \
1438             target: "bg_image"; \
1439             TARGET \
1440             transition: LINEAR 0.1; \
1441          } \
1442          program { name: "play_button_press"; \
1443             action: PLAY_SAMPLE "button-pressed" 1.0; \
1444          }
1445
1446
1447
1448 #define GENLIST_PROGRAM_REORDER \
1449          program { name: "reorder_enabled"; \
1450             signal: "elm,state,reorder,mode_set"; \
1451             source: "elm"; \
1452             action: STATE_SET "reorder" 0.0; \
1453             target: "base"; \
1454             target: "reorder.padding.left"; \
1455             target: "reorder.padding.top"; \
1456             target: "bottom_line"; \
1457          } \
1458          program { name: "reorder_disabled"; \
1459             signal: "elm,state,reorder,mode_unset"; \
1460             source: "elm"; \
1461             action: STATE_SET "default" 0.0; \
1462             target: "base"; \
1463             target: "reorder.padding.left"; \
1464             target: "reorder.padding.top"; \
1465             target: "bottom_line"; \
1466          } \
1467          program { name: "reorder_enabled_effect"; \
1468             signal: "elm,state,reorder_enabled_effect"; \
1469             source: "elm"; \
1470             action: STATE_SET "reorder" 0.0; \
1471             transition: DECELERATE 0.7; \
1472             target: "base"; \
1473             target: "reorder.padding.left"; \
1474             target: "reorder.padding.top"; \
1475             target: "bottom_line"; \
1476          } \
1477          program { name: "reorder_disabled_effect"; \
1478             signal: "elm,state,reorder_disabled_effect"; \
1479             source: "elm"; \
1480             action: STATE_SET "default" 0.0; \
1481             transition: DECELERATE 0.7; \
1482             target: "base"; \
1483             target: "reorder.padding.left"; \
1484             target: "reorder.padding.top"; \
1485             target: "bottom_line"; \
1486          } \
1487
1488 #define GENLIST_PROGRAM_FLIP_TARGET( DISABLE_TARGET, FLIP_TARGET ) \
1489          program { name: "flip_enabled"; \
1490             signal:  "elm,state,flip,enabled"; \
1491             source:  "elm"; \
1492             action:  STATE_SET "flip_enabled" 0.0; \
1493             DISABLE_TARGET \
1494             after:   "flip_enabled_next"; \
1495          } \
1496          program { name:    "flip_enabled_next"; \
1497             action:  STATE_SET "flip_enabled" 0.0; \
1498             transition: DECELERATE 0.5; \
1499             FLIP_TARGET \
1500          } \
1501          program { name:    "flip_disabled"; \
1502             signal:  "elm,state,flip,disabled"; \
1503             source:  "elm"; \
1504             action:  STATE_SET "default" 0.0; \
1505             transition: DECELERATE 0.5; \
1506             FLIP_TARGET \
1507             after:   "flip_disabled_next"; \
1508          } \
1509          program { name:    "flip_disabled_next"; \
1510             source:  "elm"; \
1511             action:  STATE_SET "default" 0.0; \
1512             DISABLE_TARGET \
1513          }
1514
1515 #define GENLIST_PROGRAM_FLIP( TARGET ) \
1516          program { name: "flip_enabled"; \
1517             signal:  "elm,state,flip,enabled"; \
1518             source:  "elm"; \
1519             action:  STATE_SET "flip_enabled" 0.0; \
1520             TARGET \
1521             after:   "flip_enabled_next"; \
1522          } \
1523          program { name:    "flip_enabled_next"; \
1524             action:  STATE_SET "flip_enabled" 0.0; \
1525             transition: DECELERATE 0.5; \
1526             target: "elm.flip.content"; \
1527             target: "elm.flip.icon"; \
1528          } \
1529          program { name:    "flip_disabled"; \
1530             signal:  "elm,state,flip,disabled"; \
1531             source:  "elm"; \
1532             action:  STATE_SET "default" 0.0; \
1533             transition: DECELERATE 0.5; \
1534             target: "elm.flip.content"; \
1535             target: "elm.flip.icon"; \
1536             after:   "flip_disabled_next"; \
1537          } \
1538          program { name:    "flip_disabled_next"; \
1539             source:  "elm"; \
1540             action:  STATE_SET "default" 0.0; \
1541             TARGET \
1542          }
1543 /* genlist multisense macro - end */