fix-memory-alloc-srv-cfg-wizard-20031206
[openafs.git] / src / WINNT / afssvrcfg / help.cpp
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  * 
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 /*
11  * INCLUDES ___________________________________________________________________
12  *
13  */
14 extern "C" {
15 #include <afs/param.h>
16 #include <afs/stds.h>
17 }
18
19 #include "resource.h"
20 #include <WINNT\afsapplib.h>
21
22
23 /*
24  * DEFINITIONS _________________________________________________________________
25  *
26  */
27
28 /*
29  * Wizard Help _________________________________________________________________
30  *
31  */
32
33 // Intro page
34 static UINT IDH_INTRO_PAGE = 101;
35
36 // Config server page
37 static UINT IDH_CONFIG_SERVER_PAGE = 102;
38
39 // Backup server page
40 static UINT IDH_BACKUP_SERVER_PAGE                      = 0;
41 static UINT IDH_CONFIG_BACKUP_SERVER            = 1;
42 static UINT IDH_DONT_CONFIG_BACKUP_SERVER       = 2;
43
44 // File server page
45 static UINT IDH_FILE_SERVER_PAGE                        = 3;
46 static UINT IDH_SHOULD_CONFIG_FILE_SERVER       = 4;
47 static UINT IDH_DONT_CONFIG_FILE_SERVER         = 5;
48
49 // Cell and Server info page
50 static UINT IDH_INFO_PAGE                       = 6;
51 static UINT IDH_JOIN_EXISTING_CELL      = 7;
52 static UINT IDH_FIRST_SERVER            = 8;
53 static UINT IDH_CELL_NAME                       = 9;
54 static UINT IDH_PRINCIPAL                       = 10;
55 static UINT IDH_SERVER_PW                       = 11;
56 static UINT IDH_VERIFY_PW                       = 12;
57
58 // Administrative info page (when configuring first server)
59 static UINT IDH_FIRST_SERVER_PAGE       = 13;
60 static UINT IDH_ADMIN_NAME                      = 14;
61 static UINT IDH_ADMIN_PW                        = 15;
62 static UINT IDH_VERIFY_ADMIN_PW         = 16;
63 static UINT IDH_USE_NEXT_UID            = 17;
64 static UINT IDH_USE_THIS_UID            = 18;
65 static UINT IDH_AFS_UID                         = 19;
66 static UINT IDH_AFS_UID_SPINNER         = 20;
67
68 // Administrative info page (when configuring into an existing cell)
69 static UINT IDH_EXISTING_CELL_PAGE      = 21;
70 static UINT IDH_ADMIN_NAME2                     = 22;
71 static UINT IDH_ADMIN_PW2                       = 23;
72 static UINT IDH_HOSTNAME                        = 24;
73
74 // Database server page
75 static UINT IDH_DB_SERVER_PAGE          = 100;
76 static UINT IDH_CONFIG_DB_SERVER                = 25;
77 static UINT IDH_DONT_CONFIG_DB_SERVER   = 26;
78 static UINT IDH_SYS_CONTROL_MACHINE             = 27;
79
80 // Partition page
81 static UINT IDH_PARTITION_PAGE                  = 28;
82 static UINT IDH_CREATE_PARTITION                = 29;
83 static UINT IDH_DRIVE_LIST                              = 30;
84 static UINT IDH_PARTITION_NAME                  = 31;
85 static UINT IDH_DONT_CREATE_PARTITION   = 32;
86
87 // Root volumes page
88 static UINT IDH_ROOT_VOLUMES_PAGE                       = 33;
89 static UINT IDH_CREATE_VOLUME                           = 34;
90 static UINT IDH_DONT_CREATE_ROOT_VOLUMES        = 35;
91
92 // Replication page
93 static UINT IDH_REPLICATION_PAGE        = 36;
94 static UINT IDH_REPLICATE                       = 37;
95 static UINT IDH_DONT_REPLICATE          = 38;
96
97 // System control page
98 static UINT IDH_SYS_CONTROL_PAGE                = 39;
99 static UINT IDH_SYS_CONTROL_SERVER              = 40;
100 static UINT IDH_SYS_CONTROL_CLIENT              = 41;
101 static UINT IDH_SYS_CONTROL_MACHINE2    = 42;
102 static UINT IDH_DONT_CONFIGURE                  = 43;
103
104
105
106 /*
107  *
108  *      Arrays that map help topics to the appropriate controls___________________
109  *
110  */
111
112 static DWORD IDH_INTRO_CTX_HELP[] = {
113     0,  0
114 };
115
116 static DWORD IDH_CONFIG_SERVER_CTX_HELP[] = {
117     0,  0
118 };
119
120 static DWORD IDH_BACKUP_SERVER_CTX_HELP[] = {
121         IDC_CONFIG_BACKUP_SERVER,               IDH_CONFIG_BACKUP_SERVER,
122         IDC_DONT_CONFIG_BACKUP_SERVER,  IDH_DONT_CONFIG_BACKUP_SERVER,
123     0,                              0
124 };
125
126 static DWORD IDH_FILE_SERVER_CTX_HELP[] = {
127         IDC_SHOULD_CONFIG_FILE_SERVER,          IDH_SHOULD_CONFIG_FILE_SERVER,
128         IDC_DONT_CONFIG_FILE_SERVER,            IDH_DONT_CONFIG_FILE_SERVER,
129     0,                                  0
130 };
131
132 static DWORD IDH_CELL_AND_SERVER_INFO_CTX_HELP[] = {
133         IDC_JOIN_EXISTING_CELL, IDH_JOIN_EXISTING_CELL,
134         IDC_FIRST_SERVER,               IDH_FIRST_SERVER,
135         IDC_CELL_NAME,                  IDH_CELL_NAME,
136         IDC_PRINCIPAL,                  IDH_PRINCIPAL,
137         IDC_SERVER_PW,                  IDH_SERVER_PW,
138         IDC_VERIFY_PW,                  IDH_VERIFY_PW,
139     0,                      0
140 };
141
142 static DWORD IDH_FIRST_SERVER_CTX_HELP[] = {
143         IDC_ADMIN_NAME,                 IDH_ADMIN_NAME,
144         IDC_ADMIN_PW,                   IDH_ADMIN_PW,
145         IDC_VERIFY_ADMIN_PW,    IDH_VERIFY_ADMIN_PW,
146         IDC_USE_NEXT_UID,               IDH_USE_NEXT_UID,
147         IDC_USE_THIS_UID,               IDH_USE_THIS_UID,
148         IDC_AFS_UID,                    IDH_AFS_UID,
149         IDC_AFS_UID_SPINNER,    IDH_AFS_UID_SPINNER,
150     0,                      0
151 };
152
153 static DWORD IDH_EXISTING_CELL_CTX_HELP[] = {
154         IDC_ADMIN_NAME,         IDH_ADMIN_NAME2,
155         IDC_ADMIN_PW,           IDH_ADMIN_PW2,
156         IDC_HOSTNAME,           IDH_HOSTNAME,
157     0,                  0
158 };
159
160 static DWORD IDH_DB_SERVER_CTX_HELP[] = {
161         IDC_CONFIG_DB_SERVER,           IDH_CONFIG_DB_SERVER,
162         IDC_DONT_CONFIG_DB_SERVER,      IDH_DONT_CONFIG_DB_SERVER,
163         IDC_SYS_CONTROL_MACHINE,        IDH_SYS_CONTROL_MACHINE,
164     0,                          0
165 };
166
167 static DWORD IDH_PARTITION_CTX_HELP[] = {
168         IDC_CREATE_PARTITION,           IDH_CREATE_PARTITION,
169         IDC_DRIVE_LIST,                         IDH_DRIVE_LIST,
170         IDC_PARTITION_NAME,                     IDH_PARTITION_NAME,
171         IDC_DONT_CREATE_PARTITION,      IDH_DONT_CREATE_PARTITION,
172     0,                          0
173 };
174
175 static DWORD IDH_ROOT_VOLUMES_CTX_HELP[] = {
176         IDC_CREATE_ROOT_VOLUMES,                IDH_CREATE_VOLUME,
177         IDC_DONT_CREATE_ROOT_VOLUMES,   IDH_DONT_CREATE_ROOT_VOLUMES,
178     0,                              0
179 };
180
181 static DWORD IDH_REPLICATION_CTX_HELP[] = {
182         IDC_REPLICATE,          IDH_REPLICATE,
183         IDC_DONT_REPLICATE,     IDH_DONT_REPLICATE,
184     0,                  0
185 };
186
187 static DWORD IDH_SYS_CONTROL_CTX_HELP[] = {
188         IDC_SYS_CONTROL_SERVER,         IDH_SYS_CONTROL_SERVER,
189         IDC_SYS_CONTROL_CLIENT,         IDH_SYS_CONTROL_CLIENT,
190         IDC_SYS_CONTROL_MACHINE,        IDH_SYS_CONTROL_MACHINE2,
191         IDC_DONT_CONFIGURE,                     IDH_DONT_CONFIGURE,
192     0,                          0
193 };
194
195
196 /*
197  *
198  *      Config tool help__________________________________________________________
199  *
200  */
201
202 // Create partition dialog
203 static UINT IDH_CREATE_PARTITION_DLG    = 44;
204 static UINT IDH_CT_DRIVE_LIST                   = 45;
205 static UINT IDH_CT_PARTITION_NAME               = 46;
206 static UINT IDH_CREATE                                  = 47;
207 static UINT IDH_CLOSE                                   = 48;
208
209 // Partitions property page
210 static UINT IDH_PARTITIONS_PAGE         = 49;
211 static UINT IDH_PARTITIONS_LIST         = 50;
212 static UINT IDH_CREATE_PARTITIONS       = 51;
213 static UINT IDH_SALVAGE                         = 52;
214 static UINT IDH_REFORMAT                        = 53;
215 static UINT IDH_REMOVE                          = 54;
216
217 // Services page
218 static UINT IDH_SERVICES_PAGE   = 55;
219 static UINT IDH_FS_SERVICE              = 56;
220 static UINT IDH_DB_SERVICE              = 57;
221 static UINT IDH_DB_DETAILS              = 58;
222 static UINT IDH_BK_SERVICE              = 59;
223 static UINT IDH_SCS                             = 60;
224 static UINT IDH_SCC                             = 61;
225 static UINT IDH_SC_MACHINE              = 62;
226
227 // Admin info (and other server) page
228 static UINT IDH_ADMIN_INFO_DLG  = 63;
229 static UINT IDH_CT_ADMIN_NAME   = 64;
230 static UINT IDH_CT_ADMIN_PW             = 65;
231 static UINT IDH_CT_HOSTNAME             = 66;
232 static UINT IDH_CONFIG                  = 67;
233
234 // Salvage dialog
235 static UINT IDH_SALVAGE_DLG             = 68;
236 static UINT IDH_SERVER                  = 69;
237 static UINT IDH_PARTITION               = 70;
238 static UINT IDH_VOLUME                  = 71;
239 static UINT IDH_VOLUME_NAME             = 72;
240 static UINT IDH_ADVANCED                = 73;
241 static UINT IDH_LOG_FILE                = 74;
242 static UINT IDH_NUM_PROCESSES           = 75;
243 static UINT IDH_TEMP_DIR                = 76;
244 static UINT IDH_NUM_PROCESSES_CHECKBOX  = 77;
245
246 // Salvage results dialog
247 static UINT IDH_SALVAGE_RESULTS_DLG     = 80;
248 static UINT IDH_LOG                     = 81;
249 static UINT IDH_CLOSE_LOG               = 82;
250
251
252 /*
253  *
254  *      Arrays that map help topics to the appropriate controls___________________
255  *
256 */
257
258 static DWORD IDH_CREATE_PARTITION_CTX_HELP[] = {
259         IDC_DRIVE_LIST,                 IDH_DRIVE_LIST,
260         IDC_PARTITION_NAME,             IDH_CT_PARTITION_NAME,
261         IDC_CREATE,                             IDH_CREATE,
262         IDC_CLOSE,                              IDH_CLOSE,
263     0,                      0
264 };
265
266 static DWORD IDH_PARTITIONS_CTX_HELP[] = {
267         IDC_PARTITION_LIST,             IDH_PARTITIONS_LIST,
268         IDC_CREATE_PARTITIONS,  IDH_CREATE_PARTITIONS,
269         IDC_SALVAGE,                    IDH_SALVAGE,
270         IDC_REFORMAT,                   IDH_REFORMAT,
271         IDC_REMOVE,                             IDH_REMOVE,
272     0,                      0
273 };
274
275 static DWORD IDH_SERVICES_CTX_HELP[] = {
276         IDC_FS_SERVICE,         IDH_FS_SERVICE,
277         IDC_DB_SERVICE,         IDH_DB_SERVICE,
278         IDC_DB_DETAILS,         IDH_DB_DETAILS,
279         IDC_BK_SERVICE,         IDH_BK_SERVICE,
280         IDC_SCS,                        IDH_SCS,
281         IDC_SCC,                        IDH_SCC,
282         IDC_SC_MACHINE,         IDH_SC_MACHINE,
283     0,                  0
284 };
285
286 static DWORD IDH_ADMIN_INFO_CTX_HELP[] = {
287         IDC_ADMIN_NAME,         IDH_CT_ADMIN_NAME,
288         IDC_ADMIN_PW,           IDH_CT_ADMIN_PW,
289         IDC_HOSTNAME,           IDH_CT_HOSTNAME,
290         IDOK,                           IDH_CONFIG,
291     0,                  0
292 };
293
294 static DWORD IDH_SALVAGE_CTX_HELP[] = {
295     IDC_SERVER,                 IDH_SERVER,
296     IDC_PARTITION,              IDH_PARTITION,
297     IDC_VOLUME,                 IDH_VOLUME,
298     IDC_VOLUME_NAME,            IDH_VOLUME_NAME,
299     IDC_ADVANCED,               IDH_ADVANCED,
300     IDC_LOG_FILE,               IDH_LOG_FILE,
301     IDC_NUM_PROCESSES,          IDH_NUM_PROCESSES,
302     IDC_TEMP_DIR,               IDH_TEMP_DIR,
303     IDC_NUM_PROCESSES_CHECKBOX, IDH_NUM_PROCESSES_CHECKBOX,
304     0,                          0
305 };
306
307 static DWORD IDH_SALVAGE_RESULTS_CTX_HELP[] = {
308     IDC_LOG,                    IDH_LOG,
309     IDC_CLOSE,                  IDH_CLOSE_LOG,
310     0,                          0
311 };
312
313
314 /*
315  *
316  *      Help for both__________________________________________________________
317  *
318  */
319
320 // Get 3.4 server afs principal password dialog
321 static UINT IDH_GET_PW_DLG      = 78;
322 static UINT IDH_PW              = 79;
323
324
325 /*
326  *
327  *      Arrays that map help topics to the appropriate controls___________________
328  *
329 */
330
331 static DWORD IDH_GET_PW_CTX_HELP[] = {
332     IDC_PW,     IDH_PW,
333     0,          0
334 };
335
336
337
338
339 /*
340  * EXPORTED FUNCTIONS _________________________________________________________
341  *
342  */
343 void RegisterConfigToolHelp()
344 {
345         AfsAppLib_RegisterHelp(IDD_CREATE_PARTITION, IDH_CREATE_PARTITION_CTX_HELP, IDH_CREATE_PARTITION_DLG);
346         AfsAppLib_RegisterHelp(IDD_PARTITIONS_PAGE, IDH_PARTITIONS_CTX_HELP, IDH_PARTITIONS_PAGE);
347         AfsAppLib_RegisterHelp(IDD_SERVICES_PAGE, IDH_SERVICES_CTX_HELP, IDH_SERVICES_PAGE);
348         AfsAppLib_RegisterHelp(IDD_ADMIN_INFO, IDH_ADMIN_INFO_CTX_HELP, IDH_ADMIN_INFO_DLG);
349         AfsAppLib_RegisterHelp(IDD_GET_PW, IDH_GET_PW_CTX_HELP, IDH_GET_PW_DLG);
350         AfsAppLib_RegisterHelp(IDD_SALVAGE, IDH_SALVAGE_CTX_HELP, IDH_SALVAGE_DLG);
351         AfsAppLib_RegisterHelp(IDD_SALVAGE_RESULTS, IDH_SALVAGE_RESULTS_CTX_HELP, IDH_SALVAGE_RESULTS_DLG);
352 }
353
354 void RegisterWizardHelp()
355 {
356         AfsAppLib_RegisterHelp(IDD_INTRO_PAGE, IDH_INTRO_CTX_HELP, IDH_INTRO_PAGE);     
357     AfsAppLib_RegisterHelp(IDD_INFO_PAGE, IDH_CELL_AND_SERVER_INFO_CTX_HELP, IDH_INFO_PAGE);
358         AfsAppLib_RegisterHelp(IDD_INFO_PAGE2_FIRST_SERVER, IDH_FIRST_SERVER_CTX_HELP, IDH_FIRST_SERVER_PAGE);
359         AfsAppLib_RegisterHelp(IDD_INFO_PAGE2_NOT_FIRST_SERVER, IDH_EXISTING_CELL_CTX_HELP, IDH_EXISTING_CELL_PAGE);
360         AfsAppLib_RegisterHelp(IDD_FILE_SERVER_PAGE, IDH_FILE_SERVER_CTX_HELP, IDH_FILE_SERVER_PAGE);
361         AfsAppLib_RegisterHelp(IDD_DB_SERVER_PAGE, IDH_DB_SERVER_CTX_HELP, IDH_DB_SERVER_PAGE);
362         AfsAppLib_RegisterHelp(IDD_BACKUP_SERVER_PAGE, IDH_BACKUP_SERVER_CTX_HELP, IDH_BACKUP_SERVER_PAGE);
363         AfsAppLib_RegisterHelp(IDD_PARTITION_PAGE, IDH_PARTITION_CTX_HELP, IDH_PARTITION_PAGE);
364         AfsAppLib_RegisterHelp(IDD_ROOT_VOLUMES_PAGE, IDH_ROOT_VOLUMES_CTX_HELP, IDH_ROOT_VOLUMES_PAGE);
365         AfsAppLib_RegisterHelp(IDD_REPLICATION_PAGE, IDH_REPLICATION_CTX_HELP, IDH_REPLICATION_PAGE);
366         AfsAppLib_RegisterHelp(IDD_SYS_CONTROL_PAGE, IDH_SYS_CONTROL_CTX_HELP, IDH_SYS_CONTROL_PAGE);
367         AfsAppLib_RegisterHelp(IDD_GET_PW, IDH_GET_PW_CTX_HELP, IDH_GET_PW_DLG);
368     AfsAppLib_RegisterHelp(IDD_CONFIG_SERVER_PAGE, IDH_CONFIG_SERVER_CTX_HELP, IDH_CONFIG_SERVER_PAGE); 
369 }
370