mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 08:25:32 +00:00
87 lines
4.8 KiB
ObjectPascal
87 lines
4.8 KiB
ObjectPascal
unit OnScreenKeyboardData;
|
|
|
|
interface
|
|
|
|
type
|
|
TOnScreenKeyboardKeyType = (kktNormal, kktTab, kktCaps, kktShiftLeft, kktCtrlLeft, kktAltLeft,
|
|
kktBackSpace, kktEnter, kktShiftRight, kktCtrlRight, kktAltRight);
|
|
|
|
TOnScreenKeyboardKeyData = record
|
|
KeyType: TOnScreenKeyboardKeyType;
|
|
X, Y, Width, ScanCode: Integer;
|
|
Row: Boolean;
|
|
end;
|
|
|
|
const
|
|
OnScreenKeyboardKeyTypeCaption: array[TOnScreenKeyboardKeyType] of WideString =
|
|
('', 'Tab', 'Caps', 'Shift', 'Ctrl', 'Alt', 'BkSp', 'Enter', 'Shift', 'Ctrl', 'Alt');
|
|
|
|
const
|
|
KeyData: array[0..58] of TOnScreenKeyboardKeyData = (
|
|
(KeyType: kktNormal; X: 0; Y: 0; Width: 33; ScanCode: $29; Row: True), //`
|
|
(KeyType: kktNormal; X: 34; Y: 0; Width: 33; ScanCode: $02), //1
|
|
(KeyType: kktNormal; X: 68; Y: 0; Width: 33; ScanCode: $03), //2
|
|
(KeyType: kktNormal; X: 102; Y: 0; Width: 33; ScanCode: $04), //3
|
|
(KeyType: kktNormal; X: 136; Y: 0; Width: 33; ScanCode: $05), //4
|
|
(KeyType: kktNormal; X: 170; Y: 0; Width: 33; ScanCode: $06), //5
|
|
(KeyType: kktNormal; X: 204; Y: 0; Width: 33; ScanCode: $07), //6
|
|
(KeyType: kktNormal; X: 238; Y: 0; Width: 33; ScanCode: $08), //7
|
|
(KeyType: kktNormal; X: 272; Y: 0; Width: 33; ScanCode: $09), //8
|
|
(KeyType: kktNormal; X: 306; Y: 0; Width: 33; ScanCode: $0A), //9
|
|
(KeyType: kktNormal; X: 340; Y: 0; Width: 33; ScanCode: $0B), //0
|
|
(KeyType: kktNormal; X: 374; Y: 0; Width: 33; ScanCode: $0C), //-
|
|
(KeyType: kktNormal; X: 408; Y: 0; Width: 33; ScanCode: $0D), //=
|
|
(KeyType: kktBackspace; X: 442; Y: 0; Width: 58; ScanCode: $0E), //bksp
|
|
|
|
(KeyType: kktTab; X: 0; Y: 34; Width: 49; ScanCode: $0F; Row: True), //tab
|
|
(KeyType: kktNormal; X: 50; Y: 34; Width: 33; ScanCode: $10), //Q
|
|
(KeyType: kktNormal; X: 84; Y: 34; Width: 33; ScanCode: $11), //W
|
|
(KeyType: kktNormal; X: 118; Y: 34; Width: 33; ScanCode: $12), //E
|
|
(KeyType: kktNormal; X: 152; Y: 34; Width: 33; ScanCode: $13), //R
|
|
(KeyType: kktNormal; X: 186; Y: 34; Width: 33; ScanCode: $14), //T
|
|
(KeyType: kktNormal; X: 220; Y: 34; Width: 33; ScanCode: $15), //Y
|
|
(KeyType: kktNormal; X: 254; Y: 34; Width: 33; ScanCode: $16), //U
|
|
(KeyType: kktNormal; X: 288; Y: 34; Width: 33; ScanCode: $17), //I
|
|
(KeyType: kktNormal; X: 322; Y: 34; Width: 33; ScanCode: $18), //O
|
|
(KeyType: kktNormal; X: 356; Y: 34; Width: 33; ScanCode: $19), //P
|
|
(KeyType: kktNormal; X: 390; Y: 34; Width: 33; ScanCode: $1A), //[
|
|
(KeyType: kktNormal; X: 424; Y: 34; Width: 33; ScanCode: $1B), //]
|
|
(KeyType: kktNormal; X: 458; Y: 34; Width: 42; ScanCode: $2B), //\
|
|
|
|
(KeyType: kktCaps; X: 0; Y: 68; Width: 57; ScanCode: $3A; Row: True), //CAPS
|
|
(KeyType: kktNormal; X: 58; Y: 68; Width: 33; ScanCode: $1E), //A
|
|
(KeyType: kktNormal; X: 92; Y: 68; Width: 33; ScanCode: $1F), //S
|
|
(KeyType: kktNormal; X: 126; Y: 68; Width: 33; ScanCode: $20), //D
|
|
(KeyType: kktNormal; X: 160; Y: 68; Width: 33; ScanCode: $21), //F
|
|
(KeyType: kktNormal; X: 194; Y: 68; Width: 33; ScanCode: $22), //G
|
|
(KeyType: kktNormal; X: 228; Y: 68; Width: 33; ScanCode: $23), //H
|
|
(KeyType: kktNormal; X: 262; Y: 68; Width: 33; ScanCode: $24), //J
|
|
(KeyType: kktNormal; X: 296; Y: 68; Width: 33; ScanCode: $25), //K
|
|
(KeyType: kktNormal; X: 330; Y: 68; Width: 33; ScanCode: $26), //L
|
|
(KeyType: kktNormal; X: 364; Y: 68; Width: 33; ScanCode: $27), //;
|
|
(KeyType: kktNormal; X: 398; Y: 68; Width: 33; ScanCode: $28), //'
|
|
(KeyType: kktEnter; X: 432; Y: 68; Width: 68; ScanCode: $1C), //ENTER
|
|
|
|
(KeyType: kktShiftLeft; X: 0; Y: 102; Width: 41; ScanCode: $2A; Row: True), //SHIFT
|
|
(KeyType: kktNormal; X: 42; Y: 102; Width: 33; ScanCode: $56), //102
|
|
(KeyType: kktNormal; X: 76; Y: 102; Width: 33; ScanCode: $2C), //Z
|
|
(KeyType: kktNormal; X: 110; Y: 102; Width: 33; ScanCode: $2D), //X
|
|
(KeyType: kktNormal; X: 144; Y: 102; Width: 33; ScanCode: $2E), //C
|
|
(KeyType: kktNormal; X: 178; Y: 102; Width: 33; ScanCode: $2F), //V
|
|
(KeyType: kktNormal; X: 212; Y: 102; Width: 33; ScanCode: $30), //B
|
|
(KeyType: kktNormal; X: 246; Y: 102; Width: 33; ScanCode: $31), //N
|
|
(KeyType: kktNormal; X: 280; Y: 102; Width: 33; ScanCode: $32), //M
|
|
(KeyType: kktNormal; X: 314; Y: 102; Width: 33; ScanCode: $33), //,
|
|
(KeyType: kktNormal; X: 348; Y: 102; Width: 33; ScanCode: $34), //.
|
|
(KeyType: kktNormal; X: 382; Y: 102; Width: 33; ScanCode: $35), // /
|
|
(KeyType: kktShiftRight; X: 416; Y: 102; Width: 84; ScanCode: $2A), //SHIFT
|
|
|
|
(KeyType: kktCtrlLeft; X: 0; Y: 136; Width: 45; ScanCode: $1D; Row: True), //CTRL
|
|
(KeyType: kktAltLeft; X: 78; Y: 136; Width: 45; ScanCode: $38), //ALT
|
|
(KeyType: kktNormal; X: 124; Y: 136; Width: 234; ScanCode: $39), //SPACE
|
|
(KeyType: kktAltRight; X: 359; Y: 136; Width: 45; ScanCode: $38), //ALT
|
|
(KeyType: kktCtrlRight; X: 455; Y: 136; Width: 45; ScanCode: $1D)); //CTRL
|
|
|
|
implementation
|
|
|
|
end.
|