Index

Package: Keyboard

Description

package Allegro.Keyboard is

Types

A_Keyboard_Hook

type A_Keyboard_Hook is
        access procedure;

A_Keyboard_Callback

type A_Keyboard_Callback is
        access function( key : Integer ) return Integer;

A_Keyboard_Ucallback

type A_Keyboard_Ucallback is
        access function( key: Integer; scancode : A_Integer ) return Integer;

A_Keyboard_Lowlevel_Callback

type A_Keyboard_Lowlevel_Callback is
        access procedure( scancode : Integer );

Constants & Global variables

KB_SHIFT_FLAG (Unsigned_32)

KB_SHIFT_FLAG    : constant Unsigned_32;

KB_CTRL_FLAG (Unsigned_32)

KB_CTRL_FLAG     : constant Unsigned_32;

KB_ALT_FLAG (Unsigned_32)

KB_ALT_FLAG      : constant Unsigned_32;

KB_LWIN_FLAG (Unsigned_32)

KB_LWIN_FLAG     : constant Unsigned_32;

KB_RWIN_FLAG (Unsigned_32)

KB_RWIN_FLAG     : constant Unsigned_32;

KB_MENU_FLAG (Unsigned_32)

KB_MENU_FLAG     : constant Unsigned_32;

KB_COMMAND_FLAG (Unsigned_32)

KB_COMMAND_FLAG  : constant Unsigned_32;

KB_SCROLOCK_FLAG (Unsigned_32)

KB_SCROLOCK_FLAG : constant Unsigned_32;

KB_NUMLOCK_FLAG (Unsigned_32)

KB_NUMLOCK_FLAG  : constant Unsigned_32;

KB_CAPSLOCK_FLAG (Unsigned_32)

KB_CAPSLOCK_FLAG : constant Unsigned_32;

KB_INALTSEQ_FLAG (Unsigned_32)

KB_INALTSEQ_FLAG : constant Unsigned_32;

KB_ACCENT1_FLAG (Unsigned_32)

KB_ACCENT1_FLAG  : constant Unsigned_32;

KB_ACCENT2_FLAG (Unsigned_32)

KB_ACCENT2_FLAG  : constant Unsigned_32;

KB_ACCENT3_FLAG (Unsigned_32)

KB_ACCENT3_FLAG  : constant Unsigned_32;

KB_ACCENT4_FLAG (Unsigned_32)

KB_ACCENT4_FLAG  : constant Unsigned_32;

KEY_A (Integer)

KEY_A          : constant Integer := 1;

KEY_B (Integer)

KEY_B          : constant Integer := 2;

KEY_C (Integer)

KEY_C          : constant Integer := 3;

KEY_D (Integer)

KEY_D          : constant Integer := 4;

KEY_E (Integer)

KEY_E          : constant Integer := 5;

KEY_F (Integer)

KEY_F          : constant Integer := 6;

KEY_G (Integer)

KEY_G          : constant Integer := 7;

KEY_H (Integer)

KEY_H          : constant Integer := 8;

KEY_I (Integer)

KEY_I          : constant Integer := 9;

KEY_J (Integer)

KEY_J          : constant Integer := 10;

KEY_K (Integer)

KEY_K          : constant Integer := 11;

KEY_L (Integer)

KEY_L          : constant Integer := 12;

KEY_M (Integer)

KEY_M          : constant Integer := 13;

KEY_N (Integer)

KEY_N          : constant Integer := 14;

KEY_O (Integer)

KEY_O          : constant Integer := 15;

KEY_P (Integer)

KEY_P          : constant Integer := 16;

KEY_Q (Integer)

KEY_Q          : constant Integer := 17;

KEY_R (Integer)

KEY_R          : constant Integer := 18;

KEY_S (Integer)

KEY_S          : constant Integer := 19;

KEY_T (Integer)

KEY_T          : constant Integer := 20;

KEY_U (Integer)

