spiegel-keyman/common/windows/delphi/visualkeyboard/OnScreenKeyboardData.pas

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.