package Key_Code_List is

   -- Key codes from Safari 7.1.4 on MacOS 10.9 and French keyboard

   Key_Shift    : constant := 16;
   Key_Control  : constant := 17;
   Key_Alt      : constant := 18;
   Key_CapsLock : constant := 20;
   --Key_MumLock : constant  := ??;
   Key_Left_Meta  : constant := 91;
   Key_Right_Meta : constant := 93;

   Key_BackSpace : constant := 8;
   Key_Tab       : constant := 9;
   Key_Enter     : constant := 13;
   Key_Esc       : constant := 27;
   Key_Space     : constant := 32;

   Key_Page_Up   : constant := 33;
   Key_Page_Down : constant := 34;
   Key_End       : constant := 35;
   Key_Home      : constant := 36;
   Key_Left      : constant := 37;
   Key_Up        : constant := 38;
   Key_Right     : constant := 39;
   Key_Down      : constant := 40;
   --Key_Insert    : constant := ??;
   Key_Delete : constant := 46;

   Key_0 : constant := 48;
   Key_1 : constant := 49;
   Key_2 : constant := 50;
   Key_3 : constant := 51;
   Key_4 : constant := 52;
   Key_5 : constant := 53;
   Key_6 : constant := 54;
   Key_7 : constant := 55;
   Key_8 : constant := 56;
   Key_9 : constant := 57;

   Key_A : constant := 65;
   Key_B : constant := 66;
   Key_C : constant := 67;
   Key_D : constant := 68;
   Key_E : constant := 69;
   Key_F : constant := 70;
   Key_G : constant := 71;
   Key_H : constant := 72;
   Key_I : constant := 73;
   Key_J : constant := 74;
   Key_K : constant := 75;
   Key_L : constant := 76;
   Key_M : constant := 77;
   Key_N : constant := 78;
   Key_O : constant := 79;
   Key_P : constant := 80;
   Key_Q : constant := 81;
   Key_R : constant := 82;
   Key_S : constant := 83;
   Key_T : constant := 84;
   Key_U : constant := 85;
   Key_V : constant := 86;
   Key_W : constant := 87;
   Key_X : constant := 88;
   Key_Y : constant := 89;
   Key_Z : constant := 90;

   Key_KP_0 : constant := 96;
   Key_KP_1 : constant := 97;
   Key_KP_2 : constant := 98;
   Key_KP_3 : constant := 99;
   Key_KP_4 : constant := 100;
   Key_KP_5 : constant := 101;
   Key_KP_6 : constant := 102;
   Key_KP_7 : constant := 103;
   Key_KP_8 : constant := 104;
   Key_KP_9 : constant := 105;

   Key_KP_Multiply_Sign     : constant := 106;
   Key_KP_Plus_Sign         : constant := 107;
   Key_KP_Minus_Sign        : constant := 109;
   Key_KP_Decimal_Separator : constant := 110;
   Key_KP_Divide_Sign       : constant := 111;
   Key_KP_Equals_Sign       : constant := 187;
   Key_KP_Cancel_Box        : constant := 12;
   Key_KP_Enter             : constant := 13;

   Key_F1  : constant := 112;
   Key_F2  : constant := 113;
   Key_F3  : constant := 114;
   Key_F4  : constant := 115;
   Key_F5  : constant := 116;
   Key_F6  : constant := 117;
   Key_F7  : constant := 118;
   Key_F8  : constant := 119;
   Key_F9  : constant := 120;
   Key_F10 : constant := 121;
   Key_F11 : constant := 122;
   Key_F12 : constant := 123;
   Key_F13 : constant := 124;
   Key_F14 : constant := 125;
   Key_F15 : constant := 126;
   Key_F16 : constant := 127;
   Key_F17 : constant := 128;
   Key_F18 : constant := 129;
   Key_F19 : constant := 130;

   Key_Commercial_At     : constant := 192; -- French keyboard key "@#"
   Key_Right_Parenthesis : constant := 189; -- French keyboard key ")°"
   Key_Minus_Sign        : constant := 189; -- French keyboard key "-_"
   Key_Circumflex        : constant := 229; -- French keyboard key "^""
   Key_Dollar_Sign       : constant := 221; -- French keyboard key "$*€"
   Key_LC_U_Grave        : constant := 222; -- French keyboard key "ù%"
   Key_Grave             : constant := 229; -- French keyboard key "`£"
   Key_Comma             : constant := 188; -- French keyboard key ",?"
   Key_Semicolon         : constant := 186; -- French keyboard key ";."
   Key_Colon             : constant := 186; -- French keyboard key ":/"
   Key_Equals_Sign       : constant := 187; -- French keyboard key "=+"

end Key_Code_List;
