1 /* this makes life MUCH easier */
3 #define TOGGLE_BUTTON(NAME, IMG, IMG2, IMG3, IMG4, W, H, REL1_TO, REL1_REL, REL1_OFF, REL2_TO, REL2_REL, REL2_OFF) \
9 state, "default" 0.0; \
21 color, 255 255 255 128; \
36 color, 255 255 255 255; \
41 clip_to, NAME"-clip"; \
43 state, "default" 0.0; \
47 color, 255 255 255 255; \
63 state, "toggled" 0.0; \
67 color, 255 255 255 0; \
86 color, 255 255 255 255; \
104 clip_to, NAME"-clip"; \
106 state, "default" 0.0; \
110 color, 255 255 255 0; \
113 relative, REL1_REL; \
118 relative, REL2_REL; \
126 state, "toggled" 0.0; \
130 color, 255 255 255 255; \
133 relative, REL1_REL; \
138 relative, REL2_REL; \
149 color, 255 255 255 255; \
152 relative, REL1_REL; \
157 relative, REL2_REL; \
166 name, NAME"-grabber"; \
171 state, "default" 0.0; \
175 relative, REL1_REL; \
180 relative, REL2_REL; \
189 #define TOGGLE_BUTTON_PROG(NAME, SIG, SIG2) \
191 name, NAME"-toggle-on"; \
192 signal, "mouse,clicked,1"; \
194 action, STATE_SET "toggled" 0.0; \
195 transition, LINEAR 0.0; \
202 action, SIGNAL_EMIT SIG NAME; \
205 name, NAME"-toggle-off"; \
206 signal, "mouse,clicked,1"; \
208 action, STATE_SET "default" 0.0; \
209 transition, LINEAR 0.0; \
212 after, NAME"-sig2"; \
216 action, SIGNAL_EMIT SIG2 NAME"-2"; \
219 name, NAME"-grabber-in"; \
220 signal, "mouse,in"; \
221 source, NAME"-grabber"; \
222 action, STATE_SET "over" 0.0; \
223 transition, DECELERATE 0.5; \
224 target, NAME"-clip"; \
227 name, NAME"-grabber-out"; \
228 signal, "mouse,out"; \
229 source, NAME"-grabber"; \
230 action, STATE_SET "default" 0.0; \
231 transition, DECELERATE 0.5; \
232 target, NAME"-clip"; \
236 signal, "mouse,down,1"; \
238 action, STATE_SET "down" 0.0; \
239 transition, LINEAR 0.0; \
243 name, NAME"-2-down"; \
244 signal, "mouse,down,1"; \
246 action, STATE_SET "down" 0.0; \
247 transition, LINEAR 0.0; \