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