2 * PROJECT: ReactOS Build Tools [Keyboard Layout Compiler]
3 * LICENSE: BSD - See COPYING.BSD in the top level directory
4 * FILE: tools/kbdtool/kbdtool.h
5 * PURPOSE: Main Header File
6 * PROGRAMMERS: ReactOS Foundation
9 /* INCLUDES *******************************************************************/
19 #define KEYWORD_COUNT 17
21 #define CHAR_NORMAL_KEY 0
22 #define CHAR_DEAD_KEY 1
23 #define CHAR_OTHER_KEY 2
24 #define CHAR_INVALID_KEY 3
25 #define CHAR_LIGATURE_KEY 4
27 typedef struct tagKEYNAME
31 struct tagKEYNAME
* Next
;
34 typedef struct tagSCVK
42 typedef struct tagVKNAME
48 typedef struct tagLAYOUTENTRY
52 UCHAR OriginalVirtualKey
;
56 ULONG DeadCharData
[8];
57 UCHAR LigatureCharData
[8];
58 ULONG OtherCharData
[8];
59 struct LAYOUTENTRY
* CapData
;
63 } LAYOUTENTRY
, *PLAYOUTENTRY
;
65 typedef struct tagLAYOUT
67 LAYOUTENTRY Entry
[110];
73 IN PULONG ShiftStates
,
74 IN PKEYNAME DescriptionData
,
75 IN PKEYNAME LanguageData
,
76 IN PVOID AttributeData
,
78 IN PVOID LigatureData
,
79 IN PKEYNAME KeyNameData
,
80 IN PKEYNAME KeyNameExtData
,
81 IN PKEYNAME KeyNameDeadData
95 extern BOOLEAN Verbose
, UnicodeFile
, SanityCheck
, FallbackDriver
;
96 extern PCHAR gpszFileName
;
97 extern FILE* gfpInput
;
98 extern VKNAME VKName
[];
99 extern VKNAME Modifiers
[];
101 extern PCHAR StateLabel
[];
102 extern PCHAR CapState
[];
103 extern LAYOUT g_Layout
;
104 extern CHAR gVKeyName
[32];
105 extern CHAR gKBDName
[10];
106 extern CHAR gCopyright
[256];
107 extern CHAR gDescription
[256];
108 extern CHAR gCompany
[256];
109 extern CHAR gLocaleName
[256];
110 extern ULONG gVersion
, gSubVersion
;