KEY_U          : constant Integer := 21;

KEY_V (Integer)

KEY_V          : constant Integer := 22;

KEY_W (Integer)

KEY_W          : constant Integer := 23;

KEY_X (Integer)

KEY_X          : constant Integer := 24;

KEY_Y (Integer)

KEY_Y          : constant Integer := 25;

KEY_Z (Integer)

KEY_Z          : constant Integer := 26;

KEY_0 (Integer)

KEY_0          : constant Integer := 27;

KEY_1 (Integer)

KEY_1          : constant Integer := 28;

KEY_2 (Integer)

KEY_2          : constant Integer := 29;

KEY_3 (Integer)

KEY_3          : constant Integer := 30;

KEY_4 (Integer)

KEY_4          : constant Integer := 31;

KEY_5 (Integer)

KEY_5          : constant Integer := 32;

KEY_6 (Integer)

KEY_6          : constant Integer := 33;

KEY_7 (Integer)

KEY_7          : constant Integer := 34;

KEY_8 (Integer)

KEY_8          : constant Integer := 35;

KEY_9 (Integer)

KEY_9          : constant Integer := 36;

KEY_0_PAD (Integer)

KEY_0_PAD      : constant Integer := 37;

KEY_1_PAD (Integer)

KEY_1_PAD      : constant Integer := 38;

KEY_2_PAD (Integer)

KEY_2_PAD      : constant Integer := 39;

KEY_3_PAD (Integer)

KEY_3_PAD      : constant Integer := 40;

KEY_4_PAD (Integer)

KEY_4_PAD      : constant Integer := 41;

KEY_5_PAD (Integer)

KEY_5_PAD      : constant Integer := 42;

KEY_6_PAD (Integer)

KEY_6_PAD      : constant Integer := 43;

KEY_7_PAD (Integer)

KEY_7_PAD      : constant Integer := 44;

KEY_8_PAD (Integer)

KEY_8_PAD      : constant Integer := 45;

KEY_9_PAD (Integer)

KEY_9_PAD      : constant Integer := 46;

KEY_F1 (Integer)

KEY_F1         : constant Integer := 47;

KEY_F2 (Integer)

KEY_F2         : constant Integer := 48;

KEY_F3 (Integer)

KEY_F3         : constant Integer := 49;

KEY_F4 (Integer)

KEY_F4         : constant Integer := 50;

KEY_F5 (Integer)

KEY_F5         : constant Integer := 51;

KEY_F6 (Integer)

KEY_F6         : constant Integer := 52;

KEY_F7 (Integer)

KEY_F7         : constant Integer := 53;

KEY_F8 (Integer)

KEY_F8         : constant Integer := 54;

KEY_F9 (Integer)

KEY_F9         : constant Integer := 55;

KEY_F10 (Integer)

KEY_F10        : constant Integer := 56;

KEY_F11 (Integer)

KEY_F11        : constant Integer := 57;

KEY_F12 (Integer)

KEY_F12        : constant Integer := 58;

KEY_ESC (Integer)

KEY_ESC        : constant Integer := 59;

KEY_TILDE (Integer)

KEY_TILDE      : constant Integer := 60;

KEY_MINUS (Integer)

KEY_MINUS      : constant Integer := 61;

KEY_EQUALS (Integer)

KEY_EQUALS     : constant Integer := 62;

KEY_BACKSPACE (Integer)

KEY_BACKSPACE  : constant Integer := 63;

KEY_TAB (Integer)

KEY_TAB        : constant Integer := 64;

KEY_OPENBRACE (Integer)

KEY_OPENBRACE  : constant Integer := 65;

KEY_CLOSEBRACE (Integer)

KEY_CLOSEBRACE : constant Integer := 66;

KEY_ENTER (Integer)

KEY_ENTER      : constant Integer := 67;

KEY_COLON (Integer)

KEY_COLON      : constant Integer := 68;

KEY_QUOTE (Integer)

