From 9682c8870b8ff5e4ac2e4c70b759f791c6f38c1f Mon Sep 17 00:00:00 2001 From: Jesse Hall Date: Mon, 9 Jul 2012 11:27:07 -0700 Subject: Import SDL release-1.2.15 Change-Id: I505c4aea24325cad475f217db5589814b4c75dbf --- distrib/sdl-1.2.15/docs/html/sdlkeysym.html | 355 ++++++++++++++++++++++++++++ 1 file changed, 355 insertions(+) create mode 100644 distrib/sdl-1.2.15/docs/html/sdlkeysym.html (limited to 'distrib/sdl-1.2.15/docs/html/sdlkeysym.html') diff --git a/distrib/sdl-1.2.15/docs/html/sdlkeysym.html b/distrib/sdl-1.2.15/docs/html/sdlkeysym.html new file mode 100644 index 0000000..7a22f79 --- /dev/null +++ b/distrib/sdl-1.2.15/docs/html/sdlkeysym.html @@ -0,0 +1,355 @@ +SDL_keysym
SDL Library Documentation
PrevNext

SDL_keysym

Name

SDL_keysym -- Keysym structure

Structure Definition

typedef struct{
+  Uint8 scancode;
+  SDLKey sym;
+  SDLMod mod;
+  Uint16 unicode;
+} SDL_keysym;

Structure Data

scancodeHardware specific scancode
symSDL virtual keysym
modCurrent key modifiers
unicodeTranslated character

Description

The SDL_keysym structure is used by reporting key presses and releases since it is a part of the SDL_KeyboardEvent.

The scancode field should generally be left alone, it is the hardware dependent scancode returned by the keyboard. The sym field is extremely useful. It is the SDL-defined value of the key (see SDL Key Syms. This field is very useful when you are checking for certain key presses, like so: +

.
+.
+while(SDL_PollEvent(&event)){
+  switch(event.type){
+    case SDL_KEYDOWN:
+      if(event.key.keysym.sym==SDLK_LEFT)
+        move_left();
+      break;
+    .
+    .
+    .
+  }
+}
+.
+.
+mod stores the current state of the keyboard modifiers as explained in SDL_GetModState. The unicode is only used when UNICODE translation is enabled with SDL_EnableUNICODE. If unicode is non-zero then this a the UNICODE character corresponding to the keypress. If the high 9 bits of the character are 0, then this maps to the equivalent ASCII character: +
char ch;
+if ( (keysym.unicode & 0xFF80) == 0 ) {
+  ch = keysym.unicode & 0x7F;
+}
+else {
+  printf("An International Character.\n");
+}
+UNICODE translation does have a slight overhead so don't enable it unless its needed.

See Also

SDLKey


PrevHomeNext
SDL_QuitEventUpSDLKey
\ No newline at end of file -- cgit v1.1