dwww Home | Manual pages | Find package

SDL_keysym(3)                  SDL API Reference                 SDL_keysym(3)

NAME
       SDL_keysym - Keysym structure

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

STRUCTURE DATA
       scancode            Hardware specific scancode

       sym                 SDL virtual keysym

       mod                 Current key modifiers

       unicode             Translated 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.
       ");
       }

        UNICODE translation does have a slight overhead so don't enable it un-
       less its needed.

SEE ALSO
       SDLKey

SDL                         Tue 11 Sep 2001, 23:00               SDL_keysym(3)

Generated by dwww version 1.15 on Thu Jun 20 17:35:42 CEST 2024.