/[cvs]/api/include/SDL_keyboard.h
ViewVC logotype

Annotation of /api/include/SDL_keyboard.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (hide annotations) (vendor branch)
Sun Jul 1 20:47:59 2001 UTC (22 years, 10 months ago) by bearsoft
Branch: lazy, MAIN
CVS Tags: start, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
First import

1 bearsoft 1.1 /*
2     SDL - Simple DirectMedia Layer
3     Copyright (C) 1997, 1998, 1999, 2000, 2001 Sam Lantinga
4    
5     This library is free software; you can redistribute it and/or
6     modify it under the terms of the GNU Library General Public
7     License as published by the Free Software Foundation; either
8     version 2 of the License, or (at your option) any later version.
9    
10     This library is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13     Library General Public License for more details.
14    
15     You should have received a copy of the GNU Library General Public
16     License along with this library; if not, write to the Free
17     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18    
19     Sam Lantinga
20     slouken@devolution.com
21     */
22    
23     #ifdef SAVE_RCSID
24     static char rcsid =
25     "@(#) $Id: SDL_keyboard.h,v 1.5.2.6 2001/02/17 01:45:30 hercules Exp $";
26     #endif
27    
28     /* Include file for SDL keyboard event handling */
29    
30     #ifndef _SDL_keyboard_h
31     #define _SDL_keyboard_h
32    
33     #include "SDL_types.h"
34     #include "SDL_keysym.h"
35    
36     #include "begin_code.h"
37     /* Set up for C function definitions, even when using C++ */
38     #ifdef __cplusplus
39     extern "C" {
40     #endif
41    
42     /* Keysym structure
43     - The scancode is hardware dependent, and should not be used by general
44     applications. If no hardware scancode is available, it will be 0.
45    
46     - The 'unicode' translated character is only available when character
47     translation is enabled by the SDL_EnableUNICODE() API. If non-zero,
48     this is a UNICODE character corresponding to the keypress. If the
49     high 9 bits of the character are 0, then this maps to the equivalent
50     ASCII character:
51     char ch;
52     if ( (keysym.unicode & 0xFF80) == 0 ) {
53     ch = keysym.unicode & 0x7F;
54     } else {
55     An international character..
56     }
57     */
58     typedef struct {
59     Uint8 scancode; /* hardware specific scancode */
60     SDLKey sym; /* SDL virtual keysym */
61     SDLMod mod; /* current key modifiers */
62     Uint16 unicode; /* translated character */
63     } SDL_keysym;
64    
65     /* This is the mask which refers to all hotkey bindings */
66     #define SDL_ALL_HOTKEYS 0xFFFFFFFF
67    
68     /* Function prototypes */
69     /*
70     * Enable/Disable UNICODE translation of keyboard input.
71     * This translation has some overhead, so translation defaults off.
72     * If 'enable' is 1, translation is enabled.
73     * If 'enable' is 0, translation is disabled.
74     * If 'enable' is -1, the translation state is not changed.
75     * It returns the previous state of keyboard translation.
76     */
77     extern DECLSPEC int SDL_EnableUNICODE(int enable);
78    
79     /*
80     * Enable/Disable keyboard repeat. Keyboard repeat defaults to off.
81     * 'delay' is the initial delay in ms between the time when a key is
82     * pressed, and keyboard repeat begins.
83     * 'interval' is the time in ms between keyboard repeat events.
84     */
85     #define SDL_DEFAULT_REPEAT_DELAY 500
86     #define SDL_DEFAULT_REPEAT_INTERVAL 30
87     /*
88     * If 'delay' is set to 0, keyboard repeat is disabled.
89     */
90     extern DECLSPEC int SDL_EnableKeyRepeat(int delay, int interval);
91    
92     /*
93     * Get a snapshot of the current state of the keyboard.
94     * Returns an array of keystates, indexed by the SDLK_* syms.
95     * Used:
96     * Uint8 *keystate = SDL_GetKeyState(NULL);
97     * if ( keystate[SDLK_RETURN] ) ... <RETURN> is pressed.
98     */
99     extern DECLSPEC Uint8 * SDL_GetKeyState(int *numkeys);
100    
101     /*
102     * Get the current key modifier state
103     */
104     extern DECLSPEC SDLMod SDL_GetModState(void);
105    
106     /*
107     * Set the current key modifier state
108     * This does not change the keyboard state, only the key modifier flags.
109     */
110     extern DECLSPEC void SDL_SetModState(SDLMod modstate);
111    
112     /*
113     * Get the name of an SDL virtual keysym
114     */
115     extern DECLSPEC char * SDL_GetKeyName(SDLKey key);
116    
117    
118     /* Ends C function definitions when using C++ */
119     #ifdef __cplusplus
120     }
121     #endif
122     #include "close_code.h"
123    
124     #endif /* _SDL_keyboard_h */

root@recompile.se
ViewVC Help
Powered by ViewVC 1.1.26