]>
Commit | Line | Data |
---|---|---|
1e6feb95 VZ |
1 | /* |
2 | * Name: wx/chkconf.h | |
3 | * Purpose: check the config settings for consistency | |
4 | * Author: Vadim Zeitlin | |
5 | * Modified by: | |
6 | * Created: 09.08.00 | |
7 | * RCS-ID: $Id$ | |
8 | * Copyright: (c) 2000 Vadim Zeitlin <vadim@wxwindows.org> | |
9 | * Licence: wxWindows license | |
10 | */ | |
11 | ||
12 | /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ | |
13 | ||
14 | /* | |
15 | this global setting determintes what should we do if the setting FOO | |
16 | requires BAR and BAR is not set: we can either silently define BAR | |
17 | (default, recommended) or give an error and abort (mainly useful for | |
18 | developpers only) | |
19 | */ | |
20 | #define wxABORT_ON_CONFIG_ERROR | |
21 | ||
22 | /* | |
23 | all these tests are for GUI onlu | |
24 | */ | |
25 | #if wxUSE_GUI | |
26 | ||
27 | /* | |
28 | all of the settings tested below must be defined or we'd get an error from | |
29 | preprocessor about invalid integer expression | |
30 | */ | |
31 | ||
32 | #ifndef wxUSE_ACCEL | |
33 | # ifdef wxABORT_ON_CONFIG_ERROR | |
34 | # error "wxUSE_ACCEL must be defined." | |
35 | # else | |
36 | # define wxUSE_ACCEL 0 | |
37 | # endif | |
38 | #endif /* !defined(wxUSE_ACCEL) */ | |
39 | ||
40 | #ifndef wxUSE_BMPBUTTON | |
41 | # ifdef wxABORT_ON_CONFIG_ERROR | |
42 | # error "wxUSE_BMPBUTTON must be defined." | |
43 | # else | |
44 | # define wxUSE_BMPBUTTON 0 | |
45 | # endif | |
46 | #endif /* !defined(wxUSE_BMPBUTTON) */ | |
47 | ||
48 | #ifndef wxUSE_BUTTON | |
49 | # ifdef wxABORT_ON_CONFIG_ERROR | |
50 | # error "wxUSE_BUTTON must be defined." | |
51 | # else | |
52 | # define wxUSE_BUTTON 0 | |
53 | # endif | |
54 | #endif /* !defined(wxUSE_BUTTON) */ | |
55 | ||
56 | #ifndef wxUSE_CALENDARCTRL | |
57 | # ifdef wxABORT_ON_CONFIG_ERROR | |
58 | # error "wxUSE_CALENDARCTRL must be defined." | |
59 | # else | |
60 | # define wxUSE_CALENDARCTRL 0 | |
61 | # endif | |
62 | #endif /* !defined(wxUSE_CALENDARCTRL) */ | |
63 | ||
64 | #ifndef wxUSE_CARET | |
65 | # ifdef wxABORT_ON_CONFIG_ERROR | |
66 | # error "wxUSE_CARET must be defined." | |
67 | # else | |
68 | # define wxUSE_CARET 0 | |
69 | # endif | |
70 | #endif /* !defined(wxUSE_CARET) */ | |
71 | ||
72 | #ifndef wxUSE_CHECKBOX | |
73 | # ifdef wxABORT_ON_CONFIG_ERROR | |
74 | # error "wxUSE_CHECKBOX must be defined." | |
75 | # else | |
76 | # define wxUSE_CHECKBOX 0 | |
77 | # endif | |
78 | #endif /* !defined(wxUSE_CHECKBOX) */ | |
79 | ||
80 | #ifndef wxUSE_CHECKLISTBOX | |
81 | # ifdef wxABORT_ON_CONFIG_ERROR | |
82 | # error "wxUSE_CHECKLISTBOX must be defined." | |
83 | # else | |
84 | # define wxUSE_CHECKLISTBOX 0 | |
85 | # endif | |
86 | #endif /* !defined(wxUSE_CHECKLISTBOX) */ | |
87 | ||
88 | #ifndef wxUSE_CHOICE | |
89 | # ifdef wxABORT_ON_CONFIG_ERROR | |
90 | # error "wxUSE_CHOICE must be defined." | |
91 | # else | |
92 | # define wxUSE_CHOICE 0 | |
93 | # endif | |
94 | #endif /* !defined(wxUSE_CHOICE) */ | |
95 | ||
3379ed37 VZ |
96 | #ifndef wxUSE_CHOICEDLG |
97 | # ifdef wxABORT_ON_CONFIG_ERROR | |
98 | # error "wxUSE_CHOICEDLG must be defined." | |
99 | # else | |
100 | # define wxUSE_CHOICEDLG 0 | |
101 | # endif | |
102 | #endif /* !defined(wxUSE_CHOICEDLG) */ | |
103 | ||
1e6feb95 VZ |
104 | #ifndef wxUSE_CLIPBOARD |
105 | # ifdef wxABORT_ON_CONFIG_ERROR | |
106 | # error "wxUSE_CLIPBOARD must be defined." | |
107 | # else | |
108 | # define wxUSE_CLIPBOARD 0 | |
109 | # endif | |
110 | #endif /* !defined(wxUSE_CLIPBOARD) */ | |
111 | ||
a2c0a9c5 VZ |
112 | #ifndef wxUSE_COLOURDLG |
113 | # ifdef wxABORT_ON_CONFIG_ERROR | |
114 | # error "wxUSE_COLOURDLG must be defined." | |
115 | # else | |
116 | # define wxUSE_COLOURDLG 0 | |
117 | # endif | |
118 | #endif /* !defined(wxUSE_COLOURDLG) */ | |
119 | ||
1e6feb95 VZ |
120 | #ifndef wxUSE_COMBOBOX |
121 | # ifdef wxABORT_ON_CONFIG_ERROR | |
122 | # error "wxUSE_COMBOBOX must be defined." | |
123 | # else | |
124 | # define wxUSE_COMBOBOX 0 | |
125 | # endif | |
126 | #endif /* !defined(wxUSE_COMBOBOX) */ | |
127 | ||
128 | #ifndef wxUSE_DATAOBJ | |
129 | # ifdef wxABORT_ON_CONFIG_ERROR | |
130 | # error "wxUSE_DATAOBJ must be defined." | |
131 | # else | |
132 | # define wxUSE_DATAOBJ 0 | |
133 | # endif | |
134 | #endif /* !defined(wxUSE_DATAOBJ) */ | |
135 | ||
3379ed37 VZ |
136 | #ifndef wxUSE_DOC_VIEW_ARCHITECTURE |
137 | # ifdef wxABORT_ON_CONFIG_ERROR | |
138 | # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined." | |
139 | # else | |
140 | # define wxUSE_DOC_VIEW_ARCHITECTURE 0 | |
141 | # endif | |
142 | #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */ | |
143 | ||
1e6feb95 VZ |
144 | #ifndef wxUSE_FILEDLG |
145 | # ifdef wxABORT_ON_CONFIG_ERROR | |
146 | # error "wxUSE_FILEDLG must be defined." | |
147 | # else | |
148 | # define wxUSE_FILEDLG 0 | |
149 | # endif | |
150 | #endif /* !defined(wxUSE_FILEDLG) */ | |
151 | ||
152 | #ifndef wxUSE_FONTDLG | |
153 | # ifdef wxABORT_ON_CONFIG_ERROR | |
154 | # error "wxUSE_FONTDLG must be defined." | |
155 | # else | |
156 | # define wxUSE_FONTDLG 0 | |
157 | # endif | |
158 | #endif /* !defined(wxUSE_FONTDLG) */ | |
159 | ||
160 | #ifndef wxUSE_FONTMAP | |
161 | # ifdef wxABORT_ON_CONFIG_ERROR | |
162 | # error "wxUSE_FONTMAP must be defined." | |
163 | # else | |
164 | # define wxUSE_FONTMAP 0 | |
165 | # endif | |
166 | #endif /* !defined(wxUSE_FONTMAP) */ | |
167 | ||
168 | #ifndef wxUSE_GAUGE | |
169 | # ifdef wxABORT_ON_CONFIG_ERROR | |
170 | # error "wxUSE_GAUGE must be defined." | |
171 | # else | |
172 | # define wxUSE_GAUGE 0 | |
173 | # endif | |
174 | #endif /* !defined(wxUSE_GAUGE) */ | |
175 | ||
176 | #ifndef wxUSE_GRID | |
177 | # ifdef wxABORT_ON_CONFIG_ERROR | |
178 | # error "wxUSE_GRID must be defined." | |
179 | # else | |
180 | # define wxUSE_GRID 0 | |
181 | # endif | |
182 | #endif /* !defined(wxUSE_GRID) */ | |
183 | ||
3379ed37 VZ |
184 | #ifndef wxUSE_HELP |
185 | # ifdef wxABORT_ON_CONFIG_ERROR | |
186 | # error "wxUSE_HELP must be defined." | |
187 | # else | |
188 | # define wxUSE_HELP 0 | |
189 | # endif | |
190 | #endif /* !defined(wxUSE_HELP) */ | |
191 | ||
05dcbb8e VZ |
192 | #ifndef wxUSE_HTML |
193 | # ifdef wxABORT_ON_CONFIG_ERROR | |
194 | # error "wxUSE_HTML must be defined." | |
195 | # else | |
196 | # define wxUSE_HTML 0 | |
197 | # endif | |
198 | #endif /* !defined(wxUSE_HTML) */ | |
199 | ||
1e6feb95 VZ |
200 | #ifndef wxUSE_IMAGLIST |
201 | # ifdef wxABORT_ON_CONFIG_ERROR | |
202 | # error "wxUSE_IMAGLIST must be defined." | |
203 | # else | |
204 | # define wxUSE_IMAGLIST 0 | |
205 | # endif | |
206 | #endif /* !defined(wxUSE_IMAGLIST) */ | |
207 | ||
2131b89d VZ |
208 | #ifndef wxUSE_JOYSTICK |
209 | # ifdef wxABORT_ON_CONFIG_ERROR | |
210 | # error "wxUSE_JOYSTICK must be defined." | |
211 | # else | |
212 | # define wxUSE_JOYSTICK 0 | |
213 | # endif | |
214 | #endif /* !defined(wxUSE_JOYSTICK) */ | |
215 | ||
1e6feb95 VZ |
216 | #ifndef wxUSE_LISTBOX |
217 | # ifdef wxABORT_ON_CONFIG_ERROR | |
218 | # error "wxUSE_LISTBOX must be defined." | |
219 | # else | |
220 | # define wxUSE_LISTBOX 0 | |
221 | # endif | |
222 | #endif /* !defined(wxUSE_LISTBOX) */ | |
223 | ||
224 | #ifndef wxUSE_LISTCTRL | |
225 | # ifdef wxABORT_ON_CONFIG_ERROR | |
226 | # error "wxUSE_LISTCTRL must be defined." | |
227 | # else | |
228 | # define wxUSE_LISTCTRL 0 | |
229 | # endif | |
230 | #endif /* !defined(wxUSE_LISTCTRL) */ | |
231 | ||
3379ed37 | 232 | #ifndef wxUSE_LOG |
e421922f | 233 | # ifdef wxABORT_ON_CONFIG_ERROR |
3379ed37 | 234 | # error "wxUSE_LOG must be defined." |
e421922f | 235 | # else |
3379ed37 | 236 | # define wxUSE_LOG 0 |
e421922f | 237 | # endif |
3379ed37 VZ |
238 | #endif /* !defined(wxUSE_LOG) */ |
239 | ||
240 | #ifndef wxUSE_LOGGUI | |
241 | # ifdef wxABORT_ON_CONFIG_ERROR | |
242 | # error "wxUSE_LOGGUI must be defined." | |
243 | # else | |
244 | # define wxUSE_LOGGUI 0 | |
245 | # endif | |
246 | #endif /* !defined(wxUSE_LOGGUI) */ | |
247 | ||
248 | #ifndef wxUSE_LOGWINDOW | |
249 | # ifdef wxABORT_ON_CONFIG_ERROR | |
250 | # error "wxUSE_LOGWINDOW must be defined." | |
251 | # else | |
252 | # define wxUSE_LOGWINDOW 0 | |
253 | # endif | |
254 | #endif /* !defined(wxUSE_LOGWINDOW) */ | |
e421922f | 255 | |
3e6e2754 JS |
256 | #ifndef wxUSE_LOG_DIALOG |
257 | # ifdef wxABORT_ON_CONFIG_ERROR | |
258 | # error "wxUSE_LOG_DIALOG must be defined." | |
259 | # else | |
260 | # define wxUSE_LOG_DIALOG 0 | |
261 | # endif | |
71908213 | 262 | #endif /* !defined(wxUSE_LOG_DIALOG) */ |
3e6e2754 | 263 | |
1e6feb95 VZ |
264 | #ifndef wxUSE_MDI_ARCHITECTURE |
265 | # ifdef wxABORT_ON_CONFIG_ERROR | |
266 | # error "wxUSE_MDI_ARCHITECTURE must be defined." | |
267 | # else | |
268 | # define wxUSE_MDI_ARCHITECTURE 0 | |
269 | # endif | |
270 | #endif /* !defined(wxUSE_MDI_ARCHITECTURE) */ | |
271 | ||
272 | #ifndef wxUSE_MENUS | |
273 | # ifdef wxABORT_ON_CONFIG_ERROR | |
274 | # error "wxUSE_MENUS must be defined." | |
275 | # else | |
276 | # define wxUSE_MENUS 0 | |
277 | # endif | |
278 | #endif /* !defined(wxUSE_MENUS) */ | |
279 | ||
280 | #ifndef wxUSE_MIMETYPE | |
281 | # ifdef wxABORT_ON_CONFIG_ERROR | |
282 | # error "wxUSE_MIMETYPE must be defined." | |
283 | # else | |
284 | # define wxUSE_MIMETYPE 0 | |
285 | # endif | |
286 | #endif /* !defined(wxUSE_MIMETYPE) */ | |
287 | ||
3379ed37 VZ |
288 | #ifndef wxUSE_MSGDLG |
289 | # ifdef wxABORT_ON_CONFIG_ERROR | |
290 | # error "wxUSE_MSGDLG must be defined." | |
291 | # else | |
292 | # define wxUSE_MSGDLG 0 | |
293 | # endif | |
294 | #endif /* !defined(wxUSE_MSGDLG) */ | |
295 | ||
1e6feb95 VZ |
296 | #ifndef wxUSE_NEW_GRID |
297 | # ifdef wxABORT_ON_CONFIG_ERROR | |
298 | # error "wxUSE_NEW_GRID must be defined." | |
299 | # else | |
300 | # define wxUSE_NEW_GRID 0 | |
301 | # endif | |
302 | #endif /* !defined(wxUSE_NEW_GRID) */ | |
303 | ||
304 | #ifndef wxUSE_NOTEBOOK | |
305 | # ifdef wxABORT_ON_CONFIG_ERROR | |
306 | # error "wxUSE_NOTEBOOK must be defined." | |
307 | # else | |
308 | # define wxUSE_NOTEBOOK 0 | |
309 | # endif | |
310 | #endif /* !defined(wxUSE_NOTEBOOK) */ | |
311 | ||
312 | #ifndef wxUSE_POPUPWIN | |
313 | # ifdef wxABORT_ON_CONFIG_ERROR | |
314 | # error "wxUSE_POPUPWIN must be defined." | |
315 | # else | |
316 | # define wxUSE_POPUPWIN 0 | |
317 | # endif | |
318 | #endif /* !defined(wxUSE_POPUPWIN) */ | |
319 | ||
3379ed37 VZ |
320 | #ifndef wxUSE_PRINTING_ARCHITECTURE |
321 | # ifdef wxABORT_ON_CONFIG_ERROR | |
322 | # error "wxUSE_PRINTING_ARCHITECTURE must be defined." | |
323 | # else | |
324 | # define wxUSE_PRINTING_ARCHITECTURE 0 | |
325 | # endif | |
326 | #endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */ | |
327 | ||
1e6feb95 VZ |
328 | #ifndef wxUSE_RADIOBOX |
329 | # ifdef wxABORT_ON_CONFIG_ERROR | |
330 | # error "wxUSE_RADIOBOX must be defined." | |
331 | # else | |
332 | # define wxUSE_RADIOBOX 0 | |
333 | # endif | |
334 | #endif /* !defined(wxUSE_RADIOBOX) */ | |
335 | ||
336 | #ifndef wxUSE_RADIOBTN | |
337 | # ifdef wxABORT_ON_CONFIG_ERROR | |
338 | # error "wxUSE_RADIOBTN must be defined." | |
339 | # else | |
340 | # define wxUSE_RADIOBTN 0 | |
341 | # endif | |
342 | #endif /* !defined(wxUSE_RADIOBTN) */ | |
343 | ||
208750a5 VZ |
344 | #ifndef wxUSE_REGEX |
345 | # ifdef wxABORT_ON_CONFIG_ERROR | |
346 | # error "wxUSE_REGEX must be defined." | |
347 | # else | |
348 | # define wxUSE_REGEX 0 | |
349 | # endif | |
350 | #endif /* !defined(wxUSE_REGEX) */ | |
351 | ||
1e6feb95 VZ |
352 | #ifndef wxUSE_SASH |
353 | # ifdef wxABORT_ON_CONFIG_ERROR | |
354 | # error "wxUSE_SASH must be defined." | |
355 | # else | |
356 | # define wxUSE_SASH 0 | |
357 | # endif | |
358 | #endif /* !defined(wxUSE_SASH) */ | |
359 | ||
360 | #ifndef wxUSE_SCROLLBAR | |
361 | # ifdef wxABORT_ON_CONFIG_ERROR | |
362 | # error "wxUSE_SCROLLBAR must be defined." | |
363 | # else | |
364 | # define wxUSE_SCROLLBAR 0 | |
365 | # endif | |
366 | #endif /* !defined(wxUSE_SCROLLBAR) */ | |
367 | ||
368 | #ifndef wxUSE_SLIDER | |
369 | # ifdef wxABORT_ON_CONFIG_ERROR | |
370 | # error "wxUSE_SLIDER must be defined." | |
371 | # else | |
372 | # define wxUSE_SLIDER 0 | |
373 | # endif | |
374 | #endif /* !defined(wxUSE_SLIDER) */ | |
375 | ||
376 | #ifndef wxUSE_SPINBTN | |
377 | # ifdef wxABORT_ON_CONFIG_ERROR | |
378 | # error "wxUSE_SPINBTN must be defined." | |
379 | # else | |
380 | # define wxUSE_SPINBTN 0 | |
381 | # endif | |
382 | #endif /* !defined(wxUSE_SPINBTN) */ | |
383 | ||
384 | #ifndef wxUSE_SPINCTRL | |
385 | # ifdef wxABORT_ON_CONFIG_ERROR | |
386 | # error "wxUSE_SPINCTRL must be defined." | |
387 | # else | |
388 | # define wxUSE_SPINCTRL 0 | |
389 | # endif | |
390 | #endif /* !defined(wxUSE_SPINCTRL) */ | |
391 | ||
392 | #ifndef wxUSE_SPLITTER | |
393 | # ifdef wxABORT_ON_CONFIG_ERROR | |
394 | # error "wxUSE_SPLITTER must be defined." | |
395 | # else | |
396 | # define wxUSE_SPLITTER 0 | |
397 | # endif | |
398 | #endif /* !defined(wxUSE_SPLITTER) */ | |
399 | ||
400 | #ifndef wxUSE_STATBMP | |
401 | # ifdef wxABORT_ON_CONFIG_ERROR | |
402 | # error "wxUSE_STATBMP must be defined." | |
403 | # else | |
404 | # define wxUSE_STATBMP 0 | |
405 | # endif | |
406 | #endif /* !defined(wxUSE_STATBMP) */ | |
407 | ||
408 | #ifndef wxUSE_STATBOX | |
409 | # ifdef wxABORT_ON_CONFIG_ERROR | |
410 | # error "wxUSE_STATBOX must be defined." | |
411 | # else | |
412 | # define wxUSE_STATBOX 0 | |
413 | # endif | |
414 | #endif /* !defined(wxUSE_STATBOX) */ | |
415 | ||
416 | #ifndef wxUSE_STATLINE | |
417 | # ifdef wxABORT_ON_CONFIG_ERROR | |
418 | # error "wxUSE_STATLINE must be defined." | |
419 | # else | |
420 | # define wxUSE_STATLINE 0 | |
421 | # endif | |
422 | #endif /* !defined(wxUSE_STATLINE) */ | |
423 | ||
3379ed37 VZ |
424 | #ifndef wxUSE_STATTEXT |
425 | # ifdef wxABORT_ON_CONFIG_ERROR | |
426 | # error "wxUSE_STATTEXT must be defined." | |
427 | # else | |
428 | # define wxUSE_STATTEXT 0 | |
429 | # endif | |
430 | #endif /* !defined(wxUSE_STATTEXT) */ | |
431 | ||
1e6feb95 VZ |
432 | #ifndef wxUSE_STATUSBAR |
433 | # ifdef wxABORT_ON_CONFIG_ERROR | |
434 | # error "wxUSE_STATUSBAR must be defined." | |
435 | # else | |
436 | # define wxUSE_STATUSBAR 0 | |
437 | # endif | |
438 | #endif /* !defined(wxUSE_STATUSBAR) */ | |
439 | ||
440 | #ifndef wxUSE_STOPWATCH | |
441 | # ifdef wxABORT_ON_CONFIG_ERROR | |
442 | # error "wxUSE_STOPWATCH must be defined." | |
443 | # else | |
444 | # define wxUSE_STOPWATCH 0 | |
445 | # endif | |
446 | #endif /* !defined(wxUSE_STOPWATCH) */ | |
447 | ||
448 | #ifndef wxUSE_TAB_DIALOG | |
449 | # ifdef wxABORT_ON_CONFIG_ERROR | |
450 | # error "wxUSE_TAB_DIALOG must be defined." | |
451 | # else | |
452 | # define wxUSE_TAB_DIALOG 0 | |
453 | # endif | |
454 | #endif /* !defined(wxUSE_TAB_DIALOG) */ | |
455 | ||
456 | #ifndef wxUSE_TEXTCTRL | |
457 | # ifdef wxABORT_ON_CONFIG_ERROR | |
458 | # error "wxUSE_TEXTCTRL must be defined." | |
459 | # else | |
460 | # define wxUSE_TEXTCTRL 0 | |
461 | # endif | |
462 | #endif /* !defined(wxUSE_TEXTCTRL) */ | |
463 | ||
464 | #ifndef wxUSE_TOOLBAR | |
465 | # ifdef wxABORT_ON_CONFIG_ERROR | |
466 | # error "wxUSE_TOOLBAR must be defined." | |
467 | # else | |
468 | # define wxUSE_TOOLBAR 0 | |
469 | # endif | |
470 | #endif /* !defined(wxUSE_TOOLBAR) */ | |
471 | ||
472 | #ifndef wxUSE_TOOLTIPS | |
473 | # ifdef wxABORT_ON_CONFIG_ERROR | |
474 | # error "wxUSE_TOOLTIPS must be defined." | |
475 | # else | |
476 | # define wxUSE_TOOLTIPS 0 | |
477 | # endif | |
478 | #endif /* !defined(wxUSE_TOOLTIPS) */ | |
479 | ||
480 | #ifndef wxUSE_TREECTRL | |
481 | # ifdef wxABORT_ON_CONFIG_ERROR | |
482 | # error "wxUSE_TREECTRL must be defined." | |
483 | # else | |
484 | # define wxUSE_TREECTRL 0 | |
485 | # endif | |
486 | #endif /* !defined(wxUSE_TREECTRL) */ | |
487 | ||
3379ed37 VZ |
488 | #ifndef wxUSE_WXHTML_HELP |
489 | # ifdef wxABORT_ON_CONFIG_ERROR | |
490 | # error "wxUSE_WXHTML_HELP must be defined." | |
491 | # else | |
492 | # define wxUSE_WXHTML_HELP 0 | |
493 | # endif | |
494 | #endif /* !defined(wxUSE_WXHTML_HELP) */ | |
495 | ||
1e6feb95 VZ |
496 | /* |
497 | check consistency of the settings | |
498 | */ | |
499 | #if wxUSE_BUTTON || \ | |
500 | wxUSE_CALENDARCTRL || \ | |
501 | wxUSE_CARET || \ | |
502 | wxUSE_COMBOBOX || \ | |
503 | wxUSE_BMPBUTTON || \ | |
504 | wxUSE_CHECKBOX || \ | |
505 | wxUSE_CHECKLISTBOX || \ | |
506 | wxUSE_CHOICE || \ | |
507 | wxUSE_GAUGE || \ | |
508 | wxUSE_GRID || \ | |
509 | wxUSE_NEW_GRID || \ | |
510 | wxUSE_LISTBOX || \ | |
511 | wxUSE_LISTCTRL || \ | |
512 | wxUSE_NOTEBOOK || \ | |
513 | wxUSE_RADIOBOX || \ | |
514 | wxUSE_RADIOBTN || \ | |
515 | wxUSE_SCROLLBAR || \ | |
516 | wxUSE_SLIDER || \ | |
517 | wxUSE_SPINBTN || \ | |
518 | wxUSE_SPINCTRL || \ | |
519 | wxUSE_STATBMP || \ | |
520 | wxUSE_STATBOX || \ | |
521 | wxUSE_STATLINE || \ | |
3379ed37 | 522 | wxUSE_STATTEXT || \ |
1e6feb95 VZ |
523 | wxUSE_STATUSBAR || \ |
524 | wxUSE_TEXTCTRL || \ | |
525 | wxUSE_TOOLBAR || \ | |
526 | wxUSE_TREECTRL | |
527 | # if !wxUSE_CONTROLS | |
528 | # ifdef wxABORT_ON_CONFIG_ERROR | |
529 | # error "wxUSE_CONTROLS unset but some controls used" | |
530 | # else | |
531 | # undef wxUSE_CONTROLS | |
532 | # define wxUSE_CONTROLS 1 | |
533 | # endif | |
534 | # endif | |
535 | #endif /* controls */ | |
536 | ||
3379ed37 VZ |
537 | /* wxUniv-specific dependencies */ |
538 | #if defined(__WXUNIVERSAL__) | |
539 | # if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN | |
540 | # ifdef wxABORT_ON_CONFIG_ERROR | |
541 | # error "wxUSE_POPUPWIN must be defined to use comboboxes/menus" | |
542 | # else | |
543 | # undef wxUSE_POPUPWIN | |
544 | # define wxUSE_POPUPWIN 1 | |
545 | # endif | |
546 | # endif | |
547 | ||
548 | # if wxUSE_COMBOBOX | |
549 | # if !wxUSE_LISTBOX | |
550 | # ifdef wxABORT_ON_CONFIG_ERROR | |
551 | # error "wxComboBox requires wxListBox in wxUniversal" | |
552 | # else | |
553 | # undef wxUSE_LISTBOX | |
554 | # define wxUSE_LISTBOX 1 | |
555 | # endif | |
556 | # endif | |
557 | # endif /* wxUSE_COMBOBOX */ | |
558 | ||
559 | # if wxUSE_RADIOBTN | |
560 | # if !wxUSE_CHECKBOX | |
561 | # ifdef wxABORT_ON_CONFIG_ERROR | |
562 | # error "wxUSE_RADIOBTN requires wxUSE_CHECKBOX in wxUniversal" | |
563 | # else | |
564 | # undef wxUSE_CHECKBOX | |
565 | # define wxUSE_CHECKBOX 1 | |
566 | # endif | |
567 | # endif | |
568 | # endif /* wxUSE_RADIOBTN */ | |
569 | ||
570 | # if wxUSE_TEXTCTRL | |
571 | # if !wxUSE_CARET | |
572 | # ifdef wxABORT_ON_CONFIG_ERROR | |
573 | # error "wxTextCtrl requires wxCaret in wxUniversal" | |
574 | # else | |
575 | # undef wxUSE_CARET | |
576 | # define wxUSE_CARET 1 | |
577 | # endif | |
578 | # endif /* wxUSE_CARET */ | |
579 | ||
580 | # if !wxUSE_SCROLLBAR | |
581 | # ifdef wxABORT_ON_CONFIG_ERROR | |
582 | # error "wxTextCtrl requires wxScrollBar in wxUniversal" | |
583 | # else | |
584 | # undef wxUSE_SCROLLBAR | |
585 | # define wxUSE_SCROLLBAR 1 | |
586 | # endif | |
587 | # endif /* wxUSE_SCROLLBAR */ | |
588 | # endif /* wxUSE_TEXTCTRL */ | |
589 | #endif /* __WXUNIVERSAL__ */ | |
590 | ||
591 | /* wxGTK-specific dependencies */ | |
2131b89d VZ |
592 | #ifdef __WXGTK__ |
593 | # ifndef __WXUNIVERSAL__ | |
594 | # if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS | |
595 | # ifdef wxABORT_ON_CONFIG_ERROR | |
596 | # error "MDI requires wxUSE_MENUS in wxGTK" | |
597 | # else | |
598 | # undef wxUSE_MENUS | |
599 | # define wxUSE_MENUS 1 | |
600 | # endif | |
601 | # endif | |
602 | # endif /* !__WXUNIVERSAL__ */ | |
603 | ||
604 | # if wxUSE_JOYSTICK | |
605 | # if !wxUSE_THREADS | |
606 | # ifdef wxABORT_ON_CONFIG_ERROR | |
607 | # error "wxJoystick requires threads in wxGTK" | |
608 | # else | |
609 | # undef wxUSE_JOYSTICK | |
610 | # define wxUSE_JOYSTICK 0 | |
611 | # endif | |
3379ed37 VZ |
612 | # endif |
613 | # endif | |
614 | #endif /* wxGTK && !wxUniv */ | |
615 | ||
9806a47c JS |
616 | /* wxMotif-specific dependencies */ |
617 | #if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG | |
618 | # undef wxUSE_TAB_DIALOG | |
619 | # define wxUSE_TAB_DIALOG 1 | |
620 | #endif | |
621 | #if defined(__WXMOTIF__) && wxUSE_TOGGLEBTN | |
622 | # undef wxUSE_TOGGLEBTN | |
623 | # define wxUSE_TOGGLEBTN 0 | |
624 | #endif | |
625 | ||
3379ed37 VZ |
626 | /* generic controls dependencies */ |
627 | #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) | |
628 | # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG | |
629 | /* all common controls are needed by these dialogs */ | |
630 | # if !defined(wxUSE_CHOICE) || \ | |
631 | !defined(wxUSE_TEXTCTRL) || \ | |
632 | !defined(wxUSE_BUTTON) || \ | |
633 | !defined(wxUSE_CHECKBOX) || \ | |
634 | !defined(wxUSE_STATTEXT) | |
635 | # ifdef wxABORT_ON_CONFIG_ERROR | |
636 | # error "These common controls are needed by common dialogs" | |
637 | # else | |
638 | # undef wxUSE_CHOICE | |
639 | # define wxUSE_CHOICE 1 | |
640 | # undef wxUSE_TEXTCTRL | |
641 | # define wxUSE_TEXTCTRL 1 | |
642 | # undef wxUSE_BUTTON | |
643 | # define wxUSE_BUTTON 1 | |
644 | # undef wxUSE_CHECKBOX | |
645 | # define wxUSE_CHECKBOX 1 | |
646 | # undef wxUSE_STATTEXT | |
647 | # define wxUSE_STATTEXT 1 | |
648 | # endif | |
649 | # endif | |
650 | # endif | |
651 | #endif /* !wxMSW || wxUniv */ | |
652 | ||
653 | /* common dependencies */ | |
1e6feb95 VZ |
654 | #if wxUSE_CALENDARCTRL |
655 | # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX) | |
656 | # ifdef wxABORT_ON_CONFIG_ERROR | |
657 | # error "wxCalendarCtrl requires wxSpinButton and wxComboBox" | |
658 | # else | |
659 | # undef wxUSE_SPINBTN | |
660 | # undef wxUSE_COMBOBOX | |
661 | # define wxUSE_SPINBTN 1 | |
662 | # define wxUSE_COMBOBOX 1 | |
663 | # endif | |
664 | # endif | |
665 | #endif /* wxUSE_CALENDARCTRL */ | |
666 | ||
667 | #if wxUSE_CHECKLISTBOX | |
668 | # if !wxUSE_LISTBOX | |
669 | # ifdef wxABORT_ON_CONFIG_ERROR | |
670 | # error "wxCheckListBox requires wxListBox" | |
671 | # else | |
672 | # undef wxUSE_LISTBOX | |
673 | # define wxUSE_LISTBOX 1 | |
674 | # endif | |
675 | # endif | |
676 | #endif /* wxUSE_RADIOBTN */ | |
677 | ||
3379ed37 VZ |
678 | #if wxUSE_WXHTML_HELP |
679 | # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX | |
680 | # ifdef wxABORT_ON_CONFIG_ERROR | |
681 | # error "Built in help controller can't be compiled" | |
682 | # else | |
683 | # undef wxUSE_HELP | |
684 | # define wxUSE_HELP 1 | |
685 | # undef wxUSE_HTML | |
686 | # define wxUSE_HTML 1 | |
687 | # undef wxUSE_COMBOBOX | |
688 | # define wxUSE_COMBOBOX 1 | |
689 | # endif | |
690 | # endif | |
691 | #endif /* wxUSE_WXHTML_HELP */ | |
692 | ||
693 | #if wxUSE_PRINTING_ARCHITECTURE | |
694 | # if !wxUSE_COMBOBOX | |
695 | # ifdef wxABORT_ON_CONFIG_ERROR | |
696 | # error "Print dialog requires wxUSE_COMBOBOX" | |
697 | # else | |
698 | # undef wxUSE_COMBOBOX | |
699 | # define wxUSE_COMBOBOX 1 | |
700 | # endif | |
701 | # endif | |
702 | #endif /* wxUSE_PRINTING_ARCHITECTURE */ | |
703 | ||
704 | #if wxUSE_DOC_VIEW_ARCHITECTURE | |
705 | # if !wxUSE_MENUS | |
1e6feb95 | 706 | # ifdef wxABORT_ON_CONFIG_ERROR |
3379ed37 | 707 | # error "DocView requires wxUSE_MENUS" |
1e6feb95 | 708 | # else |
3379ed37 VZ |
709 | # undef wxUSE_MENUS |
710 | # define wxUSE_MENUS 1 | |
1e6feb95 VZ |
711 | # endif |
712 | # endif | |
3379ed37 | 713 | #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */ |
1e6feb95 VZ |
714 | |
715 | #if !wxUSE_FILEDLG | |
cbf65655 | 716 | # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_HTML |
1e6feb95 VZ |
717 | # ifdef wxABORT_ON_CONFIG_ERROR |
718 | # error "wxFileDialog must be compiled as well" | |
719 | # else | |
720 | # undef wxUSE_FILEDLG | |
721 | # define wxUSE_FILEDLG 1 | |
722 | # endif | |
723 | # endif | |
e421922f | 724 | #endif /* wxUSE_FILEDLG */ |
1e6feb95 | 725 | |
1e6feb95 VZ |
726 | #if !wxUSE_IMAGLIST |
727 | # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL | |
728 | # ifdef wxABORT_ON_CONFIG_ERROR | |
729 | # error "wxImageList must be compiled as well" | |
730 | # else | |
731 | # undef wxUSE_IMAGLIST | |
732 | # define wxUSE_IMAGLIST 1 | |
733 | # endif | |
734 | # endif | |
735 | #endif /* !wxUSE_IMAGLIST */ | |
736 | ||
e421922f VZ |
737 | #if !wxUSE_MSGDLG |
738 | # ifdef wxABORT_ON_CONFIG_ERROR | |
739 | /* FIXME: should compile without it, of course, but doesn't */ | |
740 | # error "wxMessageBox is always needed" | |
741 | # else | |
742 | # undef wxUSE_MSGDLG | |
743 | # define wxUSE_MSGDLG 1 | |
744 | # endif | |
745 | #endif | |
746 | ||
1e6feb95 VZ |
747 | #if wxUSE_RADIOBOX |
748 | # if !wxUSE_RADIOBTN || !wxUSE_STATBOX | |
749 | # ifdef wxABORT_ON_CONFIG_ERROR | |
750 | # error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN and wxUSE_STATBOX" | |
751 | # else | |
752 | # undef wxUSE_RADIOBTN | |
753 | # undef wxUSE_STATBOX | |
754 | # define wxUSE_RADIOBTN 1 | |
755 | # define wxUSE_STATBOX 1 | |
756 | # endif | |
757 | # endif | |
758 | #endif /* wxUSE_RADIOBOX */ | |
759 | ||
760 | #if wxUSE_STOPWATCH | |
761 | # if !wxUSE_LONGLONG | |
762 | # ifdef wxABORT_ON_CONFIG_ERROR | |
763 | # error "wxUSE_STOPWATCH requires wxUSE_LONGLONG" | |
764 | # else | |
765 | # undef wxUSE_LONGLONG | |
766 | # define wxUSE_LONGLONG 1 | |
767 | # endif | |
768 | # endif | |
769 | #endif /* wxUSE_STOPWATCH */ | |
770 | ||
3379ed37 VZ |
771 | #if wxUSE_LOGWINDOW |
772 | # if !wxUSE_TEXTCTRL | |
773 | # ifdef wxABORT_ON_CONFIG_ERROR | |
774 | # error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL" | |
775 | # else | |
776 | # undef wxUSE_TEXTCTRL | |
777 | # define wxUSE_TEXTCTRL 1 | |
778 | # endif | |
779 | # endif | |
780 | #endif /* wxUSE_LOGWINDOW */ | |
1e6feb95 | 781 | |
3e6e2754 JS |
782 | #if wxUSE_LOG_DIALOG |
783 | # if !wxUSE_LISTCTRL | |
784 | # ifdef wxABORT_ON_CONFIG_ERROR | |
785 | # error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL" | |
786 | # else | |
787 | # undef wxUSE_LISTCTRL | |
788 | # define wxUSE_LISTCTRL 1 | |
789 | # endif | |
790 | # endif | |
791 | #endif /* wxUSE_LOG_DIALOG */ | |
792 | ||
1e6feb95 VZ |
793 | /* I wonder if we shouldn't just remove all occurrences of |
794 | wxUSE_DYNAMIC_CLASSES from the sources? */ | |
795 | #if !defined(wxUSE_DYNAMIC_CLASSES) || !wxUSE_DYNAMIC_CLASSES | |
3379ed37 | 796 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
797 | # error "wxUSE_DYNAMIC_CLASSES must be defined as 1" |
798 | # else | |
799 | # undef wxUSE_DYNAMIC_CLASSES | |
800 | # define wxUSE_DYNAMIC_CLASSES | |
801 | # endif | |
802 | #endif /* wxUSE_DYNAMIC_CLASSES */ | |
803 | ||
804 | #if wxUSE_MIMETYPE && !wxUSE_TEXTFILE | |
3379ed37 | 805 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
806 | # error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE" |
807 | # else | |
808 | # undef wxUSE_TEXTFILE | |
809 | # define wxUSE_TEXTFILE 1 | |
810 | # endif | |
811 | #endif /* wxUSE_MIMETYPE */ | |
812 | ||
813 | #if wxUSE_TEXTFILE && !wxUSE_FILE | |
3379ed37 | 814 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
815 | # error "wxUSE_TEXTFILE requires wxUSE_FILE" |
816 | # else | |
817 | # undef wxUSE_FILE | |
818 | # define wxUSE_FILE 1 | |
819 | # endif | |
820 | #endif /* wxUSE_TEXTFILE */ | |
821 | ||
822 | #if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ | |
3379ed37 | 823 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
824 | # error "wxClipboard requires wxDataObject" |
825 | # else | |
826 | # undef wxUSE_DATAOBJ | |
827 | # define wxUSE_DATAOBJ 1 | |
828 | # endif | |
829 | #endif /* wxUSE_CLIPBOARD */ | |
830 | ||
1e6feb95 VZ |
831 | #endif /* wxUSE_GUI */ |
832 |