module Sdlkey: sig
.. end
Keyboard handling and key symbols
Keysyms
type
t =
| |
KEY_UNKNOWN |
| |
KEY_BACKSPACE |
| |
KEY_TAB |
| |
KEY_CLEAR |
| |
KEY_RETURN |
| |
KEY_PAUSE |
| |
KEY_ESCAPE |
| |
KEY_SPACE |
| |
KEY_EXCLAIM |
| |
KEY_QUOTEDBL |
| |
KEY_HASH |
| |
KEY_DOLLAR |
| |
KEY_AMPERSAND |
| |
KEY_QUOTE |
| |
KEY_LEFTPAREN |
| |
KEY_RIGHTPAREN |
| |
KEY_ASTERISK |
| |
KEY_PLUS |
| |
KEY_COMMA |
| |
KEY_MINUS |
| |
KEY_PERIOD |
| |
KEY_SLASH |
| |
KEY_0 |
| |
KEY_1 |
| |
KEY_2 |
| |
KEY_3 |
| |
KEY_4 |
| |
KEY_5 |
| |
KEY_6 |
| |
KEY_7 |
| |
KEY_8 |
| |
KEY_9 |
| |
KEY_COLON |
| |
KEY_SEMICOLON |
| |
KEY_LESS |
| |
KEY_EQUALS |
| |
KEY_GREATER |
| |
KEY_QUESTION |
| |
KEY_AT |
| |
KEY_LEFTBRACKET |
| |
KEY_BACKSLASH |
| |
KEY_RIGHTBRACKET |
| |
KEY_CARET |
| |
KEY_UNDERSCORE |
| |
KEY_BACKQUOTE |
| |
KEY_a |
| |
KEY_b |
| |
KEY_c |
| |
KEY_d |
| |
KEY_e |
| |
KEY_f |
| |
KEY_g |
| |
KEY_h |
| |
KEY_i |
| |
KEY_j |
| |
KEY_k |
| |
KEY_l |
| |
KEY_m |
| |
KEY_n |
| |
KEY_o |
| |
KEY_p |
| |
KEY_q |
| |
KEY_r |
| |
KEY_s |
| |
KEY_t |
| |
KEY_u |
| |
KEY_v |
| |
KEY_w |
| |
KEY_x |
| |
KEY_y |
| |
KEY_z |
| |
KEY_DELETE |
| |
KEY_WORLD_0 |
| |
KEY_WORLD_1 |
| |
KEY_WORLD_2 |
| |
KEY_WORLD_3 |
| |
KEY_WORLD_4 |
| |
KEY_WORLD_5 |
| |
KEY_WORLD_6 |
| |
KEY_WORLD_7 |
| |
KEY_WORLD_8 |
| |
KEY_WORLD_9 |
| |
KEY_WORLD_10 |
| |
KEY_WORLD_11 |
| |
KEY_WORLD_12 |
| |
KEY_WORLD_13 |
| |
KEY_WORLD_14 |
| |
KEY_WORLD_15 |
| |
KEY_WORLD_16 |
| |
KEY_WORLD_17 |
| |
KEY_WORLD_18 |
| |
KEY_WORLD_19 |
| |
KEY_WORLD_20 |
| |
KEY_WORLD_21 |
| |
KEY_WORLD_22 |
| |
KEY_WORLD_23 |
| |
KEY_WORLD_24 |
| |
KEY_WORLD_25 |
| |
KEY_WORLD_26 |
| |
KEY_WORLD_27 |
| |
KEY_WORLD_28 |
| |
KEY_WORLD_29 |
| |
KEY_WORLD_30 |
| |
KEY_WORLD_31 |
| |
KEY_WORLD_32 |
| |
KEY_WORLD_33 |
| |
KEY_WORLD_34 |
| |
KEY_WORLD_35 |
| |
KEY_WORLD_36 |
| |
KEY_WORLD_37 |
| |
KEY_WORLD_38 |
| |
KEY_WORLD_39 |
| |
KEY_WORLD_40 |
| |
KEY_WORLD_41 |
| |
KEY_WORLD_42 |
| |
KEY_WORLD_43 |
| |
KEY_WORLD_44 |
| |
KEY_WORLD_45 |
| |
KEY_WORLD_46 |
| |
KEY_WORLD_47 |
| |
KEY_WORLD_48 |
| |
KEY_WORLD_49 |
| |
KEY_WORLD_50 |
| |
KEY_WORLD_51 |
| |
KEY_WORLD_52 |
| |
KEY_WORLD_53 |
| |
KEY_WORLD_54 |
| |
KEY_WORLD_55 |
| |
KEY_WORLD_56 |
| |
KEY_WORLD_57 |
| |
KEY_WORLD_58 |
| |
KEY_WORLD_59 |
| |
KEY_WORLD_60 |
| |
KEY_WORLD_61 |
| |
KEY_WORLD_62 |
| |
KEY_WORLD_63 |
| |
KEY_WORLD_64 |
| |
KEY_WORLD_65 |
| |
KEY_WORLD_66 |
| |
KEY_WORLD_67 |
| |
KEY_WORLD_68 |
| |
KEY_WORLD_69 |
| |
KEY_WORLD_70 |
| |
KEY_WORLD_71 |
| |
KEY_WORLD_72 |
| |
KEY_WORLD_73 |
| |
KEY_WORLD_74 |
| |
KEY_WORLD_75 |
| |
KEY_WORLD_76 |
| |
KEY_WORLD_77 |
| |
KEY_WORLD_78 |
| |
KEY_WORLD_79 |
| |
KEY_WORLD_80 |
| |
KEY_WORLD_81 |
| |
KEY_WORLD_82 |
| |
KEY_WORLD_83 |
| |
KEY_WORLD_84 |
| |
KEY_WORLD_85 |
| |
KEY_WORLD_86 |
| |
KEY_WORLD_87 |
| |
KEY_WORLD_88 |
| |
KEY_WORLD_89 |
| |
KEY_WORLD_90 |
| |
KEY_WORLD_91 |
| |
KEY_WORLD_92 |
| |
KEY_WORLD_93 |
| |
KEY_WORLD_94 |
| |
KEY_WORLD_95 |
| |
KEY_KP0 |
| |
KEY_KP1 |
| |
KEY_KP2 |
| |
KEY_KP3 |
| |
KEY_KP4 |
| |
KEY_KP5 |
| |
KEY_KP6 |
| |
KEY_KP7 |
| |
KEY_KP8 |
| |
KEY_KP9 |
| |
KEY_KP_PERIOD |
| |
KEY_KP_DIVIDE |
| |
KEY_KP_MULTIPLY |
| |
KEY_KP_MINUS |
| |
KEY_KP_PLUS |
| |
KEY_KP_ENTER |
| |
KEY_KP_EQUALS |
| |
KEY_UP |
| |
KEY_DOWN |
| |
KEY_RIGHT |
| |
KEY_LEFT |
| |
KEY_INSERT |
| |
KEY_HOME |
| |
KEY_END |
| |
KEY_PAGEUP |
| |
KEY_PAGEDOWN |
| |
KEY_F1 |
| |
KEY_F2 |
| |
KEY_F3 |
| |
KEY_F4 |
| |
KEY_F5 |
| |
KEY_F6 |
| |
KEY_F7 |
| |
KEY_F8 |
| |
KEY_F9 |
| |
KEY_F10 |
| |
KEY_F11 |
| |
KEY_F12 |
| |
KEY_F13 |
| |
KEY_F14 |
| |
KEY_F15 |
| |
KEY_NUMLOCK |
| |
KEY_CAPSLOCK |
| |
KEY_SCROLLOCK |
| |
KEY_RSHIFT |
| |
KEY_LSHIFT |
| |
KEY_RCTRL |
| |
KEY_LCTRL |
| |
KEY_RALT |
| |
KEY_LALT |
| |
KEY_RMETA |
| |
KEY_LMETA |
| |
KEY_LSUPER |
| |
KEY_RSUPER |
| |
KEY_MODE |
| |
KEY_COMPOSE |
| |
KEY_HELP |
| |
KEY_PRINT |
| |
KEY_SYSREQ |
| |
KEY_BREAK |
| |
KEY_MENU |
| |
KEY_POWER |
| |
KEY_EURO |
| |
KEY_UNDO |
Concrete type describing keyboard keys ("keysym")
val int_of_key : t -> int
get the SDL keysym of the key
val key_of_int : int -> t
get the key corresponding to a SDL keysym
Raises Invalid_arg
if not a valid SDL keysym
val char_of_key : t -> char
Returns a (iso-8859-1) character corresponding to a key
Raises Invalid_arg
if corresponding SDL keysym is > 255
val num_keys : int
number of keys in the Sdlkey.t variant type : should be 232
val max_code : int
highest SDL keysym : should be 322
val name : t -> string
Returns a short string describing the key
Keyboard handling
val enable_unicode : bool -> unit
Enable unicode translation of keysyms for keyboard events
val query_unicode : unit -> bool
val disable_key_repeat : unit -> unit
Disable keyboard repeat
val enable_key_repeat : ?delay:int -> ?interval:int -> unit -> unit
Enable keyboard repeat
delay
: initial delay in ms between the time when a key is
pressed, and keyboard repeat begins
interval
: the time in ms between keyboard repeat events
val get_key_state : unit ->
(int, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
Get a snapshot of the current state of the keyboard.
Returns an array of keystates, indexed by the SDL keysyms
(cf
Sdlkey.int_of_key
)
val is_key_pressed : t -> bool
Checks wether a key is currently pressed on the keyboard.
Key modifiers
type
mod_state = int
The following values are flags. Use with land
, lor
, etc.
val kmod_none : mod_state
val kmod_lshift : mod_state
val kmod_rshift : mod_state
val kmod_lctrl : mod_state
val kmod_rctrl : mod_state
val kmod_lalt : mod_state
val kmod_ralt : mod_state
val kmod_lmeta : mod_state
val kmod_rmeta : mod_state
val kmod_num : mod_state
val kmod_caps : mod_state
val kmod_mode : mod_state
val kmod_ctrl : mod_state
val kmod_shift : mod_state
val kmod_alt : mod_state
val kmod_meta : mod_state
val get_mod_state : unit -> mod_state
Get the current key modifier state
val set_mod_state : mod_state -> unit
Set the current key modifier state
This does not change the keyboard state, only the key modifier flags.