From 18a8a2ced6df890ba67af887c2a64c0611b4d676 Mon Sep 17 00:00:00 2001 From: Simon Howard Date: Sun, 8 Jul 2007 20:53:18 +0000 Subject: Make the numeric keypad behave like Vanilla does. Subversion-branch: /trunk/chocolate-doom Subversion-revision: 935 --- src/doomkeys.h | 37 +++++++++++++++++-------------------- src/i_video.c | 15 +++++++++------ src/m_misc.c | 4 ++-- 3 files changed, 28 insertions(+), 28 deletions(-) (limited to 'src') diff --git a/src/doomkeys.h b/src/doomkeys.h index 170d8c50..3db17a6d 100644 --- a/src/doomkeys.h +++ b/src/doomkeys.h @@ -69,34 +69,31 @@ #define KEY_CAPSLOCK (0x80+0x3a) #define KEY_SCRLCK (0x80+0x46) -#define KEYP_0 (0x80+0x52) -#define KEYP_1 (0x80+0x4F) -#define KEYP_2 (0x80+0x50) -#define KEYP_3 (0x80+0x41) -#define KEYP_4 (0x80+0x4B) -#define KEYP_5 (0x80+0x4C) -#define KEYP_6 (0x80+0x4D) -#define KEYP_7 (0x80+0x47) -#define KEYP_8 (0x80+0x48) -#define KEYP_9 (0x80+0x49) - #define KEY_HOME (0x80+0x47) #define KEY_END (0x80+0x4f) #define KEY_PGUP (0x80+0x49) #define KEY_PGDN (0x80+0x51) #define KEY_INS (0x80+0x52) #define KEY_DEL (0x80+0x53) -#define KEYP_UPARROW KEY_UPARROW -#define KEYP_DOWNARROW KEY_DOWNARROW -#define KEYP_LEFTARROW KEY_LEFTARROW -#define KEYP_RIGHTARROW KEY_RIGHTARROW -#define KEYP_MULTIPLY '*' -#define KEYP_PLUS '+' -#define KEYP_MINUS '-' -#define KEYP_DIVIDE '/' - +#define KEYP_0 0 +#define KEYP_1 KEY_END +#define KEYP_2 KEY_DOWNARROW +#define KEYP_3 KEY_PGDN +#define KEYP_4 KEY_LEFTARROW +#define KEYP_5 '5' +#define KEYP_6 KEY_RIGHTARROW +#define KEYP_7 KEY_HOME +#define KEYP_8 KEY_UPARROW +#define KEYP_9 KEY_PGUP +#define KEYP_DIVIDE '/' +#define KEYP_PLUS '+' +#define KEYP_MINUS '-' +#define KEYP_MULTIPLY '*' +#define KEYP_PERIOD 0 +#define KEYP_EQUALS KEY_EQUALS +#define KEYP_ENTER KEY_ENTER #endif // __DOOMKEYS__ diff --git a/src/i_video.c b/src/i_video.c index f2ffe33c..42361f7b 100644 --- a/src/i_video.c +++ b/src/i_video.c @@ -290,8 +290,7 @@ static int TranslateKey(SDL_keysym *sym) case SDLK_PAUSE: return KEY_PAUSE; - case SDLK_EQUALS: - case SDLK_KP_EQUALS: return KEY_EQUALS; + case SDLK_EQUALS: return KEY_EQUALS; case SDLK_MINUS: return KEY_MINUS; @@ -323,15 +322,19 @@ static int TranslateKey(SDL_keysym *sym) case SDLK_KP8: return KEYP_8; case SDLK_KP9: return KEYP_9; + case SDLK_KP_PERIOD: return KEYP_PERIOD; + case SDLK_KP_MULTIPLY: return KEYP_MULTIPLY; + case SDLK_KP_PLUS: return KEYP_PLUS; + case SDLK_KP_MINUS: return KEYP_MINUS; + case SDLK_KP_DIVIDE: return KEYP_DIVIDE; + case SDLK_KP_EQUALS: return KEYP_EQUALS; + case SDLK_KP_ENTER: return KEYP_ENTER; + case SDLK_HOME: return KEY_HOME; case SDLK_INSERT: return KEY_INS; case SDLK_END: return KEY_END; case SDLK_PAGEUP: return KEY_PGUP; case SDLK_PAGEDOWN: return KEY_PGDN; - case SDLK_KP_MULTIPLY: return KEYP_MULTIPLY; - case SDLK_KP_PLUS: return KEYP_PLUS; - case SDLK_KP_MINUS: return KEYP_MINUS; - case SDLK_KP_DIVIDE: return KEYP_DIVIDE; default: return tolower(sym->sym); diff --git a/src/m_misc.c b/src/m_misc.c index 451d9b31..0b11e786 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -459,8 +459,8 @@ static int scantokey[128] = 'b', 'n', 'm', ',', '.', '/', KEY_RSHIFT,KEYP_MULTIPLY, KEY_RALT, ' ', KEY_CAPSLOCK,KEY_F1, KEY_F2, KEY_F3, KEY_F4, KEY_F5, KEY_F6, KEY_F7, KEY_F8, KEY_F9, KEY_F10, KEY_PAUSE,KEY_SCRLCK,KEY_HOME, - KEYP_UPARROW,KEY_PGUP,KEYP_MINUS,KEYP_LEFTARROW,KEYP_5,KEYP_RIGHTARROW,KEYP_PLUS,KEY_END, - KEYP_DOWNARROW,KEY_PGDN,KEY_INS,KEY_DEL,0, 0, 0, KEY_F11, + KEY_UPARROW,KEY_PGUP,KEY_MINUS,KEY_LEFTARROW,KEYP_5,KEY_RIGHTARROW,KEYP_PLUS,KEY_END, + KEY_DOWNARROW,KEY_PGDN,KEY_INS,KEY_DEL,0, 0, 0, KEY_F11, KEY_F12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -- cgit v1.2.3