[CMAKE]
[reactos.git] / base / setup / usetup / mui.h
1 #pragma once
2
3 typedef struct
4 {
5 BYTE X;
6 BYTE Y;
7 LPCSTR Buffer;
8 DWORD Flags;
9 }MUI_ENTRY, *PMUI_ENTRY;
10
11 typedef struct
12 {
13 LPCSTR ErrorText;
14 LPCSTR ErrorStatus;
15 }MUI_ERROR;
16
17 typedef struct
18 {
19 LONG Number;
20 MUI_ENTRY * MuiEntry;
21 } MUI_PAGE;
22
23 typedef struct
24 {
25 LONG Number;
26 LPSTR String;
27 } MUI_STRING;
28
29 typedef struct
30 {
31 PWCHAR FontName;
32 PWCHAR SubFontName;
33 } MUI_SUBFONT;
34
35 typedef struct
36 {
37 PWCHAR LangID; // Language ID (like "0409")
38 PWCHAR LayoutID; // Layout ID (like "00000409")
39 } MUI_LAYOUTS;
40
41 typedef struct
42 {
43 PWCHAR LanguageID;
44 PWCHAR ACPage;
45 PWCHAR OEMCPage;
46 PWCHAR MACCPage;
47 PWCHAR LanguageDescriptor;
48 PWCHAR GeoID;
49 const MUI_PAGE * MuiPages;
50 const MUI_ERROR * MuiErrors;
51 const MUI_STRING * MuiStrings;
52 const MUI_SUBFONT * MuiSubFonts;
53 const MUI_LAYOUTS * MuiLayouts;
54 } MUI_LANGUAGE;
55
56 VOID
57 MUIDisplayPage (ULONG PageNumber);
58
59 VOID
60 MUIDisplayError (ULONG ErrorNum, PINPUT_RECORD Ir, ULONG WaitEvent);
61
62 LPCWSTR
63 MUIDefaultKeyboardLayout(VOID);
64
65 PWCHAR
66 MUIGetGeoID(VOID);
67
68 const MUI_LAYOUTS *
69 MUIGetLayoutsList(VOID);
70
71 BOOLEAN
72 AddKbLayoutsToRegistry(IN const MUI_LAYOUTS * MuiLayouts);
73
74 BOOLEAN
75 AddCodePage(VOID);
76
77 BOOLEAN
78 AddKeyboardLayouts(VOID);
79
80 VOID
81 SetConsoleCodePage(VOID);
82
83 LPSTR
84 MUIGetString(ULONG Number);
85
86 #define STRING_PLEASEWAIT 1
87 #define STRING_INSTALLCREATEPARTITION 2
88 #define STRING_INSTALLDELETEPARTITION 3
89 #define STRING_PARTITIONSIZE 4
90 #define STRING_CHOOSENEWPARTITION 5
91 #define STRING_HDDSIZE 6
92 #define STRING_CREATEPARTITION 7
93 #define STRING_PARTFORMAT 8
94 #define STRING_NONFORMATTEDPART 9
95 #define STRING_INSTALLONPART 10
96 #define STRING_CHECKINGPART 11
97 #define STRING_QUITCONTINUE 12
98 #define STRING_REBOOTCOMPUTER 13
99 #define STRING_TXTSETUPFAILED 14
100 #define STRING_COPYING 15
101 #define STRING_SETUPCOPYINGFILES 16
102 #define STRING_REGHIVEUPDATE 20
103 #define STRING_IMPORTFILE 21
104 #define STRING_DISPLAYETTINGSUPDATE 22
105 #define STRING_LOCALESETTINGSUPDATE 23
106 #define STRING_KEYBOARDSETTINGSUPDATE 24
107 #define STRING_CODEPAGEINFOUPDATE 25
108 #define STRING_DONE 26
109 #define STRING_REBOOTCOMPUTER2 27
110 #define STRING_CONSOLEFAIL1 28
111 #define STRING_CONSOLEFAIL2 29
112 #define STRING_CONSOLEFAIL3 30
113 #define STRING_FORMATTINGDISK 31
114 #define STRING_CHECKINGDISK 32
115 #define STRING_FORMATDISK1 33
116 #define STRING_FORMATDISK2 34
117 #define STRING_KEEPFORMAT 35
118 #define STRING_HDINFOPARTCREATE 36
119 #define STRING_HDDINFOUNK1 37
120 #define STRING_HDDINFOUNK2 38
121 #define STRING_HDINFOPARTDELETE 39
122 #define STRING_HDDINFOUNK3 40
123 #define STRING_HDINFOPARTZEROED 41
124 #define STRING_HDDINFOUNK4 42
125 #define STRING_HDINFOPARTEXISTS 43
126 #define STRING_HDDINFOUNK5 44
127 #define STRING_HDINFOPARTSELECT 45
128 #define STRING_HDDINFOUNK6 46
129 #define STRING_NEWPARTITION 47
130 #define STRING_UNPSPACE 48
131 #define STRING_MAXSIZE 49
132 #define STRING_UNFORMATTED 50
133 #define STRING_FORMATUNUSED 51
134 #define STRING_FORMATUNKNOWN 52
135 #define STRING_KB 53
136 #define STRING_MB 54
137 #define STRING_GB 55
138 #define STRING_ADDKBLAYOUTS 56