KEY_QUOTE      : constant Integer := 69;

KEY_BACKSLASH (Integer)

KEY_BACKSLASH  : constant Integer := 70;

KEY_BACKSLASH2 (Integer)

KEY_BACKSLASH2 : constant Integer := 71;

KEY_COMMA (Integer)

KEY_COMMA      : constant Integer := 72;

KEY_STOP (Integer)

KEY_STOP       : constant Integer := 73;

KEY_SLASH (Integer)

KEY_SLASH      : constant Integer := 74;

KEY_SPACE (Integer)

KEY_SPACE      : constant Integer := 75;

KEY_INSERT (Integer)

KEY_INSERT     : constant Integer := 76;

KEY_DEL (Integer)

KEY_DEL        : constant Integer := 77;

KEY_HOME (Integer)

KEY_HOME       : constant Integer := 78;

KEY_END (Integer)

KEY_END        : constant Integer := 79;

KEY_PGUP (Integer)

KEY_PGUP       : constant Integer := 80;

KEY_PGDN (Integer)

KEY_PGDN       : constant Integer := 81;

KEY_LEFT (Integer)

KEY_LEFT       : constant Integer := 82;

KEY_RIGHT (Integer)

KEY_RIGHT      : constant Integer := 83;

KEY_UP (Integer)

KEY_UP         : constant Integer := 84;

KEY_DOWN (Integer)

KEY_DOWN       : constant Integer := 85;

KEY_SLASH_PAD (Integer)

KEY_SLASH_PAD  : constant Integer := 86;

KEY_ASTERISK (Integer)

KEY_ASTERISK   : constant Integer := 87;

KEY_MINUS_PAD (Integer)

KEY_MINUS_PAD  : constant Integer := 88;

KEY_PLUS_PAD (Integer)

KEY_PLUS_PAD   : constant Integer := 89;

KEY_DEL_PAD (Integer)

KEY_DEL_PAD    : constant Integer := 90;

KEY_ENTER_PAD (Integer)

KEY_ENTER_PAD  : constant Integer := 91;

KEY_PRTSCR (Integer)

KEY_PRTSCR     : constant Integer := 92;

KEY_PAUSE (Integer)

KEY_PAUSE      : constant Integer := 93;

KEY_ABNT_C1 (Integer)

KEY_ABNT_C1    : constant Integer := 94;

KEY_YEN (Integer)

KEY_YEN        : constant Integer := 95;

KEY_KANA (Integer)

KEY_KANA       : constant Integer := 96;

KEY_CONVERT (Integer)

KEY_CONVERT    : constant Integer := 97;

KEY_NOCONVERT (Integer)

KEY_NOCONVERT  : constant Integer := 98;

KEY_AT (Integer)

KEY_AT         : constant Integer := 99;

KEY_CIRCUMFLEX (Integer)

KEY_CIRCUMFLEX : constant Integer := 100;

KEY_COLON2 (Integer)

KEY_COLON2     : constant Integer := 101;

KEY_KANJI (Integer)

KEY_KANJI      : constant Integer := 102;
MacOS X

KEY_EQUALS_PAD (Integer)

KEY_EQUALS_PAD : constant Integer := 103;

KEY_BACKQUOTE (Integer)

KEY_BACKQUOTE  : constant Integer := 104;
MacOS X

KEY_SEMICOLON (Integer)

KEY_SEMICOLON  : constant Integer := 105;
MacOS X

KEY_COMMAND (Integer)

KEY_COMMAND    : constant Integer := 106;
MacOS X

KEY_UNKNOWN1 (Integer)

KEY_UNKNOWN1   : constant Integer := 107;
MacOS X

KEY_UNKNOWN2 (Integer)

KEY_UNKNOWN2   : constant Integer := 108;

KEY_UNKNOWN3 (Integer)

KEY_UNKNOWN3   : constant Integer := 109;

KEY_UNKNOWN4 (Integer)

