type A_Keyboard_Hook is access procedure;
type A_Keyboard_Callback is access function( key : Integer ) return Integer;
type A_Keyboard_Ucallback is access function( key: Integer; scancode : A_Integer ) return Integer;
type A_Keyboard_Lowlevel_Callback is access procedure( scancode : Integer );
KB_CAPSLOCK_FLAG : constant Unsigned_32;
KEY_A : constant Integer := 1;
KEY_B : constant Integer := 2;
KEY_C : constant Integer := 3;
KEY_D : constant Integer := 4;
KEY_E : constant Integer := 5;
KEY_F : constant Integer := 6;
KEY_G : constant Integer := 7;
KEY_H : constant Integer := 8;
KEY_I : constant Integer := 9;
KEY_J : constant Integer := 10;
KEY_K : constant Integer := 11;
KEY_L : constant Integer := 12;
KEY_M : constant Integer := 13;
KEY_N : constant Integer := 14;
KEY_O : constant Integer := 15;
KEY_P : constant Integer := 16;
KEY_Q : constant Integer := 17;
KEY_R : constant Integer := 18;
KEY_S : constant Integer := 19;
KEY_T : constant Integer := 20;
KEY_U : constant Integer := 21;
KEY_V : constant Integer := 22;
KEY_W : constant Integer := 23;
KEY_X : constant Integer := 24;
KEY_Y : constant Integer := 25;
KEY_Z : constant Integer := 26;
KEY_0 : constant Integer := 27;
KEY_1 : constant Integer := 28;
KEY_2 : constant Integer := 29;
KEY_3 : constant Integer := 30;
KEY_4 : constant Integer := 31;
KEY_5 : constant Integer := 32;
KEY_6 : constant Integer := 33;
KEY_7 : constant Integer := 34;
KEY_8 : constant Integer := 35;
KEY_9 : constant Integer := 36;
KEY_0_PAD : constant Integer := 37;
KEY_1_PAD : constant Integer := 38;
KEY_2_PAD : constant Integer := 39;
KEY_3_PAD : constant Integer := 40;
KEY_4_PAD : constant Integer := 41;
KEY_5_PAD : constant Integer := 42;
KEY_6_PAD : constant Integer := 43;
KEY_7_PAD : constant Integer := 44;
KEY_8_PAD : constant Integer := 45;
KEY_9_PAD : constant Integer := 46;
KEY_F1 : constant Integer := 47;
KEY_F2 : constant Integer := 48;
KEY_F3 : constant Integer := 49;
KEY_F5 : constant Integer := 51;
KEY_F6 : constant Integer := 52;
KEY_F7 : constant Integer := 53;
KEY_F8 : constant Integer := 54;
KEY_F9 : constant Integer := 55;
KEY_F10 : constant Integer := 56;
KEY_F11 : constant Integer := 57;
KEY_F12 : constant Integer := 58;
KEY_ESC : constant Integer := 59;
KEY_TILDE : constant Integer := 60;
KEY_MINUS : constant Integer := 61;
KEY_EQUALS : constant Integer := 62;
KEY_BACKSPACE : constant Integer := 63;
KEY_OPENBRACE : constant Integer := 65;
KEY_CLOSEBRACE : constant Integer := 66;
KEY_ENTER : constant Integer := 67;
KEY_COLON : constant Integer := 68;
KEY_QUOTE : constant Integer := 69;
KEY_BACKSLASH : constant Integer := 70;
KEY_BACKSLASH2 : constant Integer := 71;
KEY_COMMA : constant Integer := 72;
KEY_STOP : constant Integer := 73;
KEY_SLASH : constant Integer := 74;
KEY_SPACE : constant Integer := 75;
KEY_INSERT : constant Integer := 76;
KEY_DEL : constant Integer := 77;
KEY_HOME : constant Integer := 78;
KEY_END : constant Integer := 79;
KEY_PGUP : constant Integer := 80;
KEY_PGDN : constant Integer := 81;
KEY_LEFT : constant Integer := 82;
KEY_RIGHT : constant Integer := 83;
KEY_UP : constant Integer := 84;
KEY_DOWN : constant Integer := 85;
KEY_SLASH_PAD : constant Integer := 86;
KEY_ASTERISK : constant Integer := 87;
KEY_MINUS_PAD : constant Integer := 88;
KEY_PLUS_PAD : constant Integer := 89;
KEY_DEL_PAD : constant Integer := 90;
KEY_ENTER_PAD : constant Integer := 91;
KEY_PRTSCR : constant Integer := 92;
KEY_PAUSE : constant Integer := 93;
KEY_ABNT_C1 : constant Integer := 94;
KEY_YEN : constant Integer := 95;
KEY_KANA : constant Integer := 96;
KEY_CONVERT : constant Integer := 97;
KEY_NOCONVERT : constant Integer := 98;
KEY_AT : constant Integer := 99;
KEY_CIRCUMFLEX : constant Integer := 100;
KEY_COLON2 : constant Integer := 101;
KEY_KANJI : constant Integer := 102;
KEY_EQUALS_PAD : constant Integer := 103;
KEY_BACKQUOTE : constant Integer := 104;
KEY_SEMICOLON : constant Integer := 105;
KEY_COMMAND : constant Integer := 106;
KEY_UNKNOWN1 : constant Integer := 107;
KEY_UNKNOWN2 : constant Integer := 108;
KEY_UNKNOWN3 : constant Integer := 109;
KEY_UNKNOWN4 : constant Integer := 110;
KEY_UNKNOWN5 : constant Integer := 111;
KEY_UNKNOWN6 : constant Integer := 112;
KEY_UNKNOWN7 : constant Integer := 113;
KEY_UNKNOWN8 : constant Integer := 114;
KEY_MODIFIERS : constant Integer := 115;
KEY_LCONTROL : constant Integer := 117;
KEY_RCONTROL : constant Integer := 118;
KEY_ALT : constant Integer := 119;
KEY_ALTGR : constant Integer := 120;
KEY_LWIN : constant Integer := 121;
KEY_RWIN : constant Integer := 122;
KEY_MENU : constant Integer := 123;
KEY_SCRLOCK : constant Integer := 124;
KEY_NUMLOCK : constant Integer := 125;
KEY_CAPSLOCK : constant Integer := 126;
KEY_MAX : constant Integer;
procedure Clear_Keybuf;
function Get_Key_Shifts return Unsigned_32;
function Install_Keyboard return Integer;
procedure Install_Keyboard_Hooks
( | keypressed, readkey | : A_Keyboard_Hook ); |
function Poll_Keyboard return Integer;
procedure Remove_Keyboard;
procedure Set_Keyboard_Callback
( | cb | : A_Keyboard_Callback ); |
procedure Set_Keyboard_Lowlevel_Callback
( | cb | : A_Keyboard_Lowlevel_Callback ); |
procedure Set_Keyboard_Ucallback
( | cb | : A_Keyboard_Ucallback ); |