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