Fractals: fix weird keymap for SAMSUNG_YH_PAD. adjust spaces.
[kugel-rb.git] / apps / plugins / fractals / fractal.h
blob6c0af2298ac5c830082a5b68c5b811b81f1b3084
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2009 Tomer Shalev
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
21 #ifndef _FRACTAL_H
22 #define _FRACTAL_H
24 #if (LCD_DEPTH < 8)
25 #define USEGSLIB
26 #endif
28 /* variable button definitions */
29 #if CONFIG_KEYPAD == RECORDER_PAD
30 #define FRACTAL_QUIT BUTTON_OFF
31 #define FRACTAL_UP BUTTON_UP
32 #define FRACTAL_DOWN BUTTON_DOWN
33 #define FRACTAL_LEFT BUTTON_LEFT
34 #define FRACTAL_RIGHT BUTTON_RIGHT
35 #define FRACTAL_ZOOM_IN BUTTON_PLAY
36 #define FRACTAL_ZOOM_OUT BUTTON_ON
37 #define FRACTAL_PRECISION_INC BUTTON_F2
38 #define FRACTAL_PRECISION_DEC BUTTON_F1
39 #define FRACTAL_RESET BUTTON_F3
41 #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD
42 #define FRACTAL_QUIT BUTTON_OFF
43 #define FRACTAL_UP BUTTON_UP
44 #define FRACTAL_DOWN BUTTON_DOWN
45 #define FRACTAL_LEFT BUTTON_LEFT
46 #define FRACTAL_RIGHT BUTTON_RIGHT
47 #define FRACTAL_ZOOM_IN BUTTON_SELECT
48 #define FRACTAL_ZOOM_OUT BUTTON_ON
49 #define FRACTAL_PRECISION_INC BUTTON_F2
50 #define FRACTAL_PRECISION_DEC BUTTON_F1
51 #define FRACTAL_RESET BUTTON_F3
53 #elif CONFIG_KEYPAD == ONDIO_PAD
54 #define FRACTAL_QUIT BUTTON_OFF
55 #define FRACTAL_UP BUTTON_UP
56 #define FRACTAL_DOWN BUTTON_DOWN
57 #define FRACTAL_LEFT BUTTON_LEFT
58 #define FRACTAL_RIGHT BUTTON_RIGHT
59 #define FRACTAL_ZOOM_IN_PRE BUTTON_MENU
60 #define FRACTAL_ZOOM_IN (BUTTON_MENU | BUTTON_REL)
61 #define FRACTAL_ZOOM_IN2 (BUTTON_MENU | BUTTON_UP)
62 #define FRACTAL_ZOOM_OUT (BUTTON_MENU | BUTTON_DOWN)
63 #define FRACTAL_PRECISION_INC (BUTTON_MENU | BUTTON_RIGHT)
64 #define FRACTAL_PRECISION_DEC (BUTTON_MENU | BUTTON_LEFT)
65 #define FRACTAL_RESET (BUTTON_MENU | BUTTON_OFF)
67 #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \
68 (CONFIG_KEYPAD == IRIVER_H300_PAD)
69 #define FRACTAL_QUIT BUTTON_OFF
70 #define FRACTAL_UP BUTTON_UP
71 #define FRACTAL_DOWN BUTTON_DOWN
72 #define FRACTAL_LEFT BUTTON_LEFT
73 #define FRACTAL_RIGHT BUTTON_RIGHT
74 #define FRACTAL_ZOOM_IN BUTTON_SELECT
75 #define FRACTAL_ZOOM_OUT BUTTON_MODE
76 #define FRACTAL_PRECISION_INC (BUTTON_ON | BUTTON_RIGHT)
77 #define FRACTAL_PRECISION_DEC (BUTTON_ON | BUTTON_LEFT)
78 #define FRACTAL_RESET BUTTON_REC
80 #define FRACTAL_RC_QUIT BUTTON_RC_STOP
82 #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
83 (CONFIG_KEYPAD == IPOD_3G_PAD) || \
84 (CONFIG_KEYPAD == IPOD_1G2G_PAD)
85 #define FRACTAL_QUIT (BUTTON_SELECT | BUTTON_MENU)
86 #define FRACTAL_UP BUTTON_MENU
87 #define FRACTAL_DOWN BUTTON_PLAY
88 #define FRACTAL_LEFT BUTTON_LEFT
89 #define FRACTAL_RIGHT BUTTON_RIGHT
90 #define FRACTAL_ZOOM_IN BUTTON_SCROLL_FWD
91 #define FRACTAL_ZOOM_OUT BUTTON_SCROLL_BACK
92 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
93 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
94 #define FRACTAL_RESET (BUTTON_SELECT | BUTTON_PLAY)
96 #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
97 #define FRACTAL_QUIT BUTTON_POWER
98 #define FRACTAL_UP BUTTON_UP
99 #define FRACTAL_DOWN BUTTON_DOWN
100 #define FRACTAL_LEFT BUTTON_LEFT
101 #define FRACTAL_RIGHT BUTTON_RIGHT
102 #define FRACTAL_ZOOM_IN_PRE BUTTON_SELECT
103 #define FRACTAL_ZOOM_IN (BUTTON_SELECT | BUTTON_REL)
104 #define FRACTAL_ZOOM_OUT_PRE BUTTON_SELECT
105 #define FRACTAL_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT)
106 #define FRACTAL_PRECISION_INC_PRE BUTTON_PLAY
107 #define FRACTAL_PRECISION_INC (BUTTON_PLAY | BUTTON_REL)
108 #define FRACTAL_PRECISION_DEC_PRE BUTTON_PLAY
109 #define FRACTAL_PRECISION_DEC (BUTTON_PLAY | BUTTON_REPEAT)
110 #define FRACTAL_RESET BUTTON_REC
112 #elif CONFIG_KEYPAD == GIGABEAT_PAD
113 #define FRACTAL_QUIT BUTTON_POWER
114 #define FRACTAL_UP BUTTON_UP
115 #define FRACTAL_DOWN BUTTON_DOWN
116 #define FRACTAL_LEFT BUTTON_LEFT
117 #define FRACTAL_RIGHT BUTTON_RIGHT
118 #define FRACTAL_ZOOM_IN_PRE BUTTON_SELECT
119 #define FRACTAL_ZOOM_IN (BUTTON_SELECT | BUTTON_REL)
120 #define FRACTAL_ZOOM_OUT_PRE BUTTON_SELECT
121 #define FRACTAL_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT)
122 #define FRACTAL_PRECISION_INC BUTTON_VOL_UP
123 #define FRACTAL_PRECISION_DEC BUTTON_VOL_DOWN
124 #define FRACTAL_RESET BUTTON_A
126 #elif CONFIG_KEYPAD == SANSA_E200_PAD
127 #define FRACTAL_QUIT BUTTON_POWER
128 #define FRACTAL_UP BUTTON_UP
129 #define FRACTAL_DOWN BUTTON_DOWN
130 #define FRACTAL_LEFT BUTTON_LEFT
131 #define FRACTAL_RIGHT BUTTON_RIGHT
132 #define FRACTAL_ZOOM_IN BUTTON_SCROLL_FWD
133 #define FRACTAL_ZOOM_OUT BUTTON_SCROLL_BACK
134 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
135 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
136 #define FRACTAL_RESET BUTTON_REC
138 #elif CONFIG_KEYPAD == SANSA_FUZE_PAD
139 #define FRACTAL_QUIT (BUTTON_HOME|BUTTON_REPEAT)
140 #define FRACTAL_UP BUTTON_UP
141 #define FRACTAL_DOWN BUTTON_DOWN
142 #define FRACTAL_LEFT BUTTON_LEFT
143 #define FRACTAL_RIGHT BUTTON_RIGHT
144 #define FRACTAL_ZOOM_IN BUTTON_SCROLL_FWD
145 #define FRACTAL_ZOOM_OUT BUTTON_SCROLL_BACK
146 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
147 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
148 #define FRACTAL_RESET (BUTTON_SELECT | BUTTON_REPEAT)
150 #elif CONFIG_KEYPAD == SANSA_C200_PAD
151 #define FRACTAL_QUIT BUTTON_POWER
152 #define FRACTAL_UP BUTTON_UP
153 #define FRACTAL_DOWN BUTTON_DOWN
154 #define FRACTAL_LEFT BUTTON_LEFT
155 #define FRACTAL_RIGHT BUTTON_RIGHT
156 #define FRACTAL_ZOOM_IN BUTTON_VOL_UP
157 #define FRACTAL_ZOOM_OUT BUTTON_VOL_DOWN
158 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
159 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
160 #define FRACTAL_RESET BUTTON_REC
162 #elif CONFIG_KEYPAD == SANSA_CLIP_PAD
163 #define FRACTAL_QUIT BUTTON_POWER
164 #define FRACTAL_UP BUTTON_UP
165 #define FRACTAL_DOWN BUTTON_DOWN
166 #define FRACTAL_LEFT BUTTON_LEFT
167 #define FRACTAL_RIGHT BUTTON_RIGHT
168 #define FRACTAL_ZOOM_IN BUTTON_VOL_UP
169 #define FRACTAL_ZOOM_OUT BUTTON_VOL_DOWN
170 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
171 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
172 #define FRACTAL_RESET BUTTON_HOME
174 #elif CONFIG_KEYPAD == SANSA_M200_PAD
175 #define FRACTAL_QUIT BUTTON_POWER
176 #define FRACTAL_UP BUTTON_UP
177 #define FRACTAL_DOWN BUTTON_DOWN
178 #define FRACTAL_LEFT BUTTON_LEFT
179 #define FRACTAL_RIGHT BUTTON_RIGHT
180 #define FRACTAL_ZOOM_IN BUTTON_VOL_UP
181 #define FRACTAL_ZOOM_OUT BUTTON_VOL_DOWN
182 #define FRACTAL_PRECISION_INC (BUTTON_SELECT | BUTTON_RIGHT)
183 #define FRACTAL_PRECISION_DEC (BUTTON_SELECT | BUTTON_LEFT)
184 #define FRACTAL_RESET (BUTTON_SELECT | BUTTON_UP)
186 #elif CONFIG_KEYPAD == IRIVER_H10_PAD
187 #define FRACTAL_QUIT BUTTON_POWER
188 #define FRACTAL_UP BUTTON_SCROLL_UP
189 #define FRACTAL_DOWN BUTTON_SCROLL_DOWN
190 #define FRACTAL_LEFT BUTTON_LEFT
191 #define FRACTAL_RIGHT BUTTON_RIGHT
192 #define FRACTAL_ZOOM_IN_PRE BUTTON_PLAY
193 #define FRACTAL_ZOOM_IN (BUTTON_PLAY | BUTTON_REL)
194 #define FRACTAL_ZOOM_OUT_PRE BUTTON_PLAY
195 #define FRACTAL_ZOOM_OUT (BUTTON_PLAY | BUTTON_REPEAT)
196 #define FRACTAL_PRECISION_INC BUTTON_FF
197 #define FRACTAL_PRECISION_DEC BUTTON_REW
198 #define FRACTAL_RESET (BUTTON_PLAY | BUTTON_REW)
200 #elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
201 #define FRACTAL_QUIT BUTTON_EQ
202 #define FRACTAL_UP BUTTON_UP
203 #define FRACTAL_DOWN BUTTON_DOWN
204 #define FRACTAL_LEFT BUTTON_LEFT
205 #define FRACTAL_RIGHT BUTTON_RIGHT
206 #define FRACTAL_ZOOM_IN_PRE BUTTON_SELECT
207 #define FRACTAL_ZOOM_IN (BUTTON_SELECT | BUTTON_REL)
208 #define FRACTAL_ZOOM_OUT_PRE BUTTON_SELECT
209 #define FRACTAL_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT)
210 #define FRACTAL_PRECISION_INC (BUTTON_PLAY | BUTTON_RIGHT)
211 #define FRACTAL_PRECISION_DEC (BUTTON_PLAY | BUTTON_LEFT)
212 #define FRACTAL_RESET BUTTON_MODE
214 #elif CONFIG_KEYPAD == GIGABEAT_S_PAD
215 #define FRACTAL_QUIT BUTTON_BACK
216 #define FRACTAL_UP BUTTON_UP
217 #define FRACTAL_DOWN BUTTON_DOWN
218 #define FRACTAL_LEFT BUTTON_LEFT
219 #define FRACTAL_RIGHT BUTTON_RIGHT
220 #define FRACTAL_ZOOM_IN BUTTON_VOL_UP
221 #define FRACTAL_ZOOM_OUT BUTTON_VOL_DOWN
222 #define FRACTAL_PRECISION_INC BUTTON_PREV
223 #define FRACTAL_PRECISION_DEC BUTTON_NEXT
224 #define FRACTAL_RESET BUTTON_MENU
226 #elif CONFIG_KEYPAD == MROBE100_PAD
227 #define FRACTAL_QUIT BUTTON_POWER
228 #define FRACTAL_UP BUTTON_UP
229 #define FRACTAL_DOWN BUTTON_DOWN
230 #define FRACTAL_LEFT BUTTON_LEFT
231 #define FRACTAL_RIGHT BUTTON_RIGHT
232 #define FRACTAL_ZOOM_IN_PRE BUTTON_SELECT
233 #define FRACTAL_ZOOM_IN (BUTTON_SELECT | BUTTON_REL)
234 #define FRACTAL_ZOOM_OUT_PRE BUTTON_SELECT
235 #define FRACTAL_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT)
236 #define FRACTAL_PRECISION_INC BUTTON_MENU
237 #define FRACTAL_PRECISION_DEC BUTTON_PLAY
238 #define FRACTAL_RESET BUTTON_DISPLAY
240 #elif CONFIG_KEYPAD == IAUDIO_M3_PAD
241 #define FRACTAL_QUIT BUTTON_RC_REC
242 #define FRACTAL_UP BUTTON_RC_VOL_UP
243 #define FRACTAL_DOWN BUTTON_RC_VOL_DOWN
244 #define FRACTAL_LEFT BUTTON_RC_REW
245 #define FRACTAL_RIGHT BUTTON_RC_FF
246 #define FRACTAL_ZOOM_IN_PRE BUTTON_RC_PLAY
247 #define FRACTAL_ZOOM_IN (BUTTON_RC_PLAY | BUTTON_REL)
248 #define FRACTAL_ZOOM_OUT_PRE BUTTON_RC_PLAY
249 #define FRACTAL_ZOOM_OUT (BUTTON_RC_PLAY | BUTTON_REPEAT)
250 #define FRACTAL_PRECISION_INC_PRE BUTTON_RC_MODE
251 #define FRACTAL_PRECISION_INC (BUTTON_RC_MODE|BUTTON_REL)
252 #define FRACTAL_PRECISION_DEC_PRE BUTTON_RC_MODE
253 #define FRACTAL_PRECISION_DEC (BUTTON_RC_MODE|BUTTON_REPEAT)
254 #define FRACTAL_RESET BUTTON_RC_MENU
256 #elif CONFIG_KEYPAD == COWON_D2_PAD
257 #define FRACTAL_QUIT BUTTON_POWER
259 #elif CONFIG_KEYPAD == CREATIVEZVM_PAD
260 #define FRACTAL_QUIT BUTTON_BACK
261 #define FRACTAL_UP BUTTON_UP
262 #define FRACTAL_DOWN BUTTON_DOWN
263 #define FRACTAL_LEFT BUTTON_LEFT
264 #define FRACTAL_RIGHT BUTTON_RIGHT
265 #define FRACTAL_ZOOM_IN BUTTON_PLAY
266 #define FRACTAL_ZOOM_OUT BUTTON_MENU
267 #define FRACTAL_PRECISION_INC (BUTTON_UP | BUTTON_CUSTOM)
268 #define FRACTAL_PRECISION_DEC (BUTTON_DOWN | BUTTON_CUSTOM)
269 #define FRACTAL_RESET BUTTON_SELECT
271 #elif CONFIG_KEYPAD == PHILIPS_HDD1630_PAD
272 #define FRACTAL_QUIT BUTTON_POWER
273 #define FRACTAL_UP BUTTON_UP
274 #define FRACTAL_DOWN BUTTON_DOWN
275 #define FRACTAL_LEFT BUTTON_LEFT
276 #define FRACTAL_RIGHT BUTTON_RIGHT
277 #define FRACTAL_ZOOM_IN BUTTON_VIEW
278 #define FRACTAL_ZOOM_OUT BUTTON_PLAYLIST
279 #define FRACTAL_PRECISION_INC BUTTON_VOL_UP
280 #define FRACTAL_PRECISION_DEC BUTTON_VOL_DOWN
281 #define FRACTAL_RESET BUTTON_MENU
283 #elif CONFIG_KEYPAD == PHILIPS_SA9200_PAD
284 #define FRACTAL_QUIT BUTTON_POWER
285 #define FRACTAL_UP BUTTON_UP
286 #define FRACTAL_DOWN BUTTON_DOWN
287 #define FRACTAL_LEFT BUTTON_PREV
288 #define FRACTAL_RIGHT BUTTON_NEXT
289 #define FRACTAL_ZOOM_IN BUTTON_RIGHT
290 #define FRACTAL_ZOOM_OUT BUTTON_LEFT
291 #define FRACTAL_PRECISION_INC BUTTON_VOL_UP
292 #define FRACTAL_PRECISION_DEC BUTTON_VOL_DOWN
293 #define FRACTAL_RESET BUTTON_MENU
295 #elif CONFIG_KEYPAD == ONDAVX747_PAD || CONFIG_KEYPAD == MROBE500_PAD
296 #define FRACTAL_QUIT BUTTON_POWER
298 #elif CONFIG_KEYPAD == ONDAVX777_PAD
299 #define FRACTAL_QUIT BUTTON_POWER
301 #elif CONFIG_KEYPAD == SAMSUNG_YH_PAD
302 #define FRACTAL_QUIT BUTTON_REC
303 #define FRACTAL_UP BUTTON_UP
304 #define FRACTAL_DOWN BUTTON_DOWN
305 #define FRACTAL_LEFT BUTTON_LEFT
306 #define FRACTAL_RIGHT BUTTON_RIGHT
307 #define FRACTAL_ZOOM_IN BUTTON_FFWD
308 #define FRACTAL_ZOOM_OUT BUTTON_REW
309 #define FRACTAL_PRECISION_INC (BUTTON_PLAY | BUTTON_UP)
310 #define FRACTAL_PRECISION_DEC (BUTTON_PLAY | BUTTON_DOWN)
311 #define FRACTAL_RESET (BUTTON_PLAY | BUTTON_RIGHT)
313 #else
314 #error No keymap defined!
315 #endif
317 #ifdef HAVE_TOUCHSCREEN
318 #ifndef FRACTAL_UP
319 #define FRACTAL_UP BUTTON_TOPMIDDLE
320 #endif
321 #ifndef FRACTAL_DOWN
322 #define FRACTAL_DOWN BUTTON_BOTTOMMIDDLE
323 #endif
324 #ifndef FRACTAL_LEFT
325 #define FRACTAL_LEFT BUTTON_MIDLEFT
326 #endif
327 #ifndef FRACTAL_RIGHT
328 #define FRACTAL_RIGHT BUTTON_MIDRIGHT
329 #endif
330 #ifndef FRACTAL_ZOOM_IN
331 #define FRACTAL_ZOOM_IN_PRE BUTTON_TOPRIGHT
332 #define FRACTAL_ZOOM_IN (BUTTON_TOPRIGHT | BUTTON_REL)
333 #endif
334 #ifndef FRACTAL_ZOOM_OUT
335 #define FRACTAL_ZOOM_OUT_PRE BUTTON_TOPLEFT
336 #define FRACTAL_ZOOM_OUT (BUTTON_TOPLEFT | BUTTON_REL)
337 #endif
338 #ifndef FRACTAL_PRECISION_INC
339 #define FRACTAL_PRECISION_INC BUTTON_BOTTOMRIGHT
340 #endif
341 #ifndef FRACTAL_PRECISION_DEC
342 #define FRACTAL_PRECISION_DEC BUTTON_BOTTOMLEFT
343 #endif
344 #ifndef FRACTAL_RESET
345 #define FRACTAL_RESET BUTTON_CENTER
346 #endif
347 #endif
349 #endif