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