1%% Copyright (c) 2001 Dan Gudmundsson 2%% 3%% See the file "license.terms" for information on usage and redistribution 4%% of this file, and for a DISCLAIMER OF ALL WARRANTIES. 5%% 6%% $Id$ 7%% 8%%%---------------------------------------------------------------------- 9%%% File : sdl_keyboard.hrl 10%%% Author : Dan Gudmundsson <dgud@erix.ericsson.se> 11%%% Purpose : Define the available keys 12%%% Created : 7 Jul 2000 by Dan Gudmundsson <dgud@erix.ericsson.se> 13%%%---------------------------------------------------------------------- 14 15-define(SDL_DEFAULT_REPEAT_DELAY, 500). 16-define(SDL_DEFAULT_REPEAT_INTERVAL, 30). 17 18-define(SDLK_UNKNOWN , 0). 19-define(SDLK_FIRST , 0). 20-define(SDLK_BACKSPACE , 8). 21-define(SDLK_TAB , 9). 22-define(SDLK_CLEAR , 12). 23-define(SDLK_RETURN , 13). 24-define(SDLK_PAUSE , 19). 25-define(SDLK_ESCAPE , 27). 26-define(SDLK_SPACE , 32). 27-define(SDLK_EXCLAIM , 33). 28-define(SDLK_QUOTEDBL , 34). 29-define(SDLK_HASH , 35). 30-define(SDLK_DOLLAR , 36). 31-define(SDLK_AMPERSAND , 38). 32-define(SDLK_QUOTE , 39). 33-define(SDLK_LEFTPAREN , 40). 34-define(SDLK_RIGHTPAREN , 41). 35-define(SDLK_ASTERISK , 42). 36-define(SDLK_PLUS , 43). 37-define(SDLK_COMMA , 44). 38-define(SDLK_MINUS , 45). 39-define(SDLK_PERIOD , 46). 40-define(SDLK_SLASH , 47). 41-define(SDLK_0 , 48). 42-define(SDLK_1 , 49). 43-define(SDLK_2 , 50). 44-define(SDLK_3 , 51). 45-define(SDLK_4 , 52). 46-define(SDLK_5 , 53). 47-define(SDLK_6 , 54). 48-define(SDLK_7 , 55). 49-define(SDLK_8 , 56). 50-define(SDLK_9 , 57). 51-define(SDLK_COLON , 58). 52-define(SDLK_SEMICOLON , 59). 53-define(SDLK_LESS , 60). 54-define(SDLK_EQUALS , 61). 55-define(SDLK_GREATER , 62). 56-define(SDLK_QUESTION , 63). 57-define(SDLK_AT , 64). 58% 59%% Skip uppercase letters 60% 61-define(SDLK_LEFTBRACKET , 91). 62-define(SDLK_BACKSLASH , 92). 63-define(SDLK_RIGHTBRACKET , 93). 64-define(SDLK_CARET , 94). 65-define(SDLK_UNDERSCORE , 95). 66-define(SDLK_BACKQUOTE , 96). 67-define(SDLK_a , 97). 68-define(SDLK_b , 98). 69-define(SDLK_c , 99). 70-define(SDLK_d , 100). 71-define(SDLK_e , 101). 72-define(SDLK_f , 102). 73-define(SDLK_g , 103). 74-define(SDLK_h , 104). 75-define(SDLK_i , 105). 76-define(SDLK_j , 106). 77-define(SDLK_k , 107). 78-define(SDLK_l , 108). 79-define(SDLK_m , 109). 80-define(SDLK_n , 110). 81-define(SDLK_o , 111). 82-define(SDLK_p , 112). 83-define(SDLK_q , 113). 84-define(SDLK_r , 114). 85-define(SDLK_s , 115). 86-define(SDLK_t , 116). 87-define(SDLK_u , 117). 88-define(SDLK_v , 118). 89-define(SDLK_w , 119). 90-define(SDLK_x , 120). 91-define(SDLK_y , 121). 92-define(SDLK_z , 122). 93-define(SDLK_DELETE , 127). 94%% End of ASCII mapped keysyms 95 96%% International keyboard syms 97-define(SDLK_WORLD_0 , 160). %% 0xA0 98-define(SDLK_WORLD_1 , 161). 99-define(SDLK_WORLD_2 , 162). 100-define(SDLK_WORLD_3 , 163). 101-define(SDLK_WORLD_4 , 164). 102-define(SDLK_WORLD_5 , 165). 103-define(SDLK_WORLD_6 , 166). 104-define(SDLK_WORLD_7 , 167). 105-define(SDLK_WORLD_8 , 168). 106-define(SDLK_WORLD_9 , 169). 107-define(SDLK_WORLD_10 , 170). 108-define(SDLK_WORLD_11 , 171). 109-define(SDLK_WORLD_12 , 172). 110-define(SDLK_WORLD_13 , 173). 111-define(SDLK_WORLD_14 , 174). 112-define(SDLK_WORLD_15 , 175). 113-define(SDLK_WORLD_16 , 176). 114-define(SDLK_WORLD_17 , 177). 115-define(SDLK_WORLD_18 , 178). 116-define(SDLK_WORLD_19 , 179). 117-define(SDLK_WORLD_20 , 180). 118-define(SDLK_WORLD_21 , 181). 119-define(SDLK_WORLD_22 , 182). 120-define(SDLK_WORLD_23 , 183). 121-define(SDLK_WORLD_24 , 184). 122-define(SDLK_WORLD_25 , 185). 123-define(SDLK_WORLD_26 , 186). 124-define(SDLK_WORLD_27 , 187). 125-define(SDLK_WORLD_28 , 188). 126-define(SDLK_WORLD_29 , 189). 127-define(SDLK_WORLD_30 , 190). 128-define(SDLK_WORLD_31 , 191). 129-define(SDLK_WORLD_32 , 192). 130-define(SDLK_WORLD_33 , 193). 131-define(SDLK_WORLD_34 , 194). 132-define(SDLK_WORLD_35 , 195). 133-define(SDLK_WORLD_36 , 196). 134-define(SDLK_WORLD_37 , 197). 135-define(SDLK_WORLD_38 , 198). 136-define(SDLK_WORLD_39 , 199). 137-define(SDLK_WORLD_40 , 200). 138-define(SDLK_WORLD_41 , 201). 139-define(SDLK_WORLD_42 , 202). 140-define(SDLK_WORLD_43 , 203). 141-define(SDLK_WORLD_44 , 204). 142-define(SDLK_WORLD_45 , 205). 143-define(SDLK_WORLD_46 , 206). 144-define(SDLK_WORLD_47 , 207). 145-define(SDLK_WORLD_48 , 208). 146-define(SDLK_WORLD_49 , 209). 147-define(SDLK_WORLD_50 , 210). 148-define(SDLK_WORLD_51 , 211). 149-define(SDLK_WORLD_52 , 212). 150-define(SDLK_WORLD_53 , 213). 151-define(SDLK_WORLD_54 , 214). 152-define(SDLK_WORLD_55 , 215). 153-define(SDLK_WORLD_56 , 216). 154-define(SDLK_WORLD_57 , 217). 155-define(SDLK_WORLD_58 , 218). 156-define(SDLK_WORLD_59 , 219). 157-define(SDLK_WORLD_60 , 220). 158-define(SDLK_WORLD_61 , 221). 159-define(SDLK_WORLD_62 , 222). 160-define(SDLK_WORLD_63 , 223). 161-define(SDLK_WORLD_64 , 224). 162-define(SDLK_WORLD_65 , 225). 163-define(SDLK_WORLD_66 , 226). 164-define(SDLK_WORLD_67 , 227). 165-define(SDLK_WORLD_68 , 228). 166-define(SDLK_WORLD_69 , 229). 167-define(SDLK_WORLD_70 , 230). 168-define(SDLK_WORLD_71 , 231). 169-define(SDLK_WORLD_72 , 232). 170-define(SDLK_WORLD_73 , 233). 171-define(SDLK_WORLD_74 , 234). 172-define(SDLK_WORLD_75 , 235). 173-define(SDLK_WORLD_76 , 236). 174-define(SDLK_WORLD_77 , 237). 175-define(SDLK_WORLD_78 , 238). 176-define(SDLK_WORLD_79 , 239). 177-define(SDLK_WORLD_80 , 240). 178-define(SDLK_WORLD_81 , 241). 179-define(SDLK_WORLD_82 , 242). 180-define(SDLK_WORLD_83 , 243). 181-define(SDLK_WORLD_84 , 244). 182-define(SDLK_WORLD_85 , 245). 183-define(SDLK_WORLD_86 , 246). 184-define(SDLK_WORLD_87 , 247). 185-define(SDLK_WORLD_88 , 248). 186-define(SDLK_WORLD_89 , 249). 187-define(SDLK_WORLD_90 , 250). 188-define(SDLK_WORLD_91 , 251). 189-define(SDLK_WORLD_92 , 252). 190-define(SDLK_WORLD_93 , 253). 191-define(SDLK_WORLD_94 , 254). 192-define(SDLK_WORLD_95 , 255). %% 0xFF 193 194%% Numeric keypad 195-define(SDLK_KP0 , 256). 196-define(SDLK_KP1 , 257). 197-define(SDLK_KP2 , 258). 198-define(SDLK_KP3 , 259). 199-define(SDLK_KP4 , 260). 200-define(SDLK_KP5 , 261). 201-define(SDLK_KP6 , 262). 202-define(SDLK_KP7 , 263). 203-define(SDLK_KP8 , 264). 204-define(SDLK_KP9 , 265). 205-define(SDLK_KP_PERIOD , 266). 206-define(SDLK_KP_DIVIDE , 267). 207-define(SDLK_KP_MULTIPLY , 268). 208-define(SDLK_KP_MINUS , 269). 209-define(SDLK_KP_PLUS , 270). 210-define(SDLK_KP_ENTER , 271). 211-define(SDLK_KP_EQUALS , 272). 212 213%% Arrows + Home/End pad 214-define(SDLK_UP , 273). 215-define(SDLK_DOWN , 274). 216-define(SDLK_RIGHT , 275). 217-define(SDLK_LEFT , 276). 218-define(SDLK_INSERT , 277). 219-define(SDLK_HOME , 278). 220-define(SDLK_END , 279). 221-define(SDLK_PAGEUP , 280). 222-define(SDLK_PAGEDOWN , 281). 223 224%% Function keys 225-define(SDLK_F1 , 282). 226-define(SDLK_F2 , 283). 227-define(SDLK_F3 , 284). 228-define(SDLK_F4 , 285). 229-define(SDLK_F5 , 286). 230-define(SDLK_F6 , 287). 231-define(SDLK_F7 , 288). 232-define(SDLK_F8 , 289). 233-define(SDLK_F9 , 290). 234-define(SDLK_F10 , 291). 235-define(SDLK_F11 , 292). 236-define(SDLK_F12 , 293). 237-define(SDLK_F13 , 294). 238-define(SDLK_F14 , 295). 239-define(SDLK_F15 , 296). 240 241%% Key state modifier keys 242-define(SDLK_NUMLOCK , 300). 243-define(SDLK_CAPSLOCK , 301). 244-define(SDLK_SCROLLOCK , 302). 245-define(SDLK_RSHIFT , 303). 246-define(SDLK_LSHIFT , 304). 247-define(SDLK_RCTRL , 305). 248-define(SDLK_LCTRL , 306). 249-define(SDLK_RALT , 307). 250-define(SDLK_LALT , 308). 251-define(SDLK_RMETA , 309). 252-define(SDLK_LMETA , 310). 253-define(SDLK_LSUPER , 311). %% Left "Windows" key . 254-define(SDLK_RSUPER , 312). %% Right "Windows" key . 255-define(SDLK_MODE , 313). %% "Alt Gr" key . 256 257%% Miscellaneous function keys 258-define(SDLK_HELP , 315). 259-define(SDLK_PRINT , 316). 260-define(SDLK_SYSREQ , 317). 261-define(SDLK_BREAK , 318). 262-define(SDLK_MENU , 319). 263-define(SDLK_POWER , 320). %% Power Macintosh power key . 264-define(SDLK_EURO , 321). %% Some european keyboards . 265 266%%% /* Enumeration of valid key mods (possibly OR'd together) */ 267-define(KMOD_NONE , 16#0000). 268-define(KMOD_LSHIFT , 16#0001). 269-define(KMOD_RSHIFT , 16#0002). 270-define(KMOD_LCTRL , 16#0040). 271-define(KMOD_RCTRL , 16#0080). 272-define(KMOD_LALT , 16#0100). 273-define(KMOD_RALT , 16#0200). 274-define(KMOD_LMETA , 16#0400). 275-define(KMOD_RMETA , 16#0800). 276-define(KMOD_NUM , 16#1000). 277-define(KMOD_CAPS , 16#2000). 278-define(KMOD_MODE , 16#4000). 279-define(KMOD_RESERVED , 16#8000). 280-define(KMOD_CTRL, (?KMOD_LCTRL bor ?KMOD_RCTRL)). 281-define(KMOD_SHIFT, (?KMOD_LSHIFT bor ?KMOD_RSHIFT)). 282-define(KMOD_ALT, (?KMOD_LALT bor ?KMOD_RALT)). 283-define(KMOD_META, (?KMOD_LMETA bor ?KMOD_RMETA)). 284 285