KEY_UNKNOWN4   : constant Integer := 110;

KEY_UNKNOWN5 (Integer)

KEY_UNKNOWN5   : constant Integer := 111;

KEY_UNKNOWN6 (Integer)

KEY_UNKNOWN6   : constant Integer := 112;

KEY_UNKNOWN7 (Integer)

KEY_UNKNOWN7   : constant Integer := 113;

KEY_UNKNOWN8 (Integer)

KEY_UNKNOWN8   : constant Integer := 114;

KEY_MODIFIERS (Integer)

KEY_MODIFIERS  : constant Integer := 115;

KEY_LSHIFT (Integer)

KEY_LSHIFT     : constant Integer := 115;

KEY_RSHIFT (Integer)

KEY_RSHIFT     : constant Integer := 116;

KEY_LCONTROL (Integer)

KEY_LCONTROL   : constant Integer := 117;

KEY_RCONTROL (Integer)

KEY_RCONTROL   : constant Integer := 118;

KEY_ALT (Integer)

KEY_ALT        : constant Integer := 119;

KEY_ALTGR (Integer)

KEY_ALTGR      : constant Integer := 120;

KEY_LWIN (Integer)

KEY_LWIN       : constant Integer := 121;

KEY_RWIN (Integer)

KEY_RWIN       : constant Integer := 122;

KEY_MENU (Integer)

KEY_MENU       : constant Integer := 123;

KEY_SCRLOCK (Integer)

KEY_SCRLOCK    : constant Integer := 124;

KEY_NUMLOCK (Integer)

KEY_NUMLOCK    : constant Integer := 125;

KEY_CAPSLOCK (Integer)

KEY_CAPSLOCK   : constant Integer := 126;

KEY_MAX (Integer)

KEY_MAX        : constant Integer;

Subprograms & Entries

Clear_Keybuf

procedure Clear_Keybuf;

Get_Key_Status

function Get_Key_Status
( keycode: Integer ) return Integer;

Get_Key_Shifts

function Get_Key_Shifts return Unsigned_32;

Install_Keyboard

function Install_Keyboard return Integer;

Install_Keyboard_Hooks

procedure Install_Keyboard_Hooks
( keypressed, readkey: A_Keyboard_Hook );

Key_Pressed

function Key_Pressed return Integer;

Keyboard_Needs_Poll

function Keyboard_Needs_Poll return Integer;

Poll_Keyboard

function Poll_Keyboard return Integer;

Read_Key

function Read_Key return Integer;

Remove_Keyboard

procedure Remove_Keyboard;

Scancode_To_Ascii

function Scancode_To_Ascii
( scancode: Integer ) return Integer;

Scancode_To_Char

function Scancode_To_Char
( scancode: Integer;
shifted: Boolean ) return Character;

Scancode_To_Name

function Scancode_To_Name
( scancode: Integer ) return String;

Set_Key_Led_Flag

procedure Set_Key_Led_Flag
( flag: Integer );

Set_Keyboard_Callback

procedure Set_Keyboard_Callback
( cb: A_Keyboard_Callback );

Set_Keyboard_Lowlevel_Callback

procedure Set_Keyboard_Lowlevel_Callback
( cb: A_Keyboard_Lowlevel_Callback );

Set_Keyboard_Rate

procedure Set_Keyboard_Rate
( dlay, repeat: Integer );

Set_Keyboard_Ucallback

procedure Set_Keyboard_Ucallback
( cb: A_Keyboard_Ucallback );

Set_Leds

procedure Set_Leds
( leds: Integer );

Set_Three_Finger_Flag

procedure Set_Three_Finger_Flag
( flag: Integer );

Simulate_Keypress

procedure Simulate_Keypress
( key: Integer );

Simulate_Ukeypress

procedure Simulate_Ukeypress
( key, scancode: Integer );

Uread_Key

function Uread_Key
( scancode: A_Integer ) return Integer;