+#define GENLIST_PROGRAM_DECORATE_REORDER( NAME, TARGET ) \
+ program { name: "reorder_enabled"NAME; \
+ signal: "elm,state,reorder,mode_set"; \
+ source: "elm"; \
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "decorate") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"decorate_reorder_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"reorder_set"NAME); \
+ } \
+ } \
+ } \
+ program { name: "reorder_disabled"NAME; \
+ signal: "elm,state,reorder,mode_unset"; \
+ source: "elm"; \
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "decorate") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"decorate_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"default_set"NAME); \
+ } \
+ } \
+ } \
+ program { name: "decorate_enabled_effect"NAME; \
+ signal: "elm,state,decorate,enabled,effect";\
+ source: "elm";\
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"decorate_reorder_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"decorate_set"NAME); \
+ } \
+ } \
+ }\
+ program { name: "decorate_disabled_effect"NAME;\
+ signal: "elm,state,decorate,disabled,effect";\
+ source: "elm";\
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"reorder_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"default_set"NAME); \
+ } \
+ } \
+ }\
+ program { name: "decorate_enabled"NAME;\
+ signal: "elm,state,decorate,enabled";\
+ source: "elm";\
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"decorate_reorder_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"decorate_set"NAME); \
+ } \
+ } \
+ }\
+ program { name: "decorate_disabled"NAME;\
+ signal: "elm,state,decorate,disabled";\
+ source: "elm";\
+ script { \
+ new st[31]; \
+ new Float:vl; \
+ get_state(PART:"state", st, 30, vl); \
+ if (!strcmp(st, "reorder") || !strcmp(st, "decorate_reorder")) { \
+ run_program(PROGRAM:"reorder_set"NAME); \
+ } else { \
+ run_program(PROGRAM:"default_set"NAME); \
+ } \
+ } \
+ } \
+ program { name: "default_set"NAME; \
+ action: STATE_SET "default" 0.0;\
+ target: "state"; \
+ TARGET \
+ } \
+ program { name: "decorate_set"NAME; \
+ action: STATE_SET "decorate" 0.0;\
+ target: "state"; \
+ TARGET \
+ } \
+ program { name: "reorder_set"NAME; \
+ action: STATE_SET "reorder" 0.0;\
+ target: "state"; \
+ TARGET \
+ } \
+ program { name: "decorate_reorder_set"NAME; \
+ action: STATE_SET "decorate_reorder" 0.0;\
+ target: "state"; \
+ TARGET \
+ }
+