]>
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> | |
371a5b4e | 9 | * Licence: wxWindows licence |
1e6feb95 VZ |
10 | */ |
11 | ||
12 | /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ | |
13 | ||
01ebf752 JS |
14 | /* |
15 | Compiler-specific checking. | |
16 | */ | |
17 | ||
18 | #if defined(__WXMSW__) | |
19 | # include "wx/msw/chkconf.h" | |
20 | #elif defined(__WXMAC__) | |
21 | # include "wx/mac/chkconf.h" | |
22 | #endif | |
23 | ||
1e6feb95 | 24 | /* |
730dfeb4 | 25 | this global setting determines what should we do if the setting FOO |
1e6feb95 VZ |
26 | requires BAR and BAR is not set: we can either silently define BAR |
27 | (default, recommended) or give an error and abort (mainly useful for | |
730dfeb4 | 28 | developers only) |
1e6feb95 VZ |
29 | */ |
30 | #define wxABORT_ON_CONFIG_ERROR | |
31 | ||
6962f34e VZ |
32 | /* |
33 | global features | |
34 | */ | |
35 | ||
36 | /* GUI build by default */ | |
37 | #if !defined(wxUSE_GUI) | |
38 | # define wxUSE_GUI 1 | |
39 | #endif /* !defined(wxUSE_GUI) */ | |
40 | ||
1e6feb95 | 41 | /* |
03169422 RL |
42 | tests for non GUI features |
43 | */ | |
44 | ||
45 | #ifndef wxUSE_DYNLIB_CLASS | |
46 | # ifdef wxABORT_ON_CONFIG_ERROR | |
47 | # error "wxUSE_DYNLIB_CLASS must be defined." | |
48 | # else | |
49 | # define wxUSE_DYNLIB_CLASS 0 | |
50 | # endif | |
51 | #endif /* !defined(wxUSE_DYNLIB_CLASS) */ | |
52 | ||
4199367e VZ |
53 | #ifndef wxUSE_EXCEPTIONS |
54 | # ifdef wxABORT_ON_CONFIG_ERROR | |
55 | # error "wxUSE_EXCEPTIONS must be defined." | |
56 | # else | |
57 | # define wxUSE_EXCEPTIONS 0 | |
58 | # endif | |
59 | #endif /* !defined(wxUSE_EXCEPTIONS) */ | |
60 | ||
c7f3eecc VZ |
61 | #ifndef wxUSE_FILESYSTEM |
62 | # ifdef wxABORT_ON_CONFIG_ERROR | |
63 | # error "wxUSE_FILESYSTEM must be defined." | |
64 | # else | |
65 | # define wxUSE_FILESYSTEM 0 | |
66 | # endif | |
67 | #endif /* !defined(wxUSE_FILESYSTEM) */ | |
68 | ||
6fb17fd5 | 69 | /* don't give an error about this one yet, it's not fully implemented */ |
05815ab3 | 70 | #ifndef wxUSE_FSVOLUME |
6fb17fd5 | 71 | # define wxUSE_FSVOLUME 0 |
05815ab3 VZ |
72 | #endif /* !defined(wxUSE_FSVOLUME) */ |
73 | ||
03169422 RL |
74 | #ifndef wxUSE_DYNAMIC_LOADER |
75 | # ifdef wxABORT_ON_CONFIG_ERROR | |
76 | # error "wxUSE_DYNAMIC_LOADER must be defined." | |
77 | # else | |
78 | # define wxUSE_DYNAMIC_LOADER 0 | |
79 | # endif | |
80 | #endif /* !defined(wxUSE_DYNAMIC_LOADER) */ | |
81 | ||
a5d46b73 VZ |
82 | #ifndef wxUSE_LOG |
83 | # ifdef wxABORT_ON_CONFIG_ERROR | |
84 | # error "wxUSE_LOG must be defined." | |
85 | # else | |
86 | # define wxUSE_LOG 0 | |
87 | # endif | |
88 | #endif /* !defined(wxUSE_LOG) */ | |
89 | ||
90 | #ifndef wxUSE_LONGLONG | |
91 | # ifdef wxABORT_ON_CONFIG_ERROR | |
92 | # error "wxUSE_LONGLONG must be defined." | |
93 | # else | |
94 | # define wxUSE_LONGLONG 0 | |
95 | # endif | |
96 | #endif /* !defined(wxUSE_LONGLONG) */ | |
97 | ||
98 | #ifndef wxUSE_MIMETYPE | |
99 | # ifdef wxABORT_ON_CONFIG_ERROR | |
100 | # error "wxUSE_MIMETYPE must be defined." | |
101 | # else | |
102 | # define wxUSE_MIMETYPE 0 | |
103 | # endif | |
104 | #endif /* !defined(wxUSE_MIMETYPE) */ | |
105 | ||
106 | #ifndef wxUSE_PROTOCOL | |
107 | # ifdef wxABORT_ON_CONFIG_ERROR | |
108 | # error "wxUSE_PROTOCOL must be defined." | |
109 | # else | |
110 | # define wxUSE_PROTOCOL 0 | |
111 | # endif | |
112 | #endif /* !defined(wxUSE_PROTOCOL) */ | |
113 | ||
114 | /* we may not define wxUSE_PROTOCOL_XXX if wxUSE_PROTOCOL is set to 0 */ | |
115 | #if !wxUSE_PROTOCOL | |
116 | # undef wxUSE_PROTOCOL_HTTP | |
117 | # undef wxUSE_PROTOCOL_FTP | |
118 | # undef wxUSE_PROTOCOL_FILE | |
119 | # define wxUSE_PROTOCOL_HTTP 0 | |
120 | # define wxUSE_PROTOCOL_FTP 0 | |
121 | # define wxUSE_PROTOCOL_FILE 0 | |
122 | #endif /* wxUSE_PROTOCOL */ | |
123 | ||
124 | #ifndef wxUSE_PROTOCOL_HTTP | |
125 | # ifdef wxABORT_ON_CONFIG_ERROR | |
126 | # error "wxUSE_PROTOCOL_HTTP must be defined." | |
127 | # else | |
128 | # define wxUSE_PROTOCOL_HTTP 0 | |
129 | # endif | |
130 | #endif /* !defined(wxUSE_PROTOCOL_HTTP) */ | |
131 | ||
132 | #ifndef wxUSE_PROTOCOL_FTP | |
133 | # ifdef wxABORT_ON_CONFIG_ERROR | |
134 | # error "wxUSE_PROTOCOL_FTP must be defined." | |
135 | # else | |
136 | # define wxUSE_PROTOCOL_FTP 0 | |
137 | # endif | |
138 | #endif /* !defined(wxUSE_PROTOCOL_FTP) */ | |
139 | ||
140 | #ifndef wxUSE_PROTOCOL_FILE | |
141 | # ifdef wxABORT_ON_CONFIG_ERROR | |
142 | # error "wxUSE_PROTOCOL_FILE must be defined." | |
143 | # else | |
144 | # define wxUSE_PROTOCOL_FILE 0 | |
145 | # endif | |
146 | #endif /* !defined(wxUSE_PROTOCOL_FILE) */ | |
147 | ||
148 | #ifndef wxUSE_REGEX | |
149 | # ifdef wxABORT_ON_CONFIG_ERROR | |
150 | # error "wxUSE_REGEX must be defined." | |
151 | # else | |
152 | # define wxUSE_REGEX 0 | |
153 | # endif | |
154 | #endif /* !defined(wxUSE_REGEX) */ | |
155 | ||
27b0c286 VS |
156 | #ifndef wxUSE_XML |
157 | # ifdef wxABORT_ON_CONFIG_ERROR | |
158 | # error "wxUSE_XML must be defined." | |
159 | # else | |
160 | # define wxUSE_XML 0 | |
161 | # endif | |
162 | #endif /* !defined(wxUSE_XML) */ | |
163 | ||
a5d46b73 VZ |
164 | #ifndef wxUSE_SOCKETS |
165 | # ifdef wxABORT_ON_CONFIG_ERROR | |
166 | # error "wxUSE_SOCKETS must be defined." | |
167 | # else | |
168 | # define wxUSE_SOCKETS 0 | |
169 | # endif | |
170 | #endif /* !defined(wxUSE_SOCKETS) */ | |
171 | ||
172 | #ifndef wxUSE_STREAMS | |
173 | # ifdef wxABORT_ON_CONFIG_ERROR | |
174 | # error "wxUSE_STREAMS must be defined." | |
175 | # else | |
176 | # define wxUSE_STREAMS 0 | |
177 | # endif | |
178 | #endif /* !defined(wxUSE_STREAMS) */ | |
179 | ||
180 | #ifndef wxUSE_STOPWATCH | |
181 | # ifdef wxABORT_ON_CONFIG_ERROR | |
182 | # error "wxUSE_STOPWATCH must be defined." | |
183 | # else | |
184 | # define wxUSE_STOPWATCH 0 | |
185 | # endif | |
186 | #endif /* !defined(wxUSE_STOPWATCH) */ | |
187 | ||
188 | #ifndef wxUSE_TEXTBUFFER | |
189 | # ifdef wxABORT_ON_CONFIG_ERROR | |
190 | # error "wxUSE_TEXTBUFFER must be defined." | |
191 | # else | |
192 | # define wxUSE_TEXTBUFFER 0 | |
193 | # endif | |
194 | #endif /* !defined(wxUSE_TEXTBUFFER) */ | |
195 | ||
196 | #ifndef wxUSE_TEXTFILE | |
197 | # ifdef wxABORT_ON_CONFIG_ERROR | |
198 | # error "wxUSE_TEXTFILE must be defined." | |
199 | # else | |
200 | # define wxUSE_TEXTFILE 0 | |
201 | # endif | |
202 | #endif /* !defined(wxUSE_TEXTFILE) */ | |
203 | ||
204 | #ifndef wxUSE_UNICODE | |
205 | # ifdef wxABORT_ON_CONFIG_ERROR | |
206 | # error "wxUSE_UNICODE must be defined." | |
207 | # else | |
208 | # define wxUSE_UNICODE 0 | |
209 | # endif | |
210 | #endif /* !defined(wxUSE_UNICODE) */ | |
211 | ||
212 | #ifndef wxUSE_URL | |
213 | # ifdef wxABORT_ON_CONFIG_ERROR | |
214 | # error "wxUSE_URL must be defined." | |
215 | # else | |
216 | # define wxUSE_URL 0 | |
217 | # endif | |
218 | #endif /* !defined(wxUSE_URL) */ | |
219 | ||
03169422 RL |
220 | /* |
221 | all these tests are for GUI only | |
1e6feb95 VZ |
222 | */ |
223 | #if wxUSE_GUI | |
224 | ||
225 | /* | |
226 | all of the settings tested below must be defined or we'd get an error from | |
227 | preprocessor about invalid integer expression | |
228 | */ | |
229 | ||
230 | #ifndef wxUSE_ACCEL | |
231 | # ifdef wxABORT_ON_CONFIG_ERROR | |
232 | # error "wxUSE_ACCEL must be defined." | |
233 | # else | |
234 | # define wxUSE_ACCEL 0 | |
235 | # endif | |
236 | #endif /* !defined(wxUSE_ACCEL) */ | |
237 | ||
238 | #ifndef wxUSE_BMPBUTTON | |
239 | # ifdef wxABORT_ON_CONFIG_ERROR | |
240 | # error "wxUSE_BMPBUTTON must be defined." | |
241 | # else | |
242 | # define wxUSE_BMPBUTTON 0 | |
243 | # endif | |
244 | #endif /* !defined(wxUSE_BMPBUTTON) */ | |
245 | ||
246 | #ifndef wxUSE_BUTTON | |
247 | # ifdef wxABORT_ON_CONFIG_ERROR | |
248 | # error "wxUSE_BUTTON must be defined." | |
249 | # else | |
250 | # define wxUSE_BUTTON 0 | |
251 | # endif | |
252 | #endif /* !defined(wxUSE_BUTTON) */ | |
253 | ||
254 | #ifndef wxUSE_CALENDARCTRL | |
255 | # ifdef wxABORT_ON_CONFIG_ERROR | |
256 | # error "wxUSE_CALENDARCTRL must be defined." | |
257 | # else | |
258 | # define wxUSE_CALENDARCTRL 0 | |
259 | # endif | |
260 | #endif /* !defined(wxUSE_CALENDARCTRL) */ | |
261 | ||
262 | #ifndef wxUSE_CARET | |
263 | # ifdef wxABORT_ON_CONFIG_ERROR | |
264 | # error "wxUSE_CARET must be defined." | |
265 | # else | |
266 | # define wxUSE_CARET 0 | |
267 | # endif | |
268 | #endif /* !defined(wxUSE_CARET) */ | |
269 | ||
270 | #ifndef wxUSE_CHECKBOX | |
271 | # ifdef wxABORT_ON_CONFIG_ERROR | |
272 | # error "wxUSE_CHECKBOX must be defined." | |
273 | # else | |
274 | # define wxUSE_CHECKBOX 0 | |
275 | # endif | |
276 | #endif /* !defined(wxUSE_CHECKBOX) */ | |
277 | ||
278 | #ifndef wxUSE_CHECKLISTBOX | |
279 | # ifdef wxABORT_ON_CONFIG_ERROR | |
280 | # error "wxUSE_CHECKLISTBOX must be defined." | |
281 | # else | |
282 | # define wxUSE_CHECKLISTBOX 0 | |
283 | # endif | |
284 | #endif /* !defined(wxUSE_CHECKLISTBOX) */ | |
285 | ||
286 | #ifndef wxUSE_CHOICE | |
287 | # ifdef wxABORT_ON_CONFIG_ERROR | |
288 | # error "wxUSE_CHOICE must be defined." | |
289 | # else | |
290 | # define wxUSE_CHOICE 0 | |
291 | # endif | |
292 | #endif /* !defined(wxUSE_CHOICE) */ | |
293 | ||
3379ed37 VZ |
294 | #ifndef wxUSE_CHOICEDLG |
295 | # ifdef wxABORT_ON_CONFIG_ERROR | |
296 | # error "wxUSE_CHOICEDLG must be defined." | |
297 | # else | |
298 | # define wxUSE_CHOICEDLG 0 | |
299 | # endif | |
300 | #endif /* !defined(wxUSE_CHOICEDLG) */ | |
301 | ||
1e6feb95 VZ |
302 | #ifndef wxUSE_CLIPBOARD |
303 | # ifdef wxABORT_ON_CONFIG_ERROR | |
304 | # error "wxUSE_CLIPBOARD must be defined." | |
305 | # else | |
306 | # define wxUSE_CLIPBOARD 0 | |
307 | # endif | |
308 | #endif /* !defined(wxUSE_CLIPBOARD) */ | |
309 | ||
a2c0a9c5 VZ |
310 | #ifndef wxUSE_COLOURDLG |
311 | # ifdef wxABORT_ON_CONFIG_ERROR | |
312 | # error "wxUSE_COLOURDLG must be defined." | |
313 | # else | |
314 | # define wxUSE_COLOURDLG 0 | |
315 | # endif | |
316 | #endif /* !defined(wxUSE_COLOURDLG) */ | |
317 | ||
1e6feb95 VZ |
318 | #ifndef wxUSE_COMBOBOX |
319 | # ifdef wxABORT_ON_CONFIG_ERROR | |
320 | # error "wxUSE_COMBOBOX must be defined." | |
321 | # else | |
322 | # define wxUSE_COMBOBOX 0 | |
323 | # endif | |
324 | #endif /* !defined(wxUSE_COMBOBOX) */ | |
325 | ||
326 | #ifndef wxUSE_DATAOBJ | |
327 | # ifdef wxABORT_ON_CONFIG_ERROR | |
328 | # error "wxUSE_DATAOBJ must be defined." | |
329 | # else | |
330 | # define wxUSE_DATAOBJ 0 | |
331 | # endif | |
332 | #endif /* !defined(wxUSE_DATAOBJ) */ | |
333 | ||
f8ba082e VZ |
334 | #ifndef wxUSE_DISPLAY |
335 | # ifdef wxABORT_ON_CONFIG_ERROR | |
336 | # error "wxUSE_DISPLAY must be defined." | |
337 | # else | |
338 | # define wxUSE_DISPLAY 0 | |
339 | # endif | |
340 | #endif /* !defined(wxUSE_DISPLAY) */ | |
341 | ||
3379ed37 VZ |
342 | #ifndef wxUSE_DOC_VIEW_ARCHITECTURE |
343 | # ifdef wxABORT_ON_CONFIG_ERROR | |
344 | # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined." | |
345 | # else | |
346 | # define wxUSE_DOC_VIEW_ARCHITECTURE 0 | |
347 | # endif | |
348 | #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */ | |
349 | ||
1e6feb95 VZ |
350 | #ifndef wxUSE_FILEDLG |
351 | # ifdef wxABORT_ON_CONFIG_ERROR | |
352 | # error "wxUSE_FILEDLG must be defined." | |
353 | # else | |
354 | # define wxUSE_FILEDLG 0 | |
355 | # endif | |
356 | #endif /* !defined(wxUSE_FILEDLG) */ | |
357 | ||
358 | #ifndef wxUSE_FONTDLG | |
359 | # ifdef wxABORT_ON_CONFIG_ERROR | |
360 | # error "wxUSE_FONTDLG must be defined." | |
361 | # else | |
362 | # define wxUSE_FONTDLG 0 | |
363 | # endif | |
364 | #endif /* !defined(wxUSE_FONTDLG) */ | |
365 | ||
366 | #ifndef wxUSE_FONTMAP | |
367 | # ifdef wxABORT_ON_CONFIG_ERROR | |
368 | # error "wxUSE_FONTMAP must be defined." | |
369 | # else | |
370 | # define wxUSE_FONTMAP 0 | |
371 | # endif | |
372 | #endif /* !defined(wxUSE_FONTMAP) */ | |
373 | ||
374 | #ifndef wxUSE_GAUGE | |
375 | # ifdef wxABORT_ON_CONFIG_ERROR | |
376 | # error "wxUSE_GAUGE must be defined." | |
377 | # else | |
378 | # define wxUSE_GAUGE 0 | |
379 | # endif | |
380 | #endif /* !defined(wxUSE_GAUGE) */ | |
381 | ||
382 | #ifndef wxUSE_GRID | |
383 | # ifdef wxABORT_ON_CONFIG_ERROR | |
384 | # error "wxUSE_GRID must be defined." | |
385 | # else | |
386 | # define wxUSE_GRID 0 | |
387 | # endif | |
388 | #endif /* !defined(wxUSE_GRID) */ | |
389 | ||
3379ed37 VZ |
390 | #ifndef wxUSE_HELP |
391 | # ifdef wxABORT_ON_CONFIG_ERROR | |
392 | # error "wxUSE_HELP must be defined." | |
393 | # else | |
394 | # define wxUSE_HELP 0 | |
395 | # endif | |
396 | #endif /* !defined(wxUSE_HELP) */ | |
397 | ||
05dcbb8e VZ |
398 | #ifndef wxUSE_HTML |
399 | # ifdef wxABORT_ON_CONFIG_ERROR | |
400 | # error "wxUSE_HTML must be defined." | |
401 | # else | |
402 | # define wxUSE_HTML 0 | |
403 | # endif | |
404 | #endif /* !defined(wxUSE_HTML) */ | |
405 | ||
658974ae VS |
406 | #ifndef wxUSE_ICO_CUR |
407 | # ifdef wxABORT_ON_CONFIG_ERROR | |
408 | # error "wxUSE_ICO_CUR must be defined." | |
409 | # else | |
410 | # define wxUSE_ICO_CUR 0 | |
411 | # endif | |
412 | #endif /* !defined(wxUSE_ICO_CUR) */ | |
413 | ||
1663afc0 VS |
414 | #ifndef wxUSE_IFF |
415 | # ifdef wxABORT_ON_CONFIG_ERROR | |
416 | # error "wxUSE_IFF must be defined." | |
417 | # else | |
418 | # define wxUSE_IFF 0 | |
419 | # endif | |
420 | #endif /* !defined(wxUSE_IFF) */ | |
421 | ||
1e6feb95 VZ |
422 | #ifndef wxUSE_IMAGLIST |
423 | # ifdef wxABORT_ON_CONFIG_ERROR | |
424 | # error "wxUSE_IMAGLIST must be defined." | |
425 | # else | |
426 | # define wxUSE_IMAGLIST 0 | |
427 | # endif | |
428 | #endif /* !defined(wxUSE_IMAGLIST) */ | |
429 | ||
2131b89d VZ |
430 | #ifndef wxUSE_JOYSTICK |
431 | # ifdef wxABORT_ON_CONFIG_ERROR | |
432 | # error "wxUSE_JOYSTICK must be defined." | |
433 | # else | |
434 | # define wxUSE_JOYSTICK 0 | |
435 | # endif | |
436 | #endif /* !defined(wxUSE_JOYSTICK) */ | |
437 | ||
5b5e4f32 VZ |
438 | #ifndef wxUSE_LISTBOOK |
439 | # ifdef wxABORT_ON_CONFIG_ERROR | |
440 | # error "wxUSE_LISTBOOK must be defined." | |
441 | # else | |
442 | # define wxUSE_LISTBOOK 0 | |
443 | # endif | |
444 | #endif /* !defined(wxUSE_LISTBOOK) */ | |
445 | ||
1e6feb95 VZ |
446 | #ifndef wxUSE_LISTBOX |
447 | # ifdef wxABORT_ON_CONFIG_ERROR | |
448 | # error "wxUSE_LISTBOX must be defined." | |
449 | # else | |
450 | # define wxUSE_LISTBOX 0 | |
451 | # endif | |
452 | #endif /* !defined(wxUSE_LISTBOX) */ | |
453 | ||
454 | #ifndef wxUSE_LISTCTRL | |
455 | # ifdef wxABORT_ON_CONFIG_ERROR | |
456 | # error "wxUSE_LISTCTRL must be defined." | |
457 | # else | |
458 | # define wxUSE_LISTCTRL 0 | |
459 | # endif | |
460 | #endif /* !defined(wxUSE_LISTCTRL) */ | |
461 | ||
3379ed37 VZ |
462 | #ifndef wxUSE_LOGGUI |
463 | # ifdef wxABORT_ON_CONFIG_ERROR | |
464 | # error "wxUSE_LOGGUI must be defined." | |
465 | # else | |
466 | # define wxUSE_LOGGUI 0 | |
467 | # endif | |
468 | #endif /* !defined(wxUSE_LOGGUI) */ | |
469 | ||
470 | #ifndef wxUSE_LOGWINDOW | |
471 | # ifdef wxABORT_ON_CONFIG_ERROR | |
472 | # error "wxUSE_LOGWINDOW must be defined." | |
473 | # else | |
474 | # define wxUSE_LOGWINDOW 0 | |
475 | # endif | |
476 | #endif /* !defined(wxUSE_LOGWINDOW) */ | |
e421922f | 477 | |
3e6e2754 JS |
478 | #ifndef wxUSE_LOG_DIALOG |
479 | # ifdef wxABORT_ON_CONFIG_ERROR | |
480 | # error "wxUSE_LOG_DIALOG must be defined." | |
481 | # else | |
482 | # define wxUSE_LOG_DIALOG 0 | |
483 | # endif | |
71908213 | 484 | #endif /* !defined(wxUSE_LOG_DIALOG) */ |
3e6e2754 | 485 | |
1e6feb95 VZ |
486 | #ifndef wxUSE_MDI_ARCHITECTURE |
487 | # ifdef wxABORT_ON_CONFIG_ERROR | |
488 | # error "wxUSE_MDI_ARCHITECTURE must be defined." | |
489 | # else | |
490 | # define wxUSE_MDI_ARCHITECTURE 0 | |
491 | # endif | |
492 | #endif /* !defined(wxUSE_MDI_ARCHITECTURE) */ | |
493 | ||
494 | #ifndef wxUSE_MENUS | |
495 | # ifdef wxABORT_ON_CONFIG_ERROR | |
496 | # error "wxUSE_MENUS must be defined." | |
497 | # else | |
498 | # define wxUSE_MENUS 0 | |
499 | # endif | |
500 | #endif /* !defined(wxUSE_MENUS) */ | |
501 | ||
3379ed37 VZ |
502 | #ifndef wxUSE_MSGDLG |
503 | # ifdef wxABORT_ON_CONFIG_ERROR | |
504 | # error "wxUSE_MSGDLG must be defined." | |
505 | # else | |
506 | # define wxUSE_MSGDLG 0 | |
507 | # endif | |
508 | #endif /* !defined(wxUSE_MSGDLG) */ | |
509 | ||
1e6feb95 VZ |
510 | #ifndef wxUSE_NOTEBOOK |
511 | # ifdef wxABORT_ON_CONFIG_ERROR | |
512 | # error "wxUSE_NOTEBOOK must be defined." | |
513 | # else | |
514 | # define wxUSE_NOTEBOOK 0 | |
515 | # endif | |
516 | #endif /* !defined(wxUSE_NOTEBOOK) */ | |
517 | ||
d275c7eb VZ |
518 | #ifndef wxUSE_PALETTE |
519 | # ifdef wxABORT_ON_CONFIG_ERROR | |
520 | # error "wxUSE_PALETTE must be defined." | |
521 | # else | |
522 | # define wxUSE_PALETTE 0 | |
523 | # endif | |
524 | #endif /* !defined(wxUSE_PALETTE) */ | |
525 | ||
1e6feb95 VZ |
526 | #ifndef wxUSE_POPUPWIN |
527 | # ifdef wxABORT_ON_CONFIG_ERROR | |
528 | # error "wxUSE_POPUPWIN must be defined." | |
529 | # else | |
530 | # define wxUSE_POPUPWIN 0 | |
531 | # endif | |
532 | #endif /* !defined(wxUSE_POPUPWIN) */ | |
533 | ||
3379ed37 VZ |
534 | #ifndef wxUSE_PRINTING_ARCHITECTURE |
535 | # ifdef wxABORT_ON_CONFIG_ERROR | |
536 | # error "wxUSE_PRINTING_ARCHITECTURE must be defined." | |
537 | # else | |
538 | # define wxUSE_PRINTING_ARCHITECTURE 0 | |
539 | # endif | |
540 | #endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */ | |
541 | ||
1e6feb95 VZ |
542 | #ifndef wxUSE_RADIOBOX |
543 | # ifdef wxABORT_ON_CONFIG_ERROR | |
544 | # error "wxUSE_RADIOBOX must be defined." | |
545 | # else | |
546 | # define wxUSE_RADIOBOX 0 | |
547 | # endif | |
548 | #endif /* !defined(wxUSE_RADIOBOX) */ | |
549 | ||
550 | #ifndef wxUSE_RADIOBTN | |
551 | # ifdef wxABORT_ON_CONFIG_ERROR | |
552 | # error "wxUSE_RADIOBTN must be defined." | |
553 | # else | |
554 | # define wxUSE_RADIOBTN 0 | |
555 | # endif | |
556 | #endif /* !defined(wxUSE_RADIOBTN) */ | |
557 | ||
558 | #ifndef wxUSE_SASH | |
559 | # ifdef wxABORT_ON_CONFIG_ERROR | |
560 | # error "wxUSE_SASH must be defined." | |
561 | # else | |
562 | # define wxUSE_SASH 0 | |
563 | # endif | |
564 | #endif /* !defined(wxUSE_SASH) */ | |
565 | ||
566 | #ifndef wxUSE_SCROLLBAR | |
567 | # ifdef wxABORT_ON_CONFIG_ERROR | |
568 | # error "wxUSE_SCROLLBAR must be defined." | |
569 | # else | |
570 | # define wxUSE_SCROLLBAR 0 | |
571 | # endif | |
572 | #endif /* !defined(wxUSE_SCROLLBAR) */ | |
573 | ||
574 | #ifndef wxUSE_SLIDER | |
575 | # ifdef wxABORT_ON_CONFIG_ERROR | |
576 | # error "wxUSE_SLIDER must be defined." | |
577 | # else | |
578 | # define wxUSE_SLIDER 0 | |
579 | # endif | |
580 | #endif /* !defined(wxUSE_SLIDER) */ | |
581 | ||
582 | #ifndef wxUSE_SPINBTN | |
583 | # ifdef wxABORT_ON_CONFIG_ERROR | |
584 | # error "wxUSE_SPINBTN must be defined." | |
585 | # else | |
586 | # define wxUSE_SPINBTN 0 | |
587 | # endif | |
588 | #endif /* !defined(wxUSE_SPINBTN) */ | |
589 | ||
590 | #ifndef wxUSE_SPINCTRL | |
591 | # ifdef wxABORT_ON_CONFIG_ERROR | |
592 | # error "wxUSE_SPINCTRL must be defined." | |
593 | # else | |
594 | # define wxUSE_SPINCTRL 0 | |
595 | # endif | |
596 | #endif /* !defined(wxUSE_SPINCTRL) */ | |
597 | ||
2654a046 MB |
598 | #ifndef wxUSE_SPLASH |
599 | # ifdef wxABORT_ON_CONFIG_ERROR | |
600 | # error "wxUSE_SPLASH must be defined." | |
601 | # else | |
602 | # define wxUSE_SPLASH 0 | |
603 | # endif | |
604 | #endif /* !defined(wxUSE_SPLASH) */ | |
605 | ||
1e6feb95 VZ |
606 | #ifndef wxUSE_SPLITTER |
607 | # ifdef wxABORT_ON_CONFIG_ERROR | |
608 | # error "wxUSE_SPLITTER must be defined." | |
609 | # else | |
610 | # define wxUSE_SPLITTER 0 | |
611 | # endif | |
612 | #endif /* !defined(wxUSE_SPLITTER) */ | |
613 | ||
614 | #ifndef wxUSE_STATBMP | |
615 | # ifdef wxABORT_ON_CONFIG_ERROR | |
616 | # error "wxUSE_STATBMP must be defined." | |
617 | # else | |
618 | # define wxUSE_STATBMP 0 | |
619 | # endif | |
620 | #endif /* !defined(wxUSE_STATBMP) */ | |
621 | ||
622 | #ifndef wxUSE_STATBOX | |
623 | # ifdef wxABORT_ON_CONFIG_ERROR | |
624 | # error "wxUSE_STATBOX must be defined." | |
625 | # else | |
626 | # define wxUSE_STATBOX 0 | |
627 | # endif | |
628 | #endif /* !defined(wxUSE_STATBOX) */ | |
629 | ||
630 | #ifndef wxUSE_STATLINE | |
631 | # ifdef wxABORT_ON_CONFIG_ERROR | |
632 | # error "wxUSE_STATLINE must be defined." | |
633 | # else | |
634 | # define wxUSE_STATLINE 0 | |
635 | # endif | |
636 | #endif /* !defined(wxUSE_STATLINE) */ | |
637 | ||
3379ed37 VZ |
638 | #ifndef wxUSE_STATTEXT |
639 | # ifdef wxABORT_ON_CONFIG_ERROR | |
640 | # error "wxUSE_STATTEXT must be defined." | |
641 | # else | |
642 | # define wxUSE_STATTEXT 0 | |
643 | # endif | |
644 | #endif /* !defined(wxUSE_STATTEXT) */ | |
645 | ||
1e6feb95 VZ |
646 | #ifndef wxUSE_STATUSBAR |
647 | # ifdef wxABORT_ON_CONFIG_ERROR | |
648 | # error "wxUSE_STATUSBAR must be defined." | |
649 | # else | |
650 | # define wxUSE_STATUSBAR 0 | |
651 | # endif | |
652 | #endif /* !defined(wxUSE_STATUSBAR) */ | |
653 | ||
1e6feb95 VZ |
654 | #ifndef wxUSE_TAB_DIALOG |
655 | # ifdef wxABORT_ON_CONFIG_ERROR | |
656 | # error "wxUSE_TAB_DIALOG must be defined." | |
657 | # else | |
658 | # define wxUSE_TAB_DIALOG 0 | |
659 | # endif | |
660 | #endif /* !defined(wxUSE_TAB_DIALOG) */ | |
661 | ||
662 | #ifndef wxUSE_TEXTCTRL | |
663 | # ifdef wxABORT_ON_CONFIG_ERROR | |
664 | # error "wxUSE_TEXTCTRL must be defined." | |
665 | # else | |
666 | # define wxUSE_TEXTCTRL 0 | |
667 | # endif | |
668 | #endif /* !defined(wxUSE_TEXTCTRL) */ | |
669 | ||
f38bcae5 VZ |
670 | #ifndef wxUSE_TIPWINDOW |
671 | # ifdef wxABORT_ON_CONFIG_ERROR | |
672 | # error "wxUSE_TIPWINDOW must be defined." | |
673 | # else | |
674 | # define wxUSE_TIPWINDOW 0 | |
675 | # endif | |
676 | #endif /* !defined(wxUSE_TIPWINDOW) */ | |
677 | ||
1e6feb95 VZ |
678 | #ifndef wxUSE_TOOLBAR |
679 | # ifdef wxABORT_ON_CONFIG_ERROR | |
680 | # error "wxUSE_TOOLBAR must be defined." | |
681 | # else | |
682 | # define wxUSE_TOOLBAR 0 | |
683 | # endif | |
684 | #endif /* !defined(wxUSE_TOOLBAR) */ | |
685 | ||
686 | #ifndef wxUSE_TOOLTIPS | |
687 | # ifdef wxABORT_ON_CONFIG_ERROR | |
688 | # error "wxUSE_TOOLTIPS must be defined." | |
689 | # else | |
690 | # define wxUSE_TOOLTIPS 0 | |
691 | # endif | |
692 | #endif /* !defined(wxUSE_TOOLTIPS) */ | |
693 | ||
694 | #ifndef wxUSE_TREECTRL | |
695 | # ifdef wxABORT_ON_CONFIG_ERROR | |
696 | # error "wxUSE_TREECTRL must be defined." | |
697 | # else | |
698 | # define wxUSE_TREECTRL 0 | |
699 | # endif | |
700 | #endif /* !defined(wxUSE_TREECTRL) */ | |
701 | ||
f8ba082e | 702 | #ifndef wxUSE_VALIDATORS |
12491c1f | 703 | # ifdef wxABORT_ON_CONFIG_ERROR |
f8ba082e | 704 | # error "wxUSE_VALIDATORS must be defined." |
12491c1f | 705 | # else |
f8ba082e | 706 | # define wxUSE_VALIDATORS 0 |
12491c1f | 707 | # endif |
f8ba082e | 708 | #endif /* !defined(wxUSE_VALIDATORS) */ |
12491c1f | 709 | |
3379ed37 VZ |
710 | #ifndef wxUSE_WXHTML_HELP |
711 | # ifdef wxABORT_ON_CONFIG_ERROR | |
712 | # error "wxUSE_WXHTML_HELP must be defined." | |
713 | # else | |
714 | # define wxUSE_WXHTML_HELP 0 | |
715 | # endif | |
716 | #endif /* !defined(wxUSE_WXHTML_HELP) */ | |
717 | ||
a5d46b73 | 718 | #endif /* wxUSE_GUI */ |
c4d596ea | 719 | |
1e6feb95 VZ |
720 | /* |
721 | check consistency of the settings | |
722 | */ | |
a5d46b73 VZ |
723 | |
724 | #if wxUSE_PROTOCOL_FILE || wxUSE_PROTOCOL_FTP || wxUSE_PROTOCOL_HTTP | |
725 | # if !wxUSE_PROTOCOL | |
726 | # ifdef wxABORT_ON_CONFIG_ERROR | |
727 | # error "wxUSE_PROTOCOL_XXX requires wxUSE_PROTOCOL" | |
728 | # else | |
729 | # undef wxUSE_PROTOCOL | |
730 | # define wxUSE_PROTOCOL 1 | |
731 | # endif | |
732 | # endif | |
733 | #endif /* wxUSE_PROTOCOL_XXX */ | |
734 | ||
735 | #if wxUSE_URL | |
736 | # if !wxUSE_PROTOCOL | |
737 | # ifdef wxABORT_ON_CONFIG_ERROR | |
738 | # error "wxUSE_URL requires wxUSE_PROTOCOL" | |
739 | # else | |
740 | # undef wxUSE_PROTOCOL | |
741 | # define wxUSE_PROTOCOL 1 | |
742 | # endif | |
743 | # endif | |
744 | #endif /* wxUSE_URL */ | |
745 | ||
746 | #if wxUSE_PROTOCOL | |
747 | # if !wxUSE_SOCKETS | |
748 | # if wxUSE_PROTOCOL_HTTP || wxUSE_PROTOCOL_FTP | |
749 | # ifdef wxABORT_ON_CONFIG_ERROR | |
750 | # error "wxUSE_PROTOCOL_FTP/HTTP requires wxUSE_SOCKETS" | |
751 | # else | |
752 | # undef wxUSE_SOCKETS | |
753 | # define wxUSE_SOCKETS 1 | |
754 | # endif | |
755 | # endif | |
756 | # endif | |
757 | ||
758 | # if !wxUSE_STREAMS | |
759 | # ifdef wxABORT_ON_CONFIG_ERROR | |
760 | # error "wxUSE_PROTOCOL requires wxUSE_STREAMS" | |
761 | # else | |
762 | # undef wxUSE_STREAMS | |
763 | # define wxUSE_STREAMS 1 | |
764 | # endif | |
765 | # endif | |
766 | #endif /* wxUSE_PROTOCOL */ | |
767 | ||
c7f3eecc VZ |
768 | /* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */ |
769 | #if wxUSE_HTML | |
770 | # if !wxUSE_FILESYSTEM | |
771 | # ifdef wxABORT_ON_CONFIG_ERROR | |
772 | # error "wxHTML requires wxFileSystem" | |
773 | # else | |
774 | # undef wxUSE_FILESYSTEM | |
775 | # define wxUSE_FILESYSTEM 1 | |
776 | # endif | |
777 | # endif | |
778 | #endif /* wxUSE_HTML */ | |
779 | ||
780 | #if wxUSE_FILESYSTEM | |
781 | # if !wxUSE_STREAMS | |
782 | # ifdef wxABORT_ON_CONFIG_ERROR | |
783 | # error "wxUSE_FILESYSTEM requires wxUSE_STREAMS" | |
784 | # else | |
785 | # undef wxUSE_STREAMS | |
786 | # define wxUSE_STREAMS 1 | |
787 | # endif | |
788 | # endif | |
789 | #endif /* wxUSE_FILESYSTEM */ | |
790 | ||
ce73e654 VS |
791 | #if wxUSE_FS_INET |
792 | # if !wxUSE_PROTOCOL | |
793 | # ifdef wxABORT_ON_CONFIG_ERROR | |
794 | # error "wxUSE_FS_INET requires wxUSE_PROTOCOL" | |
795 | # else | |
796 | # undef wxUSE_PROTOCOL | |
797 | # define wxUSE_PROTOCOL 1 | |
798 | # endif | |
799 | # endif | |
800 | #endif /* wxUSE_FS_INET */ | |
801 | ||
c7f3eecc | 802 | #if wxUSE_STOPWATCH || wxUSE_DATETIME |
a5d46b73 VZ |
803 | # if !wxUSE_LONGLONG |
804 | # ifdef wxABORT_ON_CONFIG_ERROR | |
c7f3eecc | 805 | # error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG" |
a5d46b73 VZ |
806 | # else |
807 | # undef wxUSE_LONGLONG | |
808 | # define wxUSE_LONGLONG 1 | |
809 | # endif | |
810 | # endif | |
811 | #endif /* wxUSE_STOPWATCH */ | |
812 | ||
813 | #if wxUSE_MIMETYPE && !wxUSE_TEXTFILE | |
814 | # ifdef wxABORT_ON_CONFIG_ERROR | |
815 | # error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE" | |
816 | # else | |
817 | # undef wxUSE_TEXTFILE | |
818 | # define wxUSE_TEXTFILE 1 | |
819 | # endif | |
820 | #endif /* wxUSE_MIMETYPE */ | |
821 | ||
822 | #if wxUSE_TEXTFILE && !wxUSE_TEXTBUFFER | |
823 | # ifdef wxABORT_ON_CONFIG_ERROR | |
824 | # error "wxUSE_TEXTFILE requires wxUSE_TEXTBUFFER" | |
825 | # else | |
826 | # undef wxUSE_TEXTBUFFER | |
827 | # define wxUSE_TEXTBUFFER 1 | |
828 | # endif | |
829 | #endif /* wxUSE_TEXTFILE */ | |
830 | ||
831 | #if wxUSE_TEXTFILE && !wxUSE_FILE | |
832 | # ifdef wxABORT_ON_CONFIG_ERROR | |
833 | # error "wxUSE_TEXTFILE requires wxUSE_FILE" | |
834 | # else | |
835 | # undef wxUSE_FILE | |
836 | # define wxUSE_FILE 1 | |
837 | # endif | |
838 | #endif /* wxUSE_TEXTFILE */ | |
839 | ||
840 | #if wxUSE_UNICODE_MSLU && !wxUSE_UNICODE | |
841 | # ifdef wxABORT_ON_CONFIG_ERROR | |
842 | # error "wxUSE_UNICODE_MSLU requires wxUSE_UNICODE" | |
843 | # else | |
844 | # undef wxUSE_UNICODE | |
845 | # define wxUSE_UNICODE 1 | |
846 | # endif | |
847 | #endif /* wxUSE_UNICODE_MSLU */ | |
848 | ||
4ccf704a VZ |
849 | #if wxUSE_ODBC && wxUSE_UNICODE |
850 | # ifdef wxABORT_ON_CONFIG_ERROR | |
851 | /* (ODBC classes aren't Unicode-compatible yet) */ | |
852 | # error "wxUSE_ODBC can't be used with wxUSE_UNICODE" | |
853 | # else | |
854 | # undef wxUSE_ODBC | |
855 | # define wxUSE_ODBC 0 | |
856 | # endif | |
857 | #endif /* wxUSE_ODBC */ | |
858 | ||
7f799744 VS |
859 | #if wxUSE_XML && !wxUSE_WCHAR_T |
860 | # ifdef wxABORT_ON_CONFIG_ERROR | |
861 | # error "wxUSE_XML requires wxUSE_WCHAR_T" | |
862 | # else | |
863 | # undef wxUSE_XML | |
864 | # define wxUSE_XML 0 | |
865 | # endif | |
866 | #endif /* wxUSE_UNICODE_MSLU */ | |
867 | ||
1948bb32 VS |
868 | #if !wxUSE_DYNLIB_CLASS |
869 | # if wxUSE_DYNAMIC_LOADER | |
870 | # ifdef wxABORT_ON_CONFIG_ERROR | |
871 | # error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS." | |
872 | # else | |
873 | # define wxUSE_DYNLIB_CLASS 1 | |
874 | # endif | |
875 | # endif | |
876 | #endif /* wxUSE_DYNLIB_CLASS */ | |
877 | ||
a5d46b73 VZ |
878 | /* the rest of the tests is for the GUI settings only */ |
879 | #if wxUSE_GUI | |
880 | ||
1e6feb95 VZ |
881 | #if wxUSE_BUTTON || \ |
882 | wxUSE_CALENDARCTRL || \ | |
883 | wxUSE_CARET || \ | |
884 | wxUSE_COMBOBOX || \ | |
885 | wxUSE_BMPBUTTON || \ | |
886 | wxUSE_CHECKBOX || \ | |
887 | wxUSE_CHECKLISTBOX || \ | |
888 | wxUSE_CHOICE || \ | |
889 | wxUSE_GAUGE || \ | |
890 | wxUSE_GRID || \ | |
1e6feb95 VZ |
891 | wxUSE_LISTBOX || \ |
892 | wxUSE_LISTCTRL || \ | |
893 | wxUSE_NOTEBOOK || \ | |
894 | wxUSE_RADIOBOX || \ | |
895 | wxUSE_RADIOBTN || \ | |
896 | wxUSE_SCROLLBAR || \ | |
897 | wxUSE_SLIDER || \ | |
898 | wxUSE_SPINBTN || \ | |
899 | wxUSE_SPINCTRL || \ | |
900 | wxUSE_STATBMP || \ | |
901 | wxUSE_STATBOX || \ | |
902 | wxUSE_STATLINE || \ | |
3379ed37 | 903 | wxUSE_STATTEXT || \ |
1e6feb95 VZ |
904 | wxUSE_STATUSBAR || \ |
905 | wxUSE_TEXTCTRL || \ | |
906 | wxUSE_TOOLBAR || \ | |
907 | wxUSE_TREECTRL | |
908 | # if !wxUSE_CONTROLS | |
909 | # ifdef wxABORT_ON_CONFIG_ERROR | |
910 | # error "wxUSE_CONTROLS unset but some controls used" | |
911 | # else | |
912 | # undef wxUSE_CONTROLS | |
913 | # define wxUSE_CONTROLS 1 | |
914 | # endif | |
915 | # endif | |
916 | #endif /* controls */ | |
917 | ||
5b5e4f32 | 918 | #if wxUSE_NOTEBOOK || wxUSE_LISTBOOK |
15aad3b9 VZ |
919 | # if defined(wxUSE_BOOKCTRL) && !wxUSE_BOOKCTRL |
920 | # ifdef wxABORT_ON_CONFIG_ERROR | |
921 | # error "wxUSE_BOOKCTRL must be set." | |
922 | # else | |
923 | # undef wxUSE_BOOKCTRL | |
924 | # endif | |
925 | # endif | |
926 | ||
927 | # ifndef wxUSE_BOOKCTRL | |
928 | # define wxUSE_BOOKCTRL 1 | |
929 | # endif | |
930 | #endif /* wxUSE_NOTEBOOK */ | |
931 | ||
5b5e4f32 VZ |
932 | #if wxUSE_LISTBOOK |
933 | # if !wxUSE_LISTCTRL | |
934 | # ifdef wxABORT_ON_CONFIG_ERROR | |
935 | # error "wxListbook requires wxListCtrl" | |
936 | # else | |
937 | # undef wxUSE_LISTCTRL | |
938 | # define wxUSE_LISTCTRL 1 | |
939 | # endif | |
940 | # endif | |
941 | #endif /* wxUSE_LISTBOOK */ | |
942 | ||
3379ed37 VZ |
943 | /* wxUniv-specific dependencies */ |
944 | #if defined(__WXUNIVERSAL__) | |
945 | # if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN | |
946 | # ifdef wxABORT_ON_CONFIG_ERROR | |
947 | # error "wxUSE_POPUPWIN must be defined to use comboboxes/menus" | |
948 | # else | |
949 | # undef wxUSE_POPUPWIN | |
950 | # define wxUSE_POPUPWIN 1 | |
951 | # endif | |
952 | # endif | |
953 | ||
954 | # if wxUSE_COMBOBOX | |
955 | # if !wxUSE_LISTBOX | |
956 | # ifdef wxABORT_ON_CONFIG_ERROR | |
957 | # error "wxComboBox requires wxListBox in wxUniversal" | |
958 | # else | |
959 | # undef wxUSE_LISTBOX | |
960 | # define wxUSE_LISTBOX 1 | |
961 | # endif | |
962 | # endif | |
963 | # endif /* wxUSE_COMBOBOX */ | |
964 | ||
965 | # if wxUSE_RADIOBTN | |
966 | # if !wxUSE_CHECKBOX | |
967 | # ifdef wxABORT_ON_CONFIG_ERROR | |
968 | # error "wxUSE_RADIOBTN requires wxUSE_CHECKBOX in wxUniversal" | |
969 | # else | |
970 | # undef wxUSE_CHECKBOX | |
971 | # define wxUSE_CHECKBOX 1 | |
972 | # endif | |
973 | # endif | |
974 | # endif /* wxUSE_RADIOBTN */ | |
975 | ||
976 | # if wxUSE_TEXTCTRL | |
977 | # if !wxUSE_CARET | |
978 | # ifdef wxABORT_ON_CONFIG_ERROR | |
979 | # error "wxTextCtrl requires wxCaret in wxUniversal" | |
980 | # else | |
981 | # undef wxUSE_CARET | |
982 | # define wxUSE_CARET 1 | |
983 | # endif | |
984 | # endif /* wxUSE_CARET */ | |
985 | ||
986 | # if !wxUSE_SCROLLBAR | |
987 | # ifdef wxABORT_ON_CONFIG_ERROR | |
988 | # error "wxTextCtrl requires wxScrollBar in wxUniversal" | |
989 | # else | |
990 | # undef wxUSE_SCROLLBAR | |
991 | # define wxUSE_SCROLLBAR 1 | |
992 | # endif | |
993 | # endif /* wxUSE_SCROLLBAR */ | |
994 | # endif /* wxUSE_TEXTCTRL */ | |
995 | #endif /* __WXUNIVERSAL__ */ | |
996 | ||
997 | /* wxGTK-specific dependencies */ | |
2131b89d VZ |
998 | #ifdef __WXGTK__ |
999 | # ifndef __WXUNIVERSAL__ | |
1000 | # if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS | |
1001 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1002 | # error "MDI requires wxUSE_MENUS in wxGTK" | |
1003 | # else | |
1004 | # undef wxUSE_MENUS | |
1005 | # define wxUSE_MENUS 1 | |
1006 | # endif | |
1007 | # endif | |
1008 | # endif /* !__WXUNIVERSAL__ */ | |
1009 | ||
1010 | # if wxUSE_JOYSTICK | |
1011 | # if !wxUSE_THREADS | |
1012 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1013 | # error "wxJoystick requires threads in wxGTK" | |
1014 | # else | |
1015 | # undef wxUSE_JOYSTICK | |
1016 | # define wxUSE_JOYSTICK 0 | |
1017 | # endif | |
3379ed37 VZ |
1018 | # endif |
1019 | # endif | |
1020 | #endif /* wxGTK && !wxUniv */ | |
1021 | ||
03169422 RL |
1022 | /* wxMSW-specific dependencies */ |
1023 | #ifdef __WXMSW__ | |
1024 | # ifndef wxUSE_UNICODE_MSLU | |
1025 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1026 | # error "wxUSE_UNICODE_MSLU must be defined." | |
1027 | # else | |
1028 | # define wxUSE_UNICODE_MSLU 0 | |
1029 | # endif | |
1030 | # endif /* wxUSE_UNICODE_MSLU */ | |
9c7f7573 VS |
1031 | # ifndef wxUSE_UXTHEME |
1032 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1033 | # error "wxUSE_UXTHEME must be defined." | |
1034 | # else | |
1035 | # define wxUSE_UXTHEME 0 | |
1036 | # endif | |
1037 | # endif /* wxUSE_UXTHEME */ | |
1038 | # ifndef wxUSE_UXTHEME_AUTO | |
1039 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1040 | # error "wxUSE_UXTHEME_AUTO must be defined." | |
1041 | # else | |
1042 | # define wxUSE_UXTHEME_AUTO 0 | |
1043 | # endif | |
1044 | # endif /* wxUSE_UXTHEME_AUTO */ | |
03169422 RL |
1045 | # ifndef wxUSE_MS_HTML_HELP |
1046 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1047 | # error "wxUSE_MS_HTML_HELP must be defined." | |
1048 | # else | |
1049 | # define wxUSE_MS_HTML_HELP 0 | |
1050 | # endif | |
1051 | # endif /* !defined(wxUSE_MS_HTML_HELP) */ | |
1052 | # ifndef wxUSE_DIALUP_MANAGER | |
1053 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1054 | # error "wxUSE_DIALUP_MANAGER must be defined." | |
1055 | # else | |
1056 | # define wxUSE_DIALUP_MANAGER 0 | |
1057 | # endif | |
1058 | # endif /* !defined(wxUSE_DIALUP_MANAGER) */ | |
1059 | ||
19f478fd | 1060 | # if !wxUSE_DYNAMIC_LOADER |
03169422 RL |
1061 | # if wxUSE_MS_HTML_HELP |
1062 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1063 | # error "wxUSE_MS_HTML_HELP requires wxUSE_DYNAMIC_LOADER." | |
1064 | # else | |
1065 | # define wxUSE_DYNAMIC_LOADER 1 | |
1066 | # endif | |
1067 | # endif | |
1068 | # if wxUSE_DIALUP_MANAGER | |
1069 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1070 | # error "wxUSE_DIALUP_MANAGER requires wxUSE_DYNAMIC_LOADER." | |
1071 | # else | |
1072 | # define wxUSE_DYNAMIC_LOADER 1 | |
1073 | # endif | |
1074 | # endif | |
1075 | # endif /* wxUSE_DYNAMIC_LOADER */ | |
1076 | #endif /* wxMSW */ | |
1077 | ||
c4e41ce3 SC |
1078 | /* wxMAC-specific dependencies */ |
1079 | #ifdef __WXMAC__ | |
1080 | # if wxUSE_UNICODE | |
1081 | # if !TARGET_CARBON | |
1082 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1083 | # error "wxUSE_UNICODE is only supported for Carbon Targets." | |
1084 | # else | |
1085 | # define wxUSE_UNICODE 0 | |
1086 | # endif | |
1087 | # endif | |
1088 | # endif | |
1089 | #endif /* wxMAC */ | |
9806a47c JS |
1090 | /* wxMotif-specific dependencies */ |
1091 | #if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG | |
1092 | # undef wxUSE_TAB_DIALOG | |
1093 | # define wxUSE_TAB_DIALOG 1 | |
1094 | #endif | |
9806a47c | 1095 | |
bfc4a1c1 VS |
1096 | /* wxMGL-specific dependencies */ |
1097 | #ifdef __WXMGL__ | |
1098 | # if !wxUSE_PALETTE | |
1099 | # error "wxMGL requires wxUSE_PALETTE=1" | |
1100 | # endif | |
1101 | #endif /* wxMGL */ | |
1102 | ||
b92203a8 VZ |
1103 | // Hopefully we can emulate these dialogs in due course |
1104 | #if wxUSE_SMARTPHONE | |
1105 | # ifdef wxUSE_COLOURDLG | |
1106 | # undef wxUSE_COLOURDLG | |
1107 | # define wxUSE_COLOURDLG 0 | |
1108 | # endif | |
1109 | #endif /* wxUSE_SMARTPHONE */ | |
1110 | ||
1111 | ||
3379ed37 VZ |
1112 | /* generic controls dependencies */ |
1113 | #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) | |
1114 | # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG | |
1115 | /* all common controls are needed by these dialogs */ | |
1116 | # if !defined(wxUSE_CHOICE) || \ | |
1117 | !defined(wxUSE_TEXTCTRL) || \ | |
1118 | !defined(wxUSE_BUTTON) || \ | |
1119 | !defined(wxUSE_CHECKBOX) || \ | |
1120 | !defined(wxUSE_STATTEXT) | |
1121 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1122 | # error "These common controls are needed by common dialogs" | |
1123 | # else | |
1124 | # undef wxUSE_CHOICE | |
1125 | # define wxUSE_CHOICE 1 | |
1126 | # undef wxUSE_TEXTCTRL | |
1127 | # define wxUSE_TEXTCTRL 1 | |
1128 | # undef wxUSE_BUTTON | |
1129 | # define wxUSE_BUTTON 1 | |
1130 | # undef wxUSE_CHECKBOX | |
1131 | # define wxUSE_CHECKBOX 1 | |
1132 | # undef wxUSE_STATTEXT | |
1133 | # define wxUSE_STATTEXT 1 | |
1134 | # endif | |
1135 | # endif | |
1136 | # endif | |
1137 | #endif /* !wxMSW || wxUniv */ | |
1138 | ||
1139 | /* common dependencies */ | |
1e6feb95 VZ |
1140 | #if wxUSE_CALENDARCTRL |
1141 | # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX) | |
1142 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1143 | # error "wxCalendarCtrl requires wxSpinButton and wxComboBox" | |
1144 | # else | |
1145 | # undef wxUSE_SPINBTN | |
1146 | # undef wxUSE_COMBOBOX | |
1147 | # define wxUSE_SPINBTN 1 | |
1148 | # define wxUSE_COMBOBOX 1 | |
1149 | # endif | |
1150 | # endif | |
e2b87f38 VZ |
1151 | |
1152 | # if !wxUSE_DATETIME | |
1153 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1154 | # error "wxCalendarCtrl requires wxUSE_DATETIME" | |
1155 | # else | |
1156 | # undef wxUSE_DATETIME | |
1157 | # define wxUSE_DATETIME 1 | |
1158 | # endif | |
1159 | # endif | |
1e6feb95 VZ |
1160 | #endif /* wxUSE_CALENDARCTRL */ |
1161 | ||
1162 | #if wxUSE_CHECKLISTBOX | |
1163 | # if !wxUSE_LISTBOX | |
1164 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1165 | # error "wxCheckListBox requires wxListBox" | |
1166 | # else | |
1167 | # undef wxUSE_LISTBOX | |
1168 | # define wxUSE_LISTBOX 1 | |
1169 | # endif | |
1170 | # endif | |
1171 | #endif /* wxUSE_RADIOBTN */ | |
1172 | ||
3379ed37 | 1173 | #if wxUSE_WXHTML_HELP |
730dfeb4 | 1174 | # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK |
3379ed37 VZ |
1175 | # ifdef wxABORT_ON_CONFIG_ERROR |
1176 | # error "Built in help controller can't be compiled" | |
1177 | # else | |
1178 | # undef wxUSE_HELP | |
1179 | # define wxUSE_HELP 1 | |
1180 | # undef wxUSE_HTML | |
1181 | # define wxUSE_HTML 1 | |
1182 | # undef wxUSE_COMBOBOX | |
1183 | # define wxUSE_COMBOBOX 1 | |
730dfeb4 VS |
1184 | # undef wxUSE_NOTEBOOK |
1185 | # define wxUSE_NOTEBOOK 1 | |
3379ed37 VZ |
1186 | # endif |
1187 | # endif | |
1188 | #endif /* wxUSE_WXHTML_HELP */ | |
1189 | ||
e30285ab VZ |
1190 | #if wxUSE_DOC_VIEW_ARCHITECTURE |
1191 | # if !wxUSE_MENUS | |
1192 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1193 | # error "DocView requires wxUSE_MENUS" | |
1194 | # else | |
1195 | # undef wxUSE_MENUS | |
1196 | # define wxUSE_MENUS 1 | |
1197 | # endif | |
1198 | # endif | |
1199 | ||
1200 | # if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM | |
1201 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1202 | # error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM" | |
1203 | # else | |
1204 | # undef wxUSE_STREAMS | |
1205 | # define wxUSE_STREAMS 1 | |
1206 | # endif | |
1207 | # endif | |
1208 | #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */ | |
1209 | ||
3379ed37 VZ |
1210 | #if wxUSE_PRINTING_ARCHITECTURE |
1211 | # if !wxUSE_COMBOBOX | |
1212 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1213 | # error "Print dialog requires wxUSE_COMBOBOX" | |
1214 | # else | |
1215 | # undef wxUSE_COMBOBOX | |
1216 | # define wxUSE_COMBOBOX 1 | |
1217 | # endif | |
1218 | # endif | |
1219 | #endif /* wxUSE_PRINTING_ARCHITECTURE */ | |
1220 | ||
e30285ab VZ |
1221 | #if wxUSE_MDI_ARCHITECTURE |
1222 | # if !wxUSE_DOC_VIEW_ARCHITECTURE | |
1e6feb95 | 1223 | # ifdef wxABORT_ON_CONFIG_ERROR |
e30285ab | 1224 | # error "MDI requires wxUSE_DOC_VIEW_ARCHITECTURE" |
1e6feb95 | 1225 | # else |
e30285ab VZ |
1226 | # undef wxUSE_DOC_VIEW_ARCHITECTURE |
1227 | # define wxUSE_DOC_VIEW_ARCHITECTURE 1 | |
1e6feb95 VZ |
1228 | # endif |
1229 | # endif | |
e30285ab | 1230 | #endif /* wxUSE_MDI_ARCHITECTURE */ |
1e6feb95 VZ |
1231 | |
1232 | #if !wxUSE_FILEDLG | |
2119e280 | 1233 | # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP |
1e6feb95 VZ |
1234 | # ifdef wxABORT_ON_CONFIG_ERROR |
1235 | # error "wxFileDialog must be compiled as well" | |
1236 | # else | |
1237 | # undef wxUSE_FILEDLG | |
1238 | # define wxUSE_FILEDLG 1 | |
1239 | # endif | |
1240 | # endif | |
e421922f | 1241 | #endif /* wxUSE_FILEDLG */ |
1e6feb95 | 1242 | |
12491c1f JS |
1243 | #if !wxUSE_TOOLBAR |
1244 | # if wxUSE_TOOLBAR_NATIVE | |
1245 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1246 | # error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_NATIVE is set to 1" | |
1247 | # else | |
1248 | # undef wxUSE_TOOLBAR_NATIVE | |
1249 | # define wxUSE_TOOLBAR_NATIVE 0 | |
1250 | # endif | |
1251 | # endif | |
1252 | ||
1253 | # if wxUSE_TOOLBAR_SIMPLE | |
1254 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1255 | # error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_SIMPLE is set to 1" | |
1256 | # else | |
1257 | # undef wxUSE_TOOLBAR_SIMPLE | |
1258 | # define wxUSE_TOOLBAR_SIMPLE 0 | |
1259 | # endif | |
1260 | # endif | |
1261 | #endif | |
1262 | ||
1e6feb95 VZ |
1263 | #if !wxUSE_IMAGLIST |
1264 | # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL | |
1265 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1266 | # error "wxImageList must be compiled as well" | |
1267 | # else | |
1268 | # undef wxUSE_IMAGLIST | |
1269 | # define wxUSE_IMAGLIST 1 | |
1270 | # endif | |
1271 | # endif | |
1272 | #endif /* !wxUSE_IMAGLIST */ | |
1273 | ||
e421922f VZ |
1274 | #if !wxUSE_MSGDLG |
1275 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1276 | /* FIXME: should compile without it, of course, but doesn't */ | |
1277 | # error "wxMessageBox is always needed" | |
1278 | # else | |
1279 | # undef wxUSE_MSGDLG | |
1280 | # define wxUSE_MSGDLG 1 | |
1281 | # endif | |
1282 | #endif | |
1283 | ||
1e6feb95 VZ |
1284 | #if wxUSE_RADIOBOX |
1285 | # if !wxUSE_RADIOBTN || !wxUSE_STATBOX | |
1286 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1287 | # error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN and wxUSE_STATBOX" | |
1288 | # else | |
1289 | # undef wxUSE_RADIOBTN | |
1290 | # undef wxUSE_STATBOX | |
1291 | # define wxUSE_RADIOBTN 1 | |
1292 | # define wxUSE_STATBOX 1 | |
1293 | # endif | |
1294 | # endif | |
1295 | #endif /* wxUSE_RADIOBOX */ | |
1296 | ||
3379ed37 VZ |
1297 | #if wxUSE_LOGWINDOW |
1298 | # if !wxUSE_TEXTCTRL | |
1299 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1300 | # error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL" | |
1301 | # else | |
1302 | # undef wxUSE_TEXTCTRL | |
1303 | # define wxUSE_TEXTCTRL 1 | |
1304 | # endif | |
1305 | # endif | |
1306 | #endif /* wxUSE_LOGWINDOW */ | |
1e6feb95 | 1307 | |
3e6e2754 JS |
1308 | #if wxUSE_LOG_DIALOG |
1309 | # if !wxUSE_LISTCTRL | |
1310 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1311 | # error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL" | |
1312 | # else | |
1313 | # undef wxUSE_LISTCTRL | |
1314 | # define wxUSE_LISTCTRL 1 | |
1315 | # endif | |
1316 | # endif | |
1317 | #endif /* wxUSE_LOG_DIALOG */ | |
1318 | ||
1e6feb95 VZ |
1319 | /* I wonder if we shouldn't just remove all occurrences of |
1320 | wxUSE_DYNAMIC_CLASSES from the sources? */ | |
1321 | #if !defined(wxUSE_DYNAMIC_CLASSES) || !wxUSE_DYNAMIC_CLASSES | |
3379ed37 | 1322 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
1323 | # error "wxUSE_DYNAMIC_CLASSES must be defined as 1" |
1324 | # else | |
1325 | # undef wxUSE_DYNAMIC_CLASSES | |
03169422 | 1326 | # define wxUSE_DYNAMIC_CLASSES 1 |
1e6feb95 VZ |
1327 | # endif |
1328 | #endif /* wxUSE_DYNAMIC_CLASSES */ | |
1329 | ||
1e6feb95 | 1330 | #if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ |
3379ed37 | 1331 | # ifdef wxABORT_ON_CONFIG_ERROR |
1e6feb95 VZ |
1332 | # error "wxClipboard requires wxDataObject" |
1333 | # else | |
1334 | # undef wxUSE_DATAOBJ | |
1335 | # define wxUSE_DATAOBJ 1 | |
1336 | # endif | |
1337 | #endif /* wxUSE_CLIPBOARD */ | |
1338 | ||
2b5f62a0 VZ |
1339 | #if wxUSE_WX_RESOURCES && !wxUSE_PROLOGIO |
1340 | # ifdef wxABORT_ON_CONFIG_ERROR | |
1341 | # error "wxr resources require PrologIO" | |
1342 | # else | |
1343 | # undef wxUSE_PROLOGIO | |
1344 | # define wxUSE_PROLOGIO 1 | |
1345 | # endif | |
1346 | #endif /* wxUSE_WX_RESOURCES */ | |
1347 | ||
1e6feb95 VZ |
1348 | #endif /* wxUSE_GUI */ |
1349 |