skin touchregions: fix the 'none' region firing when it shouldnt.
[maemo-rb.git] / uisimulator / buttonmap / sansa-connect.c
blob608d454e18f7bc5cc9d11e1c93a6b6614fefa0a4
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id: $
10 * Copyright (C) 2011 by Tomasz Moń
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 ****************************************************************************/
23 #include <SDL.h>
24 #include "button.h"
25 #include "buttonmap.h"
27 int key_to_button(int keyboard_button)
29 int new_btn = BUTTON_NONE;
30 switch (keyboard_button)
32 case SDLK_KP4:
33 case SDLK_LEFT:
34 new_btn = BUTTON_LEFT;
35 break;
36 case SDLK_KP6:
37 case SDLK_RIGHT:
38 new_btn = BUTTON_RIGHT;
39 break;
40 case SDLK_KP8:
41 case SDLK_UP:
42 new_btn = BUTTON_UP;
43 break;
44 case SDLK_KP2:
45 case SDLK_DOWN:
46 new_btn = BUTTON_DOWN;
47 break;
48 case SDLK_KP7:
49 new_btn = BUTTON_PREV;
50 break;
51 case SDLK_PAGEUP:
52 case SDLK_KP9:
53 new_btn = BUTTON_NEXT;
54 break;
55 case SDLK_KP_DIVIDE:
56 new_btn = BUTTON_POWER;
57 break;
58 case SDLK_KP5:
59 case SDLK_SPACE:
60 case SDLK_KP_ENTER:
61 case SDLK_RETURN:
62 new_btn = BUTTON_SELECT;
63 break;
64 case SDLK_KP_PLUS:
65 new_btn = BUTTON_VOL_UP;
66 break;
67 case SDLK_KP_MINUS:
68 new_btn = BUTTON_VOL_DOWN;
69 break;
70 case SDL_BUTTON_WHEELDOWN:
71 case SDLK_KP3:
72 new_btn = BUTTON_SCROLL_FWD;
73 break;
74 case SDL_BUTTON_WHEELUP:
75 case SDLK_KP1:
76 new_btn = BUTTON_SCROLL_BACK;
77 break;
78 case SDLK_h:
79 new_btn = BUTTON_HOLD;
80 break;
82 return new_btn;
85 struct button_map bm[] = {
86 { SDLK_UP, 191, 505, 18, "Up" },
87 { SDLK_DOWN, 191, 630, 18, "Down" },
88 { SDLK_LEFT, 130, 568, 18, "Left" },
89 { SDLK_RIGHT, 256, 568, 18, "Right" },
90 { SDLK_KP7, 107, 443, 20, "Prev" },
91 { SDLK_KP9, 271, 443, 20, "Next" },
92 { SDLK_KP5, 191, 568, 18, "Select" },
93 { SDLK_KP_DIVIDE, 220, 43, 15, "Power" },
94 { SDLK_KP3, 231, 520, 10, "Scroll Fwd" },
95 { SDLK_KP1, 149, 520, 10, "Scroll Back" },
96 { SDLK_KP_MINUS, 3, 277, 25, "Volume -" },
97 { SDLK_KP_PLUS, 6, 175, 25, "Volume +" },
98 { SDLK_h, 300, 42, 20, "Hold" },
99 { 0, 0, 0, 0, "None" }