2 * Copyright (c) 2009 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 /* genlist multisense sample/tone listing */
22 name: "button-pressed" RAW;
23 source: "Tizen_touch.wav";
27 //****************************************************************************//
28 // ******************************* Default size macro **********************//
29 //**************************************************************************//
30 // if size is different for each theme, split it into each theme inc.
32 #define CUTOMIZED_EDITFIELD_BG_COLOR 47 49 52 255 // the original color is 255 255 255 255
33 #define GENLIST_ENTRY_RENAME_COLOR 177 177 177 255
34 #define GENLIST_LIST_BG_COLOR 248 246 239 255
35 #define GENLIST_LIST_PRESS_COLOR 87 135 194 255
36 #define GENLIST_LIST_DIM_COLOR 219 217 212 255
37 #define GENLIST_LIST_LINE1_COLOR 211 209 203 255
38 #define GENLIST_LIST_LINE2_COLOR 255 255 255 255
40 #define GENLIST_PART_LIST_LINE_HEIGHT 1
42 #define GENLIST_PADDING_SIZE_DEFAULT 16
43 #define GENLIST_PADDING_SIZE_LEFT 16
44 #define GENLIST_PADDING_SIZE_RIGHT 16
45 // Dialogue group image has bottom padding (2piexl), Giant font can overlapped bottom line of image.
46 #define GENLIST_PADDING_SIZE_TOP 2
47 #define GENLIST_PADDING_SIZE_BOTTOM 2
48 #define DIALOGUE_PADDING_SIZE_LEFT 16
49 #define DIALOGUE_PADDING_SIZE_RIGHT 16
51 #define GENLIST_ICON_MEDIUM_SIZE 72
52 #define GENLIST_ICON_ENTRY_SIZE 54
54 #define GENLIST_TREESIZE_DEFAULT 26
56 //#define GENLIST_DIALOGUE_SEPARATOR_DEFAULT_HEIGHT 40
58 //****************************************************************************//
59 // ***************** EDJE description have 24 patterns **********************//
60 //**************************************************************************//
64 #define GENLIST_DESCRIPTION_ENVELOP( PART, PARAM ) \
65 description { state: "default" 0.0;\
78 // ---------------------
79 // left | HERE | right
80 // ---------------------
82 #define GENLIST_DESCRIPTION( left, right, top, bottom, param ) \
83 description { state: "default" 0.0;\
97 // ---------------------
99 // ---------------------
100 #define GENLIST_DESCRIPTION_L( left, param ) \
101 description { state: "default" 0.0;\
117 // ---------------------
119 // ---------------------
120 #define GENLIST_DESCRIPTION_R( right, param ) \
121 description { state: "default" 0.0;\
137 // --------------------------
138 // left |--> HERE <--| right
139 // --------------------------
140 #define GENLIST_DESCRIPTION_LR( left, right, param ) \
141 description { state: "default" 0.0;\
160 #define GENLIST_DESCRIPTION_RTB( right, top, bottom, param ) \
161 description { state: "default" 0.0;\
177 // ---------------------
179 #define GENLIST_DESCRIPTION_RT( right, top, param ) \
180 description { state: "default" 0.0;\
195 #define GENLIST_PROLOG \
196 data.item: "stacking" "above"; \
197 data.item: "selectraise" "on"; \
198 data.item: "treesize" 0;
200 #define GENLIST_PROLOG_NORMAL \
202 data.item: "treesize" GENLIST_TREESIZE_DEFAULT; \
203 data.item: "flips" "elm.flip.icon elm.flip.content elm.flip.eraser"; \
205 image : "editfield/00_list_group_bg.png" COMP; \
206 image : "editfield/00_list_group_bg_press.png" COMP; \
209 #define GENLIST_PROLOG_DIALOGUE \
211 data.item: "flips" "elm.flip.icon elm.flip.content elm.flip.eraser"; \
213 image : "editfield/00_list_group_bg.png" COMP; \
214 image : "editfield/00_list_group_bg_press.png" COMP; \
215 image : "editfield/00_list_group_bg_top.png" COMP; \
216 image : "editfield/00_list_group_bg_top_press.png" COMP; \
217 image : "editfield/00_list_group_bg_center.png" COMP; \
218 image : "editfield/00_list_group_bg_center_press.png" COMP; \
219 image : "editfield/00_list_group_bg_bottom.png" COMP; \
220 image : "editfield/00_list_group_bg_bottom_press.png" COMP; \
221 image : "editfield/00_list_group_bg_top_focus.png" COMP; \
222 image : "editfield/00_list_group_bg_center_focus.png" COMP; \
223 image : "editfield/00_list_group_bg_bottom_focus.png" COMP; \
226 #define GENLIST_NAME(NAME) \
227 name: "elm/genlist/item/"NAME; \
228 alias: "elm/genlist/item_odd/"NAME; \
229 alias: "elm/genlist/item_compress/"NAME; \
230 alias: "elm/genlist/item_compress_odd/"NAME; \
231 alias: "elm/genlist/tree/"NAME; \
232 alias: "elm/genlist/tree_odd/"NAME; \
233 alias: "elm/genlist/tree_compress/"NAME; \
234 alias: "elm/genlist/tree_compress_odd/"NAME; \
236 /*****************************************************************************/
237 /******************************* Dialogue group ******************************/
238 /*****************************************************************************/
239 #define GENLIST_DIALOGUE_INHERIT_BODY( _PARTS ) \
240 data.item: "treesize" 0; \
242 GENLIST_PART_BG_NORMAL_OFF \
243 GENLIST_PART_BOTTOM_LINE_OFF \
244 GENLIST_PART_BG_DIALOGUE \
245 GENLIST_PART_PADDING_LEFT_SIZE( DIALOGUE_PADDING_SIZE_LEFT ) \
246 GENLIST_PART_PADDING_RIGHT_EDIT \
249 GENLIST_PART_FOCUS_DIALOGUE \
252 //****************************************************************************//
253 // ****************************** BG Image **********************************//
254 //****************************************************************************//
255 #define GENLIST_PART_BG_NORMAL \
256 GENLIST_PART_RECT("bg_clip", \
258 description { state: "default" 0.0; \
260 color: 255 255 255 255; \
262 description { state: "decorate" 0.0; \
263 inherit: "default" 0.0; \
266 description { state: "reorder" 0.0; \
267 inherit: "default" 0.0; \
270 description { state: "decorate_reorder" 0.0; \
271 inherit: "default" 0.0; \
275 GENLIST_PART_RECT("bg_reorder_clip", \
277 description { state: "default" 0.0; \
280 description { state: "reorder" 0.0; \
281 inherit: "default" 0.0; \
283 color: 255 255 255 255; \
285 description { state: "decorate_reorder" 0.0; \
286 inherit: "default" 0.0; \
289 description { state: "decorate" 0.0; \
290 inherit: "default" 0.0; \
293 description { state: "reorder_flip" 0.0; \
294 inherit: "default" 0.0; \
298 GENLIST_PART_RECT("bg", \
299 clip_to: "bg_clip"; \
300 description { state: "default" 0.0; \
301 color: GENLIST_LIST_BG_COLOR; \
303 description { state: "selected" 0.0; \
304 inherit: "default" 0.0; \
305 color: GENLIST_LIST_PRESS_COLOR; \
307 description { state: "disabled" 0.0; \
308 inherit: "default" 0.0; \
309 color: GENLIST_LIST_DIM_COLOR; \
312 GENLIST_PART_SPACER("bg_reorder_left", \
313 description { state: "default" 0.0; \
318 rel2.relative: 0 1; \
321 GENLIST_PART_SPACER("bg_reorder_right", \
322 description { state: "default" 0.0; \
327 rel1.relative: 1 0; \
330 GENLIST_PART_IMAGE("bg_reorder", \
331 clip_to: "bg_reorder_clip"; \
332 GENLIST_DESCRIPTION_LR("bg_reorder_left", "bg_reorder_right", \
338 description { state: "selected" 0.0; \
339 inherit: "default"; \
341 normal: "editfield/00_list_group_bg_press.png"; \
346 description { state: "flipped" 0.0; \
347 inherit: "default"; \
352 #define GENLIST_PART_BG_NORMAL_OFF \
353 GENLIST_PART_RECT("bg_clip", \
355 description { state: "default" 0.0; \
358 description { state: "decorate" 0.0; \
359 inherit: "default" 0.0; \
362 description { state: "reorder" 0.0; \
363 inherit: "default" 0.0; \
366 description { state: "decorate_reorder" 0.0; \
367 inherit: "default" 0.0; \
371 GENLIST_PART_RECT("bg", \
373 description { state: "default" 0.0; \
376 description { state: "selected" 0.0; \
379 description { state: "disabled" 0.0; \
383 GENLIST_PART_RECT("bg_reorder_clip", \
385 description { state: "default" 0.0; \
388 description { state: "reorder" 0.0; \
391 description { state: "decorate_reorder" 0.0; \
394 description { state: "decorate" 0.0; \
397 description { state: "reorder_flip" 0.0; \
401 GENLIST_PART_IMAGE("bg_reorder", \
403 description {state: "default" 0.0;\
406 description { state: "selected" 0.0; {\
409 description { state: "flipped" 0.0; {\
414 #define GENLIST_PART_BG_DIALOGUE \
415 GENLIST_PART_RECT("bg_dialogue_clip", \
416 description { state: "default" 0.0; \
417 color: CUTOMIZED_EDITFIELD_BG_COLOR; \
419 description { state: "2depth" 0.0; \
420 color: 220 218 211 255; \
423 GENLIST_PART_SPACER("bg_dialogue_left", \
424 description { state: "default" 0.0; \
429 rel2.relative: 0 1; \
432 GENLIST_PART_SPACER("bg_dialogue_right", \
433 description { state: "default" 0.0; \
438 rel1.relative: 1 0; \
440 description { state: "editmode" 0.0; \
441 inherit: "default" 0.0; \
442 min: (GENLIST_PADDING_SIZE_DEFAULT*2+GENLIST_ICON_MEDIUM_SIZE) 0; \
443 max: (GENLIST_PADDING_SIZE_DEFAULT*2+GENLIST_ICON_MEDIUM_SIZE) 0; \
446 GENLIST_PART_IMAGE("bg_dialogue", \
447 insert_after: "base"; \
448 clip_to: "bg_dialogue_clip"; \
449 GENLIST_DESCRIPTION_LR("bg_dialogue_left", "bg_dialogue_right", \
455 description { state: "selected" 0.0; \
456 inherit: "default" 0.0; \
458 normal: "editfield/00_list_group_bg_press.png"; \
463 description { state: "top" 0.0; \
464 inherit: "default" 0.0; \
466 normal: "editfield/00_list_group_bg_top.png"; \
471 description { state: "top_selected" 0.0; \
472 inherit: "default" 0.0; \
474 normal: "editfield/00_list_group_bg_top_press.png"; \
479 description { state: "center" 0.0; \
480 inherit: "default" 0.0; \
482 normal: "editfield/00_list_group_bg_center.png"; \
487 description { state: "center_selected" 0.0; \
488 inherit: "default" 0.0; \
490 normal: "editfield/00_list_group_bg_center_press.png"; \
495 description { state: "bottom" 0.0; \
496 inherit: "default" 0.0; \
498 normal: "editfield/00_list_group_bg_bottom.png"; \
503 description { state: "bottom_selected" 0.0; \
504 inherit: "default" 0.0; \
506 normal: "editfield/00_list_group_bg_bottom_press.png"; \
513 //****************************************************************************//
514 // ****************************** BASE ********************************//
515 //****************************************************************************//
516 #define GENLIST_PART_BASE_SIZE(HEIGHT) \
517 part { name: "base"; \
521 description { state: "default" 0.0; \
525 description { state: "disabled" 0.0; \
526 inherit: "default"; \
529 part { name: "state"; \
533 description { state: "default" 0.0; \
536 description { state: "decorate" 0.0; \
537 inherit: "default"; \
539 description { state: "reorder" 0.0; \
540 inherit: "default"; \
542 description { state: "decorate_reorder" 0.0; \
543 inherit: "default"; \
547 #define GENLIST_PART_BASE \
548 GENLIST_PART_BASE_SIZE(0)
550 #define GENLIST_PART_FOCUS \
551 GENLIST_PART_IMAGE("focus_part", \
553 description { state: "default" 0.0; \
556 normal: "editfield/00_focus.png"; \
560 description { state: "focused" 0.0; \
561 inherit: "default" 0.0; \
566 #define GENLIST_PART_FOCUS_DIALOGUE \
567 GENLIST_PART_IMAGE("focus_part", \
569 GENLIST_DESCRIPTION_LR("bg_dialogue_left", "bg_dialogue_right", \
572 normal: "editfield/00_focus.png"; \
576 description { state: "focused" 0.0; \
577 inherit: "default" 0.0; \
580 description { state: "top_focused" 0.0; \
581 inherit: "default" 0.0; \
584 normal: "editfield/00_list_group_bg_top_focus.png"; \
588 description { state: "center_focused" 0.0; \
589 inherit: "default" 0.0; \
592 normal: "editfield/00_list_group_bg_center_focus.png"; \
596 description { state: "bottom_focused" 0.0; \
597 inherit: "default" 0.0; \
600 normal: "editfield/00_list_group_bg_bottom_focus.png"; \
606 //****************************************************************************//
607 // ****************************** LINE ********************************//
608 //****************************************************************************//
609 #define GENLIST_PART_BOTTOM_LINE \
610 GENLIST_PART_RECT("bottom_line_clip", \
611 description { state: "default" 0.0; \
612 color: 255 255 255 255; \
614 description { state: "decorate" 0.0; \
615 inherit: "default" 0.0; \
618 description { state: "reorder" 0.0; \
619 inherit: "default" 0.0; \
622 description { state: "decorate_reorder" 0.0; \
623 inherit: "default" 0.0; \
627 GENLIST_PART_RECT("bottom_line", \
629 clip_to: "bottom_line_clip"; \
630 description { state: "default" 0.0; \
631 min: 0 GENLIST_PART_LIST_LINE_HEIGHT; \
632 max: -1 GENLIST_PART_LIST_LINE_HEIGHT; \
635 color: GENLIST_LIST_LINE1_COLOR; \
636 rel1.to: "bottom_line2"; \
637 rel2.to: "bottom_line2"; \
638 rel2.relative: 1 0; \
639 rel1.offset: -1 -1; \
641 description { state: "selected" 0.0; \
642 inherit: "default" 0.0; \
643 color: GENLIST_LIST_PRESS_COLOR; \
645 description { state: "disabled" 0.0; \
646 inherit: "default" 0.0; \
647 color: GENLIST_LIST_DIM_COLOR; \
649 description { state: "flipped" 0.0; \
650 inherit: "default" 0.0; \
654 GENLIST_PART_RECT("bottom_line2", \
656 clip_to: "bottom_line_clip"; \
657 description { state: "default" 0.0; \
658 min: 0 GENLIST_PART_LIST_LINE_HEIGHT; \
659 max: -1 GENLIST_PART_LIST_LINE_HEIGHT; \
662 color: GENLIST_LIST_LINE2_COLOR; \
663 rel1.to_x: "elm.padding.left"; \
664 rel1.relative: 1 0; \
665 rel2.to_x: "elm.padding.right"; \
666 rel2.relative: 0 1; \
667 rel1.offset: -1 -1; \
669 description { state: "selected" 0.0; \
670 inherit: "default" 0.0; \
671 color: GENLIST_LIST_PRESS_COLOR; \
673 description { state: "disabled" 0.0; \
674 inherit: "default" 0.0; \
675 color: GENLIST_LIST_DIM_COLOR; \
677 description { state: "flipped" 0.0; \
678 inherit: "default" 0.0; \
683 #define GENLIST_PART_BOTTOM_LINE_OFF \
684 GENLIST_PART_RECT("bottom_line", \
686 description { state: "default" 0.0; \
689 description { state: "selected" 0.0; \
692 description { state: "disabled" 0.0; \
695 description { state: "decorate" 0.0; \
699 GENLIST_PART_RECT("bottom_line2", \
701 description { state: "default" 0.0; \
704 description { state: "selected" 0.0; \
707 description { state: "disabled" 0.0; \
710 description { state: "decorate" 0.0; \
715 //****************************************************************************//
716 //********************************* PADDING **********************************//
717 //****************************************************************************//
718 #define GENLIST_PART_EXPANDED_PAD \
719 part { name: "elm.swallow.pad"; \
723 description { state: "default" 0.0; \
730 rel2.relative: 0.0 1.0; \
734 #define GENLIST_PART_PADDING( NAME, SIZE, REL1, REL2 ) \
735 GENLIST_PART_SPACER(NAME, \
736 description { state: "default" 0.0; \
752 #define GENLIST_DESCRIPTION_DECORATE_PADDING \
753 description { state: "decorate" 0.0; \
754 inherit: "default" 0.0; \
759 #define GENLIST_DESCRIPTION_DECORATE_REORDER_PADDING \
760 description { state: "decorate_reorder" 0.0; \
761 inherit: "default" 0.0; \
766 #define GENLIST_DESCRIPTION_REORDER_PADDING \
767 description { state: "reorder" 0.0; \
768 inherit: "default" 0.0; \
773 #define GENLIST_PART_PADDING_LEFT \
774 GENLIST_PART_EXPANDED_PAD \
775 GENLIST_PART_SPACER("elm.padding.left", \
776 GENLIST_DESCRIPTION_L("elm.swallow.pad", \
777 min: GENLIST_PADDING_SIZE_LEFT 0; \
778 max: GENLIST_PADDING_SIZE_LEFT -1; \
781 GENLIST_DESCRIPTION_DECORATE_PADDING \
782 GENLIST_DESCRIPTION_REORDER_PADDING \
783 GENLIST_DESCRIPTION_DECORATE_REORDER_PADDING \
786 #define GENLIST_PART_PADDING_LEFT_SIZE( SIZE ) \
787 GENLIST_PART_EXPANDED_PAD \
788 GENLIST_PART_SPACER("elm.padding.left", \
789 GENLIST_DESCRIPTION_L("elm.swallow.pad", \
794 GENLIST_DESCRIPTION_DECORATE_PADDING \
795 GENLIST_DESCRIPTION_REORDER_PADDING \
796 GENLIST_DESCRIPTION_DECORATE_REORDER_PADDING \
799 #define GENLIST_PART_EDITBTN \
800 GENLIST_PART_SPACER("elm.padding.edit.right", \
801 description { state: "default" 0.0; \
804 rel1.relative: 1 0; \
805 min: GENLIST_PADDING_SIZE_RIGHT 0; \
806 max: GENLIST_PADDING_SIZE_RIGHT -1; \
809 GENLIST_PART_ICON("elm.icon.edit", \
810 GENLIST_DESCRIPTION_R("elm.padding.edit.right", \
813 description { state: "editmode" 0.0; \
814 inherit: "default" 0.0; \
817 min: GENLIST_ICON_MEDIUM_SIZE GENLIST_ICON_MEDIUM_SIZE; \
818 max: GENLIST_ICON_MEDIUM_SIZE GENLIST_ICON_MEDIUM_SIZE; \
822 #define GENLIST_PART_PADDING_RIGHT \
823 GENLIST_PART_SPACER("elm.padding.right", \
824 description { state: "default" 0.0; \
825 min: GENLIST_PADDING_SIZE_RIGHT 0; \
826 max: GENLIST_PADDING_SIZE_RIGHT -1; \
831 rel1.relative: 1 0; \
833 GENLIST_DESCRIPTION_DECORATE_PADDING \
834 GENLIST_DESCRIPTION_REORDER_PADDING \
835 GENLIST_DESCRIPTION_DECORATE_REORDER_PADDING \
839 // FIXME: Use RECT instead of SPACER if this group is used on layout
840 // for blocking events
841 #define GENLIST_PART_PADDING_RIGHT_EDIT \
842 GENLIST_PART_SPACER("elm.padding.right", \
843 GENLIST_DESCRIPTION_R("elm.padding.right.edit", \
844 min: DIALOGUE_PADDING_SIZE_RIGHT 0; \
845 max: DIALOGUE_PADDING_SIZE_RIGHT -1; \
848 GENLIST_DESCRIPTION_DECORATE_PADDING \
849 GENLIST_DESCRIPTION_REORDER_PADDING \
850 GENLIST_DESCRIPTION_DECORATE_REORDER_PADDING \
852 GENLIST_PART_SPACER("elm.padding.right.edit", \
853 description { state: "default" 0.0; \
858 rel1.relative: 1 0; \
860 description { state: "editmode" 0.0; \
861 inherit: "default" 0.0; \
862 min: (GENLIST_PADDING_SIZE_DEFAULT+GENLIST_ICON_MEDIUM_SIZE) 0; \
863 max: (GENLIST_PADDING_SIZE_DEFAULT+GENLIST_ICON_MEDIUM_SIZE) -1; \
868 #define GENLIST_PART_PADDING_TOP \
869 GENLIST_PART_SPACER("elm.padding.top", \
871 state: "default" 0.0; \
872 min: 0 GENLIST_PADDING_SIZE_TOP; \
873 max: -1 GENLIST_PADDING_SIZE_TOP; \
877 rel2.relative: 1.0 0.0; \
882 #define GENLIST_PART_PADDING_TOP_SIZE( SIZE ) \
883 GENLIST_PART_SPACER("elm.padding.top", \
885 state: "default" 0.0; \
891 rel2.relative: 1.0 0.0; \
896 #define GENLIST_PART_PADDING_BOTTOM \
897 GENLIST_PART_SPACER("elm.padding.bottom", \
898 description { state: "default" 0.0; \
899 min: 0 GENLIST_PADDING_SIZE_BOTTOM; \
900 max: -1 GENLIST_PADDING_SIZE_BOTTOM; \
904 rel1.relative: 0.0 1.0; \
909 #define GENLIST_PART_PADDING_BOTTOM_SIZE( SIZE ) \
910 GENLIST_PART_SPACER("elm.padding.bottom", \
911 description { state: "default" 0.0; \
917 rel1.relative: 0.0 1.0; \
922 #define GENLIST_PART_PADDING_R( NAME, RIGHT ) \
923 GENLIST_PART_SPACER(NAME, \
924 description { state: "default" 0.0; \
926 min: GENLIST_PADDING_SIZE_DEFAULT 0; \
927 max: GENLIST_PADDING_SIZE_DEFAULT -1; \
941 // 2.2.7 Genlist_Edit mode (Rename)
942 // FIXME: padding is not needed when swallow content is NULL.
943 // But how can edje know existence of swallow content?
944 #define GENLIST_PART_FLIP \
945 GENLIST_PART_RECT("elm.flip.bg", \
947 description { state: "default" 0.0;\
950 description { state: "flipped" 0.0; \
951 inherit: "default" 0.0; \
953 color: GENLIST_LIST_BG_COLOR;\
956 GENLIST_PART_SPACER("elm.flip.padding.left", \
957 description { state: "default" 0.0; \
962 rel2.relative: 0 1; \
965 GENLIST_PART_SPACER("elm.flip.padding.right", \
966 description { state: "default" 0.0; \
971 rel1.relative: 1 0; \
974 GENLIST_PART_ICON("elm.flip.content", \
975 GENLIST_DESCRIPTION("elm.flip.padding.left", "elm.flip.padding.eraser.left", \
976 "elm.padding.top", "elm.padding.bottom", \
980 description { state: "flipped" 0.0; \
981 inherit: "default" 0.0; \
985 GENLIST_PART_PADDING_R("elm.flip.padding.eraser.left", "elm.flip.eraser") \
986 GENLIST_PART_ICON("elm.flip.eraser", \
987 GENLIST_DESCRIPTION_RTB("elm.flip.padding.icon.left", \
988 "elm.padding.top", "elm.padding.bottom", \
991 min: GENLIST_ICON_ENTRY_SIZE GENLIST_ICON_ENTRY_SIZE; \
992 max: GENLIST_ICON_ENTRY_SIZE GENLIST_ICON_ENTRY_SIZE; \
994 description { state: "show" 0.0; \
995 inherit: "default" 0.0; \
999 GENLIST_PART_PADDING_R("elm.flip.padding.icon.left", "elm.flip.icon") \
1000 GENLIST_PART_ICON( "elm.flip.icon", \
1001 GENLIST_DESCRIPTION_RTB("elm.flip.padding.right", \
1002 "elm.padding.top", "elm.padding.bottom", \
1008 description { state: "flipped" 0.0; \
1009 inherit: "default" 0.0; \
1014 //****************************************************************************//
1015 // ******************************* Programs ********************************//
1016 //**************************************************************************//
1017 // signal: elm,state,%s,active
1018 // a "check" item named %s went active
1019 // signal: elm,state,%s,passive
1020 // a "check" item named %s went passive
1021 // default is passive
1022 #define GENLIST_PROGRAM_DEFAULT( TARGET ) \
1023 program { name: "default"; \
1024 signal: "elm,state,default"; \
1026 action: STATE_SET "default" 0.0; \
1030 #define GENLIST_PROGRAM_DISABLED( TARGET ) \
1031 program { name: "enabled"; \
1032 signal: "elm,state,enabled"; \
1034 action: STATE_SET "default" 0.0; \
1038 program { name: "disabled"; \
1039 signal: "elm,state,disabled"; \
1041 action: STATE_SET "disabled" 0.0; \
1046 #define GENLIST_PROGRAM_FOCUS \
1047 program { name: "focused"; \
1048 signal: "elm,state,focused"; \
1050 action: STATE_SET "focused" 0.0; \
1051 target: "focus_part"; \
1053 program { name: "unfocused"; \
1054 signal: "elm,state,unfocused"; \
1056 action: STATE_SET "default" 0.0; \
1057 target: "focus_part"; \
1060 #define GENLIST_PROGRAM_FOCUS_DIALOGUE \
1061 program { name: "focused"; \
1062 signal: "elm,state,focused"; \
1067 get_state(PART:"bg_dialogue", st, 30, vl); \
1068 if (!strcmp(st, "top") || !strcmp(st, "top_selected")) \
1069 set_state(PART:"focus_part", "top_focused", 0.0); \
1070 else if (!strcmp(st, "center") || !strcmp(st, "center_selected")) \
1071 set_state(PART:"focus_part", "center_focused", 0.0); \
1072 else if (!strcmp(st, "bottom") || !strcmp(st, "bottom_selected")) \
1073 set_state(PART:"focus_part", "bottom_focused", 0.0); \
1074 else if (!strcmp(st, "default") || !strcmp(st, "selected")) \
1075 set_state(PART:"focus_part", "focused", 0.0); \
1078 program { name: "unfocused"; \
1079 signal: "elm,state,unfocused"; \
1081 action: STATE_SET "default" 0.0; \
1082 target: "focus_part"; \
1085 #define GENLIST_PROGRAM_SOUND( SRC ) \
1086 program { name: "play_sound"SRC; \
1087 signal: "mouse,clicked,1"; \
1092 get_state(PART:"base", st, 30, vl); \
1093 if (strcmp(st, "disabled")) \
1094 run_program(PROGRAM:"play_button_press"SRC); \
1097 program { name: "play_button_press"SRC; \
1098 action: PLAY_SAMPLE "button-pressed" 1.0; \
1101 #define GENLIST_PROGRAM_SELECT( TARGET ) \
1102 program { name: "selected"; \
1103 signal: "elm,state,selected"; \
1105 action: STATE_SET "selected" 0.0; \
1108 program { name: "unselected"; \
1109 signal: "elm,state,unselected"; \
1111 action: STATE_SET "default" 0.0; \
1115 #define GENLIST_PROGRAM_SELECT_DIALOGUE( TARGET ) \
1116 program { name: "selected"; \
1117 signal: "elm,state,selected"; \
1122 get_state(PART:"bg_dialogue", st, 30, vl); \
1123 if (!strcmp(st, "top")) \
1124 set_state(PART:"bg_dialogue", "top_selected", 0.0); \
1125 else if (!strcmp(st, "center")) \
1126 set_state(PART:"bg_dialogue", "center_selected", 0.0); \
1127 else if (!strcmp(st, "bottom")) \
1128 set_state(PART:"bg_dialogue", "bottom_selected", 0.0); \
1129 else if (!strcmp(st, "default")) \
1130 set_state(PART:"bg_dialogue", "selected", 0.0); \
1131 run_program(PROGRAM:"target_selected"); \
1134 program { name: "unselected"; \
1135 signal: "elm,state,unselected"; \
1140 get_state(PART:"bg_dialogue", st, 30, vl); \
1141 if (!strcmp(st, "top_selected")) \
1142 set_state(PART:"bg_dialogue", "top", 0.0); \
1143 else if (!strcmp(st, "center_selected")) \
1144 set_state(PART:"bg_dialogue", "center", 0.0); \
1145 else if (!strcmp(st, "bottom_selected")) \
1146 set_state(PART:"bg_dialogue", "bottom", 0.0); \
1147 else if (!strcmp(st, "selected")) \
1148 set_state(PART:"bg_dialogue", "default", 0.0); \
1149 run_program(PROGRAM:"target_unselected"); \
1152 program { name: "target_selected"; \
1153 action: STATE_SET "selected" 0.0; \
1156 program { name: "target_unselected"; \
1157 action: STATE_SET "default" 0.0; \
1160 program { name: "bg_default"; \
1161 signal: "elm,state,default"; \
1163 action: STATE_SET "default" 0.0; \
1164 target: "bg_dialogue"; \
1166 program { name: "bg_top"; \
1167 signal: "elm,state,top"; \
1169 action: STATE_SET "top" 0.0; \
1170 target: "bg_dialogue"; \
1172 program { name: "bg_center"; \
1173 signal: "elm,state,center"; \
1175 action: STATE_SET "center" 0.0; \
1176 target: "bg_dialogue"; \
1178 program { name: "bg_bottom"; \
1179 signal: "elm,state,bottom"; \
1181 action: STATE_SET "bottom" 0.0; \
1182 target: "bg_dialogue"; \
1186 #define GENLIST_PROGRAM_DECORATE_REORDER( NAME, TARGET ) \
1187 program { name: "reorder_enabled"NAME; \
1188 signal: "elm,state,reorder,mode_set"; \
1193 get_state(PART:"state", st, 30, vl); \
1194 if (!strcmp(st, "decorate") || !strcmp(st, "decorate_reorder")) { \
1195 run_program(PROGRAM:"decorate_reorder_set"NAME); \
1197 run_program(PROGRAM:"reorder_set"NAME); \
1201 program { name: "reorder_disabled"NAME; \
1202 signal: "elm,state,reorder,mode_unset"; \
1207 get_state(PART:"state", st, 30, vl); \
1208 if (!strcmp(st, "decorate") || !strcmp(st, "decorate_reorder")) { \
1209 run_program(PROGRAM:"decorate_set"NAME); \
1211 run_program(PROGRAM:"default_set"NAME); \
1215 program { name: "decorate_enabled_effect"NAME; \
1216 signal: "elm,state,decorate,enabled,effect";\
1221 get_state(PART:"state", st, 30, vl); \
1222 if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
1223 run_program(PROGRAM:"decorate_reorder_set"NAME); \
1225 run_program(PROGRAM:"decorate_set"NAME); \
1229 program { name: "decorate_disabled_effect"NAME;\
1230 signal: "elm,state,decorate,disabled,effect";\
1235 get_state(PART:"state", st, 30, vl); \
1236 if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
1237 run_program(PROGRAM:"reorder_set"NAME); \
1239 run_program(PROGRAM:"default_set"NAME); \
1243 program { name: "decorate_enabled"NAME;\
1244 signal: "elm,state,decorate,enabled";\
1249 get_state(PART:"state", st, 30, vl); \
1250 if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
1251 run_program(PROGRAM:"decorate_reorder_set"NAME); \
1253 run_program(PROGRAM:"decorate_set"NAME); \
1257 program { name: "decorate_disabled"NAME;\
1258 signal: "elm,state,decorate,disabled";\
1263 get_state(PART:"state", st, 30, vl); \
1264 if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
1265 run_program(PROGRAM:"reorder_set"NAME); \
1267 run_program(PROGRAM:"default_set"NAME); \
1271 program { name: "default_set"NAME; \
1272 action: STATE_SET "default" 0.0;\
1276 program { name: "decorate_set"NAME; \
1277 action: STATE_SET "decorate" 0.0;\
1281 program { name: "reorder_set"NAME; \
1282 action: STATE_SET "reorder" 0.0;\
1286 program { name: "decorate_reorder_set"NAME; \
1287 action: STATE_SET "decorate_reorder" 0.0;\
1292 #define GENLIST_PROGRAM_FLIP \
1293 program { name: "flip_enabled"; \
1294 signal: "elm,state,flip,enabled"; \
1296 transition: DECELERATE 0.5; \
1297 action: STATE_SET "flipped" 0.0; \
1298 target: "elm.flip.content"; \
1299 target: "elm.flip.icon"; \
1301 program { name: "flip_disabled"; \
1302 signal: "elm,state,flip,disabled"; \
1304 transition: DECELERATE 0.5; \
1305 action: STATE_SET "default" 0.0; \
1306 target: "elm.flip.content"; \
1307 target: "elm.flip.icon"; \
1309 program { name: "flip_enabled_bg"; \
1310 signal: "elm,state,flip,enabled"; \
1312 action: STATE_SET "flipped" 0.0; \
1313 target: "elm.flip.bg"; \
1315 program { name: "flip_disabled_bg"; \
1316 signal: "elm,state,flip,disabled"; \
1318 action: STATE_SET "default" 0.0; \
1319 target: "elm.flip.bg"; \
1322 signal: "elm,state,eraser,show"; \
1323 action: STATE_SET "show" 0.0; \
1324 target: "elm.flip.eraser"; \
1327 signal: "elm,state,eraser,hide"; \
1328 action: STATE_SET "default" 0.0; \
1329 target: "elm.flip.eraser"; \
1332 #define GENLIST_PROGRAM_EDITMODE \
1333 program { name: "edit_enabled"; \
1334 signal: "elm,state,edit,enabled"; \
1336 action: STATE_SET "editmode" 0.0; \
1337 target: "elm.padding.right.edit"; \
1338 target: "elm.icon.edit"; \
1339 target: "bg_dialogue_right"; \
1341 program { name: "edit_disabled"; \
1342 signal: "elm,state,edit,disabled"; \
1344 action: STATE_SET "default" 0.0; \
1345 target: "elm.padding.right.edit"; \
1346 target: "elm.icon.edit"; \
1347 target: "bg_dialogue_right"; \
1350 /***************************************************************************/
1351 /***************************************************************************/
1353 #define GENLIST_PROGRAMS_NORMAL( TARGET ) \
1355 GENLIST_PROGRAM_DEFAULT( TARGET \
1357 target: "bg_clip"; \
1358 target: "bottom_line"; \
1359 target: "bottom_line2"; \
1360 target: "bottom_line_clip"; \
1361 target: "bg_reorder"; \
1362 target: "elm.padding.left"; \
1363 target: "elm.padding.right"; \
1365 GENLIST_PROGRAM_DISABLED( TARGET \
1367 target: "bottom_line"; \
1368 target: "bottom_line2"; \
1369 target: "bg_reorder"; \
1371 GENLIST_PROGRAM_FOCUS \
1372 GENLIST_PROGRAM_SELECT( TARGET \
1374 target: "bottom_line"; \
1375 target: "bottom_line2"; \
1376 target: "bg_reorder"; \
1378 GENLIST_PROGRAM_SOUND("bg") \
1379 GENLIST_PROGRAM_SOUND("bg_reorder") \
1380 GENLIST_PROGRAM_DECORATE_REORDER("normal", TARGET \
1381 target: "bg_clip"; \
1382 target: "bg_reorder_clip"; \
1383 target: "bottom_line_clip"; \
1384 target: "elm.padding.left"; \
1385 target: "elm.padding.right"; \
1387 GENLIST_PROGRAM_FLIP \
1390 // FIXME: inheritance !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
1391 // if GENLIST_PROGRAM_EXPAND is here, expanda effect is something wrong.
1392 // because after can be duplicated when program inheriting.
1393 #define GENLIST_PROGRAMS_DIALOGUE( TARGET ) \
1395 GENLIST_PROGRAM_DEFAULT( TARGET \
1396 target: "bg_dialogue"; \
1397 target: "bg_dialogue_clip"; \
1398 target: "elm.padding.left"; \
1399 target: "elm.padding.right"; \
1401 GENLIST_PROGRAM_DISABLED( TARGET ) \
1402 GENLIST_PROGRAM_FOCUS_DIALOGUE \
1403 GENLIST_PROGRAM_SELECT_DIALOGUE( TARGET ) \
1404 program { name: "bg_color_change"; \
1405 signal: "bg_color_change"; \
1407 action: STATE_SET "2depth" 0.0; \
1408 target: "bg_dialogue_clip"; \
1410 GENLIST_PROGRAM_SOUND("bg_dialogue") \
1411 GENLIST_PROGRAM_DECORATE_REORDER( "normal", TARGET \
1412 target: "elm.padding.left"; \
1413 target: "elm.padding.right"; \
1415 GENLIST_PROGRAM_FLIP \
1416 GENLIST_PROGRAM_EDITMODE \
1419 #define GENLIST_PROGRAMS_ENTRY \
1421 signal: "elm,state,eraser,show"; \
1422 action: STATE_SET "show" 0.0; \
1423 target: "elm.icon.eraser"; \
1426 signal: "elm,state,eraser,hide"; \
1427 action: STATE_SET "default" 0.0; \
1428 target: "elm.icon.eraser"; \
1431 signal: "elm,state,rename,show"; \
1432 action: STATE_SET "default" 0.0; \
1433 target: "elm.image.rename"; \
1436 signal: "elm,state,rename,hide"; \
1437 action: STATE_SET "hide" 0.0; \
1438 target: "elm.image.rename"; \
1442 //****************************************************************************//
1443 // ******************************* Icon Part ******************************//
1444 //***************************************************************************//
1445 #define GENLIST_PART_ICON(NAME, DESCRIPION) \
1446 part { name: NAME; \
1452 /*****************************************************************************/
1453 /******************************* Genlist IMAGE ********************************/
1454 /*****************************************************************************/
1455 #define GENLIST_PART_IMAGE(NAME, DESCRIPION) \
1456 part { name: NAME; \
1462 /*****************************************************************************/
1463 /******************************* Genlist RECT ********************************/
1464 /*****************************************************************************/
1465 #define GENLIST_PART_SPACER(NAME, DESCRIPION) \
1466 part { name: NAME; \
1473 #define GENLIST_PART_RECT(NAME, DESCRIPION) \
1474 part { name: NAME; \