mirror of
https://github.com/yawut/SDL.git
synced 2026-06-13 12:10:35 -05:00
From: Sam Lantinga Subject: SDL 1.3 keyboard plan After lots of discussion with Christian, this is what we came up with: > So, to sum up... > SDLK_* become the physical keys, starting at > (1<<21) > We create a macro SDLK_INDEX(X) > We have two functions SDL_GetLayoutKey(SDLKey) and SDL_GetKeyName() > SDL_GetLayoutKey maps to UCS4 for printable characters, and SDLK* for non-printable characters > and does so based on the OS's current keyboard layout > SDL_GetKeyName() handles both SDLK_* and UCS4, converting UCS4 to UTF-8 and converting SDLK_* into our names, which are UTF-8 for printable characters. > WASD folks use SDLK_*, and 'I' folks use SDL_GetLayoutKey(SDLK_*) Here is the patch he came up with, and his e-mail about it: Date: Fri, 17 Aug 2007 19:50:28 +0200 From: Christian Walther Subject: Re: SDL 1.3 keyboard plan > Sounds great, go ahead and send me a patch. Here goes! Thanks for having a look. Don't hesitate to comment if anything does not conform to your ideas. One caveat: Committing this now may break compilability of some video drivers - specifically, if they use any of the SDLK_* codes that were obsoleted and moved into SDL_compat.h. I only tried Cocoa (which did break, but is already fixed) and X11 (which didn't, but then its key handling is #iffed out). If that's a problem, it may need to go into a branch. -Christian |
||
|---|---|---|
| .. | ||
| begin_code.h | ||
| close_code.h | ||
| doxyfile | ||
| SDL_audio.h | ||
| SDL_cdrom.h | ||
| SDL_compat.h | ||
| SDL_config_dreamcast.h | ||
| SDL_config_macosx.h | ||
| SDL_config_minimal.h | ||
| SDL_config_os2.h | ||
| SDL_config_win32.h | ||
| SDL_config.h.default | ||
| SDL_config.h.in | ||
| SDL_copying.h | ||
| SDL_cpuinfo.h | ||
| SDL_endian.h | ||
| SDL_error.h | ||
| SDL_events.h | ||
| SDL_joystick.h | ||
| SDL_keyboard.h | ||
| SDL_keysym.h | ||
| SDL_loadso.h | ||
| SDL_main.h | ||
| SDL_mouse.h | ||
| SDL_mutex.h | ||
| SDL_name.h | ||
| SDL_opengl.h | ||
| SDL_pixels.h | ||
| SDL_platform.h | ||
| SDL_quit.h | ||
| SDL_rwops.h | ||
| SDL_stdinc.h | ||
| SDL_syswm.h | ||
| SDL_thread.h | ||
| SDL_timer.h | ||
| SDL_types.h | ||
| SDL_version.h | ||
| SDL_video.h | ||
| SDL.h | ||