Mercurial > sdl-ios-xcode
comparison src/video/win32/SDL_win32events.c @ 2313:012ec5192dfa
Added support for keypad enter
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 10 Feb 2008 05:34:33 +0000 |
parents | bcec4b189f5b |
children | f537a293b3da |
comparison
equal
deleted
inserted
replaced
2312:bcec4b189f5b | 2313:012ec5192dfa |
---|---|
33 #endif | 33 #endif |
34 | 34 |
35 /* Masks for processing the windows KEYDOWN and KEYUP messages */ | 35 /* Masks for processing the windows KEYDOWN and KEYUP messages */ |
36 #define REPEATED_KEYMASK (1<<30) | 36 #define REPEATED_KEYMASK (1<<30) |
37 #define EXTENDED_KEYMASK (1<<24) | 37 #define EXTENDED_KEYMASK (1<<24) |
38 | |
39 #define VK_ENTER 10 /* Keypad Enter ... no VKEY defined? */ | |
38 | 40 |
39 /* Make sure XBUTTON stuff is defined that isn't in older Platform SDKs... */ | 41 /* Make sure XBUTTON stuff is defined that isn't in older Platform SDKs... */ |
40 #ifndef WM_XBUTTONDOWN | 42 #ifndef WM_XBUTTONDOWN |
41 #define WM_XBUTTONDOWN 0x020B | 43 #define WM_XBUTTONDOWN 0x020B |
42 #endif | 44 #endif |
360 if (lParam & EXTENDED_KEYMASK) | 362 if (lParam & EXTENDED_KEYMASK) |
361 wParam = VK_RMENU; | 363 wParam = VK_RMENU; |
362 else | 364 else |
363 wParam = VK_LMENU; | 365 wParam = VK_LMENU; |
364 break; | 366 break; |
367 case VK_RETURN: | |
368 if (lParam & EXTENDED_KEYMASK) | |
369 wParam = VK_ENTER; | |
370 break; | |
365 } | 371 } |
366 if (wParam < 256) { | 372 if (wParam < 256) { |
367 SDL_SendKeyboardKey(index, SDL_PRESSED, | 373 SDL_SendKeyboardKey(index, SDL_PRESSED, |
368 data->videodata->key_layout[wParam]); | 374 data->videodata->key_layout[wParam]); |
369 } | 375 } |
403 case VK_MENU: | 409 case VK_MENU: |
404 if (lParam & EXTENDED_KEYMASK) | 410 if (lParam & EXTENDED_KEYMASK) |
405 wParam = VK_RMENU; | 411 wParam = VK_RMENU; |
406 else | 412 else |
407 wParam = VK_LMENU; | 413 wParam = VK_LMENU; |
414 break; | |
415 case VK_RETURN: | |
416 if (lParam & EXTENDED_KEYMASK) | |
417 wParam = VK_ENTER; | |
408 break; | 418 break; |
409 } | 419 } |
410 /* Windows only reports keyup for print screen */ | 420 /* Windows only reports keyup for print screen */ |
411 if (wParam == VK_SNAPSHOT | 421 if (wParam == VK_SNAPSHOT |
412 && SDL_GetKeyboardState(NULL)[SDL_SCANCODE_PRINTSCREEN] == | 422 && SDL_GetKeyboardState(NULL)[SDL_SCANCODE_PRINTSCREEN] == |