- Sync with trunk r58248 to bring the latest changes from Amine (headers) and others...
[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 BOOLEAN
57 IsLanguageAvailable(PWCHAR LanguageId);
58
59 VOID
60 MUIDisplayPage (ULONG PageNumber);
61
62 VOID
63 MUIClearPage (ULONG PageNumber);
64
65 VOID
66 MUIDisplayError (ULONG ErrorNum, PINPUT_RECORD Ir, ULONG WaitEvent);
67
68 LPCWSTR
69 MUIDefaultKeyboardLayout(VOID);
70
71 PWCHAR
72 MUIGetGeoID(VOID);
73
74 const MUI_LAYOUTS *
75 MUIGetLayoutsList(VOID);
76
77 BOOLEAN
78 AddKbLayoutsToRegistry(IN const MUI_LAYOUTS * MuiLayouts);
79
80 BOOLEAN
81 AddCodePage(VOID);
82
83 BOOLEAN
84 AddKeyboardLayouts(VOID);
85
86 VOID
87 SetConsoleCodePage(VOID);
88
89 LPSTR
90 MUIGetString(ULONG Number);
91
92 #define STRING_PLEASEWAIT 1
93 #define STRING_INSTALLCREATEPARTITION 2
94 #define STRING_INSTALLDELETEPARTITION 3
95 #define STRING_PARTITIONSIZE 4
96 #define STRING_CHOOSENEWPARTITION 5
97 #define STRING_HDDSIZE 6
98 #define STRING_CREATEPARTITION 7
99 #define STRING_PARTFORMAT 8
100 #define STRING_NONFORMATTEDPART 9
101 #define STRING_INSTALLONPART 10
102 #define STRING_CHECKINGPART 11
103 #define STRING_QUITCONTINUE 12
104 #define STRING_REBOOTCOMPUTER 13
105 #define STRING_TXTSETUPFAILED 14
106 #define STRING_COPYING 15
107 #define STRING_SETUPCOPYINGFILES 16
108 #define STRING_REGHIVEUPDATE 20
109 #define STRING_IMPORTFILE 21
110 #define STRING_DISPLAYETTINGSUPDATE 22
111 #define STRING_LOCALESETTINGSUPDATE 23
112 #define STRING_KEYBOARDSETTINGSUPDATE 24
113 #define STRING_CODEPAGEINFOUPDATE 25
114 #define STRING_DONE 26
115 #define STRING_REBOOTCOMPUTER2 27
116 #define STRING_CONSOLEFAIL1 28
117 #define STRING_CONSOLEFAIL2 29
118 #define STRING_CONSOLEFAIL3 30
119 #define STRING_FORMATTINGDISK 31
120 #define STRING_CHECKINGDISK 32
121 #define STRING_FORMATDISK1 33
122 #define STRING_FORMATDISK2 34
123 #define STRING_KEEPFORMAT 35
124 #define STRING_HDINFOPARTCREATE 36
125 #define STRING_HDDINFOUNK1 37
126 #define STRING_HDDINFOUNK2 38
127 #define STRING_HDINFOPARTDELETE 39
128 #define STRING_HDDINFOUNK3 40
129 #define STRING_HDINFOPARTZEROED 41
130 #define STRING_HDDINFOUNK4 42
131 #define STRING_HDINFOPARTEXISTS 43
132 #define STRING_HDDINFOUNK5 44
133 #define STRING_HDINFOPARTSELECT 45
134 #define STRING_HDDINFOUNK6 46
135 #define STRING_NEWPARTITION 47
136 #define STRING_UNPSPACE 48
137 #define STRING_MAXSIZE 49
138 #define STRING_UNFORMATTED 50
139 #define STRING_FORMATUNUSED 51
140 #define STRING_FORMATUNKNOWN 52
141 #define STRING_KB 53
142 #define STRING_MB 54
143 #define STRING_GB 55
144 #define STRING_ADDKBLAYOUTS 56