]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/chkconf.h
3 * Purpose: check the config settings for consistency
4 * Author: Vadim Zeitlin
8 * Copyright: (c) 2000 Vadim Zeitlin <vadim@wxwidgets.org>
9 * Licence: wxWindows licence
12 /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
13 #ifndef _WX_CHKCONF_H_
14 #define _WX_CHKCONF_H_
17 **************************************************
18 PLEASE READ THIS IF YOU GET AN ERROR IN THIS FILE!
19 **************************************************
21 If you get an error saying "wxUSE_FOO must be defined", it means that you
22 are not using the correct up-to-date version of setup.h. This happens most
23 often when using svn or daily snapshots and a new symbol was added to
24 setup0.h and you haven't updated your local setup.h to reflect it. If
25 this is the case, you need to propagate the changes from setup0.h to your
26 setup.h and, if using makefiles under MSW, also remove setup.h under the
27 build directory (lib/$(COMPILER)_{lib,dll}/msw[u][d][dll]/wx) so that
28 the new setup.h is copied there.
30 If you get an error of the form "wxFoo requires wxBar", then the settings
31 in your setup.h are inconsistent. You have the choice between correcting
32 them manually or commenting out #define wxABORT_ON_CONFIG_ERROR below to
33 try to correct the problems automatically (not really recommended but
38 This file has the following sections:
39 1. checks that all wxUSE_XXX symbols we use are defined
40 a) first the non-GUI ones
41 b) then the GUI-only ones
42 2. platform-specific checks done in the platform headers
43 3. generic consistency checks
44 a) first the non-GUI ones
45 b) then the GUI-only ones
49 this global setting determines what should we do if the setting FOO
50 requires BAR and BAR is not set: we can either silently unset FOO as well
51 (do this if you're trying to build the smallest possible library) or give an
52 error and abort (default as leads to least surprising behaviour)
54 #define wxABORT_ON_CONFIG_ERROR
61 If we're compiling without support for threads/exceptions we have to
62 disable the corresponding features.
66 # define wxUSE_THREADS 0
67 #endif /* wxNO_THREADS */
69 #ifdef wxNO_EXCEPTIONS
70 # undef wxUSE_EXCEPTIONS
71 # define wxUSE_EXCEPTIONS 0
72 #endif /* wxNO_EXCEPTIONS */
74 /* we also must disable exceptions if compiler doesn't support them */
75 #if defined(_MSC_VER) && !defined(_CPPUNWIND)
76 # undef wxUSE_EXCEPTIONS
77 # define wxUSE_EXCEPTIONS 0
78 #endif /* VC++ without exceptions support */
82 Section 1a: tests for non GUI features.
84 please keep the options in alphabetical order!
88 # ifdef wxABORT_ON_CONFIG_ERROR
89 # error "wxUSE_ANY must be defined, please read comment near the top of this file."
93 #endif /* wxUSE_ANY */
95 #ifndef wxUSE_COMPILER_TLS
96 # ifdef wxABORT_ON_CONFIG_ERROR
97 # error "wxUSE_COMPILER_TLS must be defined, please read comment near the top of this file."
99 # define wxUSE_COMPILER_TLS 0
101 #endif /* !defined(wxUSE_COMPILER_TLS) */
103 #ifndef wxUSE_CONSOLE_EVENTLOOP
104 # ifdef wxABORT_ON_CONFIG_ERROR
105 # error "wxUSE_CONSOLE_EVENTLOOP must be defined, please read comment near the top of this file."
107 # define wxUSE_CONSOLE_EVENTLOOP 0
109 #endif /* !defined(wxUSE_CONSOLE_EVENTLOOP) */
111 #ifndef wxUSE_DYNLIB_CLASS
112 # ifdef wxABORT_ON_CONFIG_ERROR
113 # error "wxUSE_DYNLIB_CLASS must be defined, please read comment near the top of this file."
115 # define wxUSE_DYNLIB_CLASS 0
117 #endif /* !defined(wxUSE_DYNLIB_CLASS) */
119 #ifndef wxUSE_EXCEPTIONS
120 # ifdef wxABORT_ON_CONFIG_ERROR
121 # error "wxUSE_EXCEPTIONS must be defined, please read comment near the top of this file."
123 # define wxUSE_EXCEPTIONS 0
125 #endif /* !defined(wxUSE_EXCEPTIONS) */
127 #ifndef wxUSE_FILE_HISTORY
128 # ifdef wxABORT_ON_CONFIG_ERROR
129 # error "wxUSE_FILE_HISTORY must be defined, please read comment near the top of this file."
131 # define wxUSE_FILE_HISTORY 0
133 #endif /* !defined(wxUSE_FILE_HISTORY) */
135 #ifndef wxUSE_FILESYSTEM
136 # ifdef wxABORT_ON_CONFIG_ERROR
137 # error "wxUSE_FILESYSTEM must be defined, please read comment near the top of this file."
139 # define wxUSE_FILESYSTEM 0
141 #endif /* !defined(wxUSE_FILESYSTEM) */
143 #ifndef wxUSE_FS_ARCHIVE
144 # ifdef wxABORT_ON_CONFIG_ERROR
145 # error "wxUSE_FS_ARCHIVE must be defined, please read comment near the top of this file."
147 # define wxUSE_FS_ARCHIVE 0
149 #endif /* !defined(wxUSE_FS_ARCHIVE) */
151 #ifndef wxUSE_FSVOLUME
152 # ifdef wxABORT_ON_CONFIG_ERROR
153 # error "wxUSE_FSVOLUME must be defined, please read comment near the top of this file."
155 # define wxUSE_FSVOLUME 0
157 #endif /* !defined(wxUSE_FSVOLUME) */
159 #ifndef wxUSE_FSWATCHER
160 # ifdef wxABORT_ON_CONFIG_ERROR
161 # error "wxUSE_FSWATCHER must be defined, please read comment near the top of this file."
163 # define wxUSE_FSWATCHER 0
165 #endif /* !defined(wxUSE_FSWATCHER) */
167 #ifndef wxUSE_DYNAMIC_LOADER
168 # ifdef wxABORT_ON_CONFIG_ERROR
169 # error "wxUSE_DYNAMIC_LOADER must be defined, please read comment near the top of this file."
171 # define wxUSE_DYNAMIC_LOADER 0
173 #endif /* !defined(wxUSE_DYNAMIC_LOADER) */
176 # ifdef wxABORT_ON_CONFIG_ERROR
177 # error "wxUSE_INTL must be defined, please read comment near the top of this file."
179 # define wxUSE_INTL 0
181 #endif /* !defined(wxUSE_INTL) */
184 # ifdef wxABORT_ON_CONFIG_ERROR
185 # error "wxUSE_IPV6 must be defined, please read comment near the top of this file."
187 # define wxUSE_IPV6 0
189 #endif /* !defined(wxUSE_IPV6) */
192 # ifdef wxABORT_ON_CONFIG_ERROR
193 # error "wxUSE_LOG must be defined, please read comment near the top of this file."
197 #endif /* !defined(wxUSE_LOG) */
199 #ifndef wxUSE_LONGLONG
200 # ifdef wxABORT_ON_CONFIG_ERROR
201 # error "wxUSE_LONGLONG must be defined, please read comment near the top of this file."
203 # define wxUSE_LONGLONG 0
205 #endif /* !defined(wxUSE_LONGLONG) */
207 #ifndef wxUSE_MIMETYPE
208 # ifdef wxABORT_ON_CONFIG_ERROR
209 # error "wxUSE_MIMETYPE must be defined, please read comment near the top of this file."
211 # define wxUSE_MIMETYPE 0
213 #endif /* !defined(wxUSE_MIMETYPE) */
215 #ifndef wxUSE_ON_FATAL_EXCEPTION
216 # ifdef wxABORT_ON_CONFIG_ERROR
217 # error "wxUSE_ON_FATAL_EXCEPTION must be defined, please read comment near the top of this file."
219 # define wxUSE_ON_FATAL_EXCEPTION 0
221 #endif /* !defined(wxUSE_ON_FATAL_EXCEPTION) */
223 #ifndef wxUSE_PRINTF_POS_PARAMS
224 # ifdef wxABORT_ON_CONFIG_ERROR
225 # error "wxUSE_PRINTF_POS_PARAMS must be defined, please read comment near the top of this file."
227 # define wxUSE_PRINTF_POS_PARAMS 0
229 #endif /* !defined(wxUSE_PRINTF_POS_PARAMS) */
231 #ifndef wxUSE_PROTOCOL
232 # ifdef wxABORT_ON_CONFIG_ERROR
233 # error "wxUSE_PROTOCOL must be defined, please read comment near the top of this file."
235 # define wxUSE_PROTOCOL 0
237 #endif /* !defined(wxUSE_PROTOCOL) */
239 /* we may not define wxUSE_PROTOCOL_XXX if wxUSE_PROTOCOL is set to 0 */
241 # undef wxUSE_PROTOCOL_HTTP
242 # undef wxUSE_PROTOCOL_FTP
243 # undef wxUSE_PROTOCOL_FILE
244 # define wxUSE_PROTOCOL_HTTP 0
245 # define wxUSE_PROTOCOL_FTP 0
246 # define wxUSE_PROTOCOL_FILE 0
247 #endif /* wxUSE_PROTOCOL */
249 #ifndef wxUSE_PROTOCOL_HTTP
250 # ifdef wxABORT_ON_CONFIG_ERROR
251 # error "wxUSE_PROTOCOL_HTTP must be defined, please read comment near the top of this file."
253 # define wxUSE_PROTOCOL_HTTP 0
255 #endif /* !defined(wxUSE_PROTOCOL_HTTP) */
257 #ifndef wxUSE_PROTOCOL_FTP
258 # ifdef wxABORT_ON_CONFIG_ERROR
259 # error "wxUSE_PROTOCOL_FTP must be defined, please read comment near the top of this file."
261 # define wxUSE_PROTOCOL_FTP 0
263 #endif /* !defined(wxUSE_PROTOCOL_FTP) */
265 #ifndef wxUSE_PROTOCOL_FILE
266 # ifdef wxABORT_ON_CONFIG_ERROR
267 # error "wxUSE_PROTOCOL_FILE must be defined, please read comment near the top of this file."
269 # define wxUSE_PROTOCOL_FILE 0
271 #endif /* !defined(wxUSE_PROTOCOL_FILE) */
274 # ifdef wxABORT_ON_CONFIG_ERROR
275 # error "wxUSE_REGEX must be defined, please read comment near the top of this file."
277 # define wxUSE_REGEX 0
279 #endif /* !defined(wxUSE_REGEX) */
281 #ifndef wxUSE_STDPATHS
282 # ifdef wxABORT_ON_CONFIG_ERROR
283 # error "wxUSE_STDPATHS must be defined, please read comment near the top of this file."
285 # define wxUSE_STDPATHS 1
287 #endif /* !defined(wxUSE_STDPATHS) */
290 # ifdef wxABORT_ON_CONFIG_ERROR
291 # error "wxUSE_XML must be defined, please read comment near the top of this file."
295 #endif /* !defined(wxUSE_XML) */
297 #ifndef wxUSE_SOCKETS
298 # ifdef wxABORT_ON_CONFIG_ERROR
299 # error "wxUSE_SOCKETS must be defined, please read comment near the top of this file."
301 # define wxUSE_SOCKETS 0
303 #endif /* !defined(wxUSE_SOCKETS) */
305 #ifndef wxUSE_STD_CONTAINERS
306 # ifdef wxABORT_ON_CONFIG_ERROR
307 # error "wxUSE_STD_CONTAINERS must be defined, please read comment near the top of this file."
309 # define wxUSE_STD_CONTAINERS 0
311 #endif /* !defined(wxUSE_STD_CONTAINERS) */
313 #ifndef wxUSE_STD_STRING_CONV_IN_WXSTRING
314 # ifdef wxABORT_ON_CONFIG_ERROR
315 # error "wxUSE_STD_STRING_CONV_IN_WXSTRING must be defined, please read comment near the top of this file."
317 # define wxUSE_STD_STRING_CONV_IN_WXSTRING 0
319 #endif /* !defined(wxUSE_STD_STRING_CONV_IN_WXSTRING) */
321 #ifndef wxUSE_STREAMS
322 # ifdef wxABORT_ON_CONFIG_ERROR
323 # error "wxUSE_STREAMS must be defined, please read comment near the top of this file."
325 # define wxUSE_STREAMS 0
327 #endif /* !defined(wxUSE_STREAMS) */
329 #ifndef wxUSE_STOPWATCH
330 # ifdef wxABORT_ON_CONFIG_ERROR
331 # error "wxUSE_STOPWATCH must be defined, please read comment near the top of this file."
333 # define wxUSE_STOPWATCH 0
335 #endif /* !defined(wxUSE_STOPWATCH) */
337 #ifndef wxUSE_TEXTBUFFER
338 # ifdef wxABORT_ON_CONFIG_ERROR
339 # error "wxUSE_TEXTBUFFER must be defined, please read comment near the top of this file."
341 # define wxUSE_TEXTBUFFER 0
343 #endif /* !defined(wxUSE_TEXTBUFFER) */
345 #ifndef wxUSE_TEXTFILE
346 # ifdef wxABORT_ON_CONFIG_ERROR
347 # error "wxUSE_TEXTFILE must be defined, please read comment near the top of this file."
349 # define wxUSE_TEXTFILE 0
351 #endif /* !defined(wxUSE_TEXTFILE) */
353 #ifndef wxUSE_UNICODE
354 # ifdef wxABORT_ON_CONFIG_ERROR
355 # error "wxUSE_UNICODE must be defined, please read comment near the top of this file."
357 # define wxUSE_UNICODE 0
359 #endif /* !defined(wxUSE_UNICODE) */
362 # ifdef wxABORT_ON_CONFIG_ERROR
363 # error "wxUSE_URL must be defined, please read comment near the top of this file."
367 #endif /* !defined(wxUSE_URL) */
369 #ifndef wxUSE_VARIANT
370 # ifdef wxABORT_ON_CONFIG_ERROR
371 # error "wxUSE_VARIANT must be defined, please read comment near the top of this file."
373 # define wxUSE_VARIANT 0
375 #endif /* wxUSE_VARIANT */
377 #ifndef wxUSE_XLOCALE
378 # ifdef wxABORT_ON_CONFIG_ERROR
379 # error "wxUSE_XLOCALE must be defined, please read comment near the top of this file."
381 # define wxUSE_XLOCALE 0
383 #endif /* !defined(wxUSE_XLOCALE) */
386 Section 1b: all these tests are for GUI only.
388 please keep the options in alphabetical order!
393 all of the settings tested below must be defined or we'd get an error from
394 preprocessor about invalid integer expression
397 #ifndef wxUSE_ABOUTDLG
398 # ifdef wxABORT_ON_CONFIG_ERROR
399 # error "wxUSE_ABOUTDLG must be defined, please read comment near the top of this file."
401 # define wxUSE_ABOUTDLG 0
403 #endif /* !defined(wxUSE_ABOUTDLG) */
406 # ifdef wxABORT_ON_CONFIG_ERROR
407 # error "wxUSE_ACCEL must be defined, please read comment near the top of this file."
409 # define wxUSE_ACCEL 0
411 #endif /* !defined(wxUSE_ACCEL) */
413 #ifndef wxUSE_ACCESSIBILITY
414 # ifdef wxABORT_ON_CONFIG_ERROR
415 # error "wxUSE_ACCESSIBILITY must be defined, please read comment near the top of this file."
417 # define wxUSE_ACCESSIBILITY 0
419 #endif /* !defined(wxUSE_ACCESSIBILITY) */
421 #ifndef wxUSE_ANIMATIONCTRL
422 # ifdef wxABORT_ON_CONFIG_ERROR
423 # error "wxUSE_ANIMATIONCTRL must be defined, please read comment near the top of this file."
425 # define wxUSE_ANIMATIONCTRL 0
427 #endif /* !defined(wxUSE_ANIMATIONCTRL) */
429 #ifndef wxUSE_ARTPROVIDER_STD
430 # ifdef wxABORT_ON_CONFIG_ERROR
431 # error "wxUSE_ARTPROVIDER_STD must be defined, please read comment near the top of this file."
433 # define wxUSE_ARTPROVIDER_STD 0
435 #endif /* !defined(wxUSE_ARTPROVIDER_STD) */
437 #ifndef wxUSE_ARTPROVIDER_TANGO
438 # ifdef wxABORT_ON_CONFIG_ERROR
439 # error "wxUSE_ARTPROVIDER_TANGO must be defined, please read comment near the top of this file."
441 # define wxUSE_ARTPROVIDER_TANGO 0
443 #endif /* !defined(wxUSE_ARTPROVIDER_TANGO) */
445 #ifndef wxUSE_AUTOID_MANAGEMENT
446 # ifdef wxABORT_ON_CONFIG_ERROR
447 # error "wxUSE_AUTOID_MANAGEMENT must be defined, please read comment near the top of this file."
449 # define wxUSE_AUTOID_MANAGEMENT 0
451 #endif /* !defined(wxUSE_AUTOID_MANAGEMENT) */
453 #ifndef wxUSE_BITMAPCOMBOBOX
454 # ifdef wxABORT_ON_CONFIG_ERROR
455 # error "wxUSE_BITMAPCOMBOBOX must be defined, please read comment near the top of this file."
457 # define wxUSE_BITMAPCOMBOBOX 0
459 #endif /* !defined(wxUSE_BITMAPCOMBOBOX) */
461 #ifndef wxUSE_BMPBUTTON
462 # ifdef wxABORT_ON_CONFIG_ERROR
463 # error "wxUSE_BMPBUTTON must be defined, please read comment near the top of this file."
465 # define wxUSE_BMPBUTTON 0
467 #endif /* !defined(wxUSE_BMPBUTTON) */
470 # ifdef wxABORT_ON_CONFIG_ERROR
471 # error "wxUSE_BUTTON must be defined, please read comment near the top of this file."
473 # define wxUSE_BUTTON 0
475 #endif /* !defined(wxUSE_BUTTON) */
478 # ifdef wxABORT_ON_CONFIG_ERROR
479 # error "wxUSE_CAIRO must be defined, please read comment near the top of this file."
481 # define wxUSE_CAIRO 0
483 #endif /* !defined(wxUSE_CAIRO) */
485 #ifndef wxUSE_CALENDARCTRL
486 # ifdef wxABORT_ON_CONFIG_ERROR
487 # error "wxUSE_CALENDARCTRL must be defined, please read comment near the top of this file."
489 # define wxUSE_CALENDARCTRL 0
491 #endif /* !defined(wxUSE_CALENDARCTRL) */
494 # ifdef wxABORT_ON_CONFIG_ERROR
495 # error "wxUSE_CARET must be defined, please read comment near the top of this file."
497 # define wxUSE_CARET 0
499 #endif /* !defined(wxUSE_CARET) */
501 #ifndef wxUSE_CHECKBOX
502 # ifdef wxABORT_ON_CONFIG_ERROR
503 # error "wxUSE_CHECKBOX must be defined, please read comment near the top of this file."
505 # define wxUSE_CHECKBOX 0
507 #endif /* !defined(wxUSE_CHECKBOX) */
509 #ifndef wxUSE_CHECKLISTBOX
510 # ifdef wxABORT_ON_CONFIG_ERROR
511 # error "wxUSE_CHECKLISTBOX must be defined, please read comment near the top of this file."
513 # define wxUSE_CHECKLISTBOX 0
515 #endif /* !defined(wxUSE_CHECKLISTBOX) */
518 # ifdef wxABORT_ON_CONFIG_ERROR
519 # error "wxUSE_CHOICE must be defined, please read comment near the top of this file."
521 # define wxUSE_CHOICE 0
523 #endif /* !defined(wxUSE_CHOICE) */
525 #ifndef wxUSE_CHOICEBOOK
526 # ifdef wxABORT_ON_CONFIG_ERROR
527 # error "wxUSE_CHOICEBOOK must be defined, please read comment near the top of this file."
529 # define wxUSE_CHOICEBOOK 0
531 #endif /* !defined(wxUSE_CHOICEBOOK) */
533 #ifndef wxUSE_CHOICEDLG
534 # ifdef wxABORT_ON_CONFIG_ERROR
535 # error "wxUSE_CHOICEDLG must be defined, please read comment near the top of this file."
537 # define wxUSE_CHOICEDLG 0
539 #endif /* !defined(wxUSE_CHOICEDLG) */
541 #ifndef wxUSE_CLIPBOARD
542 # ifdef wxABORT_ON_CONFIG_ERROR
543 # error "wxUSE_CLIPBOARD must be defined, please read comment near the top of this file."
545 # define wxUSE_CLIPBOARD 0
547 #endif /* !defined(wxUSE_CLIPBOARD) */
549 #ifndef wxUSE_COLLPANE
550 # ifdef wxABORT_ON_CONFIG_ERROR
551 # error "wxUSE_COLLPANE must be defined, please read comment near the top of this file."
553 # define wxUSE_COLLPANE 0
555 #endif /* !defined(wxUSE_COLLPANE) */
557 #ifndef wxUSE_COLOURDLG
558 # ifdef wxABORT_ON_CONFIG_ERROR
559 # error "wxUSE_COLOURDLG must be defined, please read comment near the top of this file."
561 # define wxUSE_COLOURDLG 0
563 #endif /* !defined(wxUSE_COLOURDLG) */
565 #ifndef wxUSE_COLOURPICKERCTRL
566 # ifdef wxABORT_ON_CONFIG_ERROR
567 # error "wxUSE_COLOURPICKERCTRL must be defined, please read comment near the top of this file."
569 # define wxUSE_COLOURPICKERCTRL 0
571 #endif /* !defined(wxUSE_COLOURPICKERCTRL) */
573 #ifndef wxUSE_COMBOBOX
574 # ifdef wxABORT_ON_CONFIG_ERROR
575 # error "wxUSE_COMBOBOX must be defined, please read comment near the top of this file."
577 # define wxUSE_COMBOBOX 0
579 #endif /* !defined(wxUSE_COMBOBOX) */
581 #ifndef wxUSE_COMMANDLINKBUTTON
582 # ifdef wxABORT_ON_CONFIG_ERROR
583 # error "wxUSE_COMMANDLINKBUTTON must be defined, please read comment near the top of this file."
585 # define wxUSE_COMMANDLINKBUTTON 0
587 #endif /* !defined(wxUSE_COMMANDLINKBUTTON) */
589 #ifndef wxUSE_COMBOCTRL
590 # ifdef wxABORT_ON_CONFIG_ERROR
591 # error "wxUSE_COMBOCTRL must be defined, please read comment near the top of this file."
593 # define wxUSE_COMBOCTRL 0
595 #endif /* !defined(wxUSE_COMBOCTRL) */
597 #ifndef wxUSE_DATAOBJ
598 # ifdef wxABORT_ON_CONFIG_ERROR
599 # error "wxUSE_DATAOBJ must be defined, please read comment near the top of this file."
601 # define wxUSE_DATAOBJ 0
603 #endif /* !defined(wxUSE_DATAOBJ) */
605 #ifndef wxUSE_DATAVIEWCTRL
606 # ifdef wxABORT_ON_CONFIG_ERROR
607 # error "wxUSE_DATAVIEWCTRL must be defined, please read comment near the top of this file."
609 # define wxUSE_DATAVIEWCTRL 0
611 #endif /* !defined(wxUSE_DATAVIEWCTRL) */
613 #ifndef wxUSE_DATEPICKCTRL
614 # ifdef wxABORT_ON_CONFIG_ERROR
615 # error "wxUSE_DATEPICKCTRL must be defined, please read comment near the top of this file."
617 # define wxUSE_DATEPICKCTRL 0
619 #endif /* !defined(wxUSE_DATEPICKCTRL) */
621 #ifndef wxUSE_DC_TRANSFORM_MATRIX
622 # ifdef wxABORT_ON_CONFIG_ERROR
623 # error "wxUSE_DC_TRANSFORM_MATRIX must be defined, please read comment near the top of this file."
625 # define wxUSE_DC_TRANSFORM_MATRIX 1
627 #endif /* wxUSE_DC_TRANSFORM_MATRIX */
629 #ifndef wxUSE_DIRPICKERCTRL
630 # ifdef wxABORT_ON_CONFIG_ERROR
631 # error "wxUSE_DIRPICKERCTRL must be defined, please read comment near the top of this file."
633 # define wxUSE_DIRPICKERCTRL 0
635 #endif /* !defined(wxUSE_DIRPICKERCTRL) */
637 #ifndef wxUSE_DISPLAY
638 # ifdef wxABORT_ON_CONFIG_ERROR
639 # error "wxUSE_DISPLAY must be defined, please read comment near the top of this file."
641 # define wxUSE_DISPLAY 0
643 #endif /* !defined(wxUSE_DISPLAY) */
645 #ifndef wxUSE_DOC_VIEW_ARCHITECTURE
646 # ifdef wxABORT_ON_CONFIG_ERROR
647 # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined, please read comment near the top of this file."
649 # define wxUSE_DOC_VIEW_ARCHITECTURE 0
651 #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */
653 #ifndef wxUSE_FILECTRL
654 # ifdef wxABORT_ON_CONFIG_ERROR
655 # error "wxUSE_FILECTRL must be defined, please read comment near the top of this file."
657 # define wxUSE_FILECTRL 0
659 #endif /* !defined(wxUSE_FILECTRL) */
661 #ifndef wxUSE_FILEDLG
662 # ifdef wxABORT_ON_CONFIG_ERROR
663 # error "wxUSE_FILEDLG must be defined, please read comment near the top of this file."
665 # define wxUSE_FILEDLG 0
667 #endif /* !defined(wxUSE_FILEDLG) */
669 #ifndef wxUSE_FILEPICKERCTRL
670 # ifdef wxABORT_ON_CONFIG_ERROR
671 # error "wxUSE_FILEPICKERCTRL must be defined, please read comment near the top of this file."
673 # define wxUSE_FILEPICKERCTRL 0
675 #endif /* !defined(wxUSE_FILEPICKERCTRL) */
677 #ifndef wxUSE_FONTDLG
678 # ifdef wxABORT_ON_CONFIG_ERROR
679 # error "wxUSE_FONTDLG must be defined, please read comment near the top of this file."
681 # define wxUSE_FONTDLG 0
683 #endif /* !defined(wxUSE_FONTDLG) */
685 #ifndef wxUSE_FONTMAP
686 # ifdef wxABORT_ON_CONFIG_ERROR
687 # error "wxUSE_FONTMAP must be defined, please read comment near the top of this file."
689 # define wxUSE_FONTMAP 0
691 #endif /* !defined(wxUSE_FONTMAP) */
693 #ifndef wxUSE_FONTPICKERCTRL
694 # ifdef wxABORT_ON_CONFIG_ERROR
695 # error "wxUSE_FONTPICKERCTRL must be defined, please read comment near the top of this file."
697 # define wxUSE_FONTPICKERCTRL 0
699 #endif /* !defined(wxUSE_FONTPICKERCTRL) */
702 # ifdef wxABORT_ON_CONFIG_ERROR
703 # error "wxUSE_GAUGE must be defined, please read comment near the top of this file."
705 # define wxUSE_GAUGE 0
707 #endif /* !defined(wxUSE_GAUGE) */
709 #ifndef wxUSE_GRAPHICS_CONTEXT
710 # ifdef wxABORT_ON_CONFIG_ERROR
711 # error "wxUSE_GRAPHICS_CONTEXT must be defined, please read comment near the top of this file."
713 # define wxUSE_GRAPHICS_CONTEXT 0
715 #endif /* !defined(wxUSE_GRAPHICS_CONTEXT) */
719 # ifdef wxABORT_ON_CONFIG_ERROR
720 # error "wxUSE_GRID must be defined, please read comment near the top of this file."
722 # define wxUSE_GRID 0
724 #endif /* !defined(wxUSE_GRID) */
726 #ifndef wxUSE_HEADERCTRL
727 # ifdef wxABORT_ON_CONFIG_ERROR
728 # error "wxUSE_HEADERCTRL must be defined, please read comment near the top of this file."
730 # define wxUSE_HEADERCTRL 0
732 #endif /* !defined(wxUSE_HEADERCTRL) */
735 # ifdef wxABORT_ON_CONFIG_ERROR
736 # error "wxUSE_HELP must be defined, please read comment near the top of this file."
738 # define wxUSE_HELP 0
740 #endif /* !defined(wxUSE_HELP) */
742 #ifndef wxUSE_HYPERLINKCTRL
743 # ifdef wxABORT_ON_CONFIG_ERROR
744 # error "wxUSE_HYPERLINKCTRL must be defined, please read comment near the top of this file."
746 # define wxUSE_HYPERLINKCTRL 0
748 #endif /* !defined(wxUSE_HYPERLINKCTRL) */
751 # ifdef wxABORT_ON_CONFIG_ERROR
752 # error "wxUSE_HTML must be defined, please read comment near the top of this file."
754 # define wxUSE_HTML 0
756 #endif /* !defined(wxUSE_HTML) */
758 #ifndef wxUSE_LIBMSPACK
759 # if !defined(__UNIX__)
760 /* set to 0 on platforms that don't have libmspack */
761 # define wxUSE_LIBMSPACK 0
763 # ifdef wxABORT_ON_CONFIG_ERROR
764 # error "wxUSE_LIBMSPACK must be defined, please read comment near the top of this file."
766 # define wxUSE_LIBMSPACK 0
769 #endif /* !defined(wxUSE_LIBMSPACK) */
771 #ifndef wxUSE_ICO_CUR
772 # ifdef wxABORT_ON_CONFIG_ERROR
773 # error "wxUSE_ICO_CUR must be defined, please read comment near the top of this file."
775 # define wxUSE_ICO_CUR 0
777 #endif /* !defined(wxUSE_ICO_CUR) */
780 # ifdef wxABORT_ON_CONFIG_ERROR
781 # error "wxUSE_IFF must be defined, please read comment near the top of this file."
785 #endif /* !defined(wxUSE_IFF) */
787 #ifndef wxUSE_IMAGLIST
788 # ifdef wxABORT_ON_CONFIG_ERROR
789 # error "wxUSE_IMAGLIST must be defined, please read comment near the top of this file."
791 # define wxUSE_IMAGLIST 0
793 #endif /* !defined(wxUSE_IMAGLIST) */
795 #ifndef wxUSE_INFOBAR
796 # ifdef wxABORT_ON_CONFIG_ERROR
797 # error "wxUSE_INFOBAR must be defined, please read comment near the top of this file."
799 # define wxUSE_INFOBAR 0
801 #endif /* !defined(wxUSE_INFOBAR) */
803 #ifndef wxUSE_JOYSTICK
804 # ifdef wxABORT_ON_CONFIG_ERROR
805 # error "wxUSE_JOYSTICK must be defined, please read comment near the top of this file."
807 # define wxUSE_JOYSTICK 0
809 #endif /* !defined(wxUSE_JOYSTICK) */
811 #ifndef wxUSE_LISTBOOK
812 # ifdef wxABORT_ON_CONFIG_ERROR
813 # error "wxUSE_LISTBOOK must be defined, please read comment near the top of this file."
815 # define wxUSE_LISTBOOK 0
817 #endif /* !defined(wxUSE_LISTBOOK) */
819 #ifndef wxUSE_LISTBOX
820 # ifdef wxABORT_ON_CONFIG_ERROR
821 # error "wxUSE_LISTBOX must be defined, please read comment near the top of this file."
823 # define wxUSE_LISTBOX 0
825 #endif /* !defined(wxUSE_LISTBOX) */
827 #ifndef wxUSE_LISTCTRL
828 # ifdef wxABORT_ON_CONFIG_ERROR
829 # error "wxUSE_LISTCTRL must be defined, please read comment near the top of this file."
831 # define wxUSE_LISTCTRL 0
833 #endif /* !defined(wxUSE_LISTCTRL) */
836 # ifdef wxABORT_ON_CONFIG_ERROR
837 # error "wxUSE_LOGGUI must be defined, please read comment near the top of this file."
839 # define wxUSE_LOGGUI 0
841 #endif /* !defined(wxUSE_LOGGUI) */
843 #ifndef wxUSE_LOGWINDOW
844 # ifdef wxABORT_ON_CONFIG_ERROR
845 # error "wxUSE_LOGWINDOW must be defined, please read comment near the top of this file."
847 # define wxUSE_LOGWINDOW 0
849 #endif /* !defined(wxUSE_LOGWINDOW) */
851 #ifndef wxUSE_LOG_DIALOG
852 # ifdef wxABORT_ON_CONFIG_ERROR
853 # error "wxUSE_LOG_DIALOG must be defined, please read comment near the top of this file."
855 # define wxUSE_LOG_DIALOG 0
857 #endif /* !defined(wxUSE_LOG_DIALOG) */
860 # ifdef wxABORT_ON_CONFIG_ERROR
861 # error "wxUSE_MARKUP must be defined, please read comment near the top of this file."
863 # define wxUSE_MARKUP 0
865 #endif /* !defined(wxUSE_MARKUP) */
868 # ifdef wxABORT_ON_CONFIG_ERROR
869 # error "wxUSE_MDI must be defined, please read comment near the top of this file."
873 #endif /* !defined(wxUSE_MDI) */
875 #ifndef wxUSE_MDI_ARCHITECTURE
876 # ifdef wxABORT_ON_CONFIG_ERROR
877 # error "wxUSE_MDI_ARCHITECTURE must be defined, please read comment near the top of this file."
879 # define wxUSE_MDI_ARCHITECTURE 0
881 #endif /* !defined(wxUSE_MDI_ARCHITECTURE) */
884 # ifdef wxABORT_ON_CONFIG_ERROR
885 # error "wxUSE_MENUS must be defined, please read comment near the top of this file."
887 # define wxUSE_MENUS 0
889 #endif /* !defined(wxUSE_MENUS) */
892 # ifdef wxABORT_ON_CONFIG_ERROR
893 # error "wxUSE_MSGDLG must be defined, please read comment near the top of this file."
895 # define wxUSE_MSGDLG 0
897 #endif /* !defined(wxUSE_MSGDLG) */
899 #ifndef wxUSE_NOTEBOOK
900 # ifdef wxABORT_ON_CONFIG_ERROR
901 # error "wxUSE_NOTEBOOK must be defined, please read comment near the top of this file."
903 # define wxUSE_NOTEBOOK 0
905 #endif /* !defined(wxUSE_NOTEBOOK) */
907 #ifndef wxUSE_NOTIFICATION_MESSAGE
908 # ifdef wxABORT_ON_CONFIG_ERROR
909 # error "wxUSE_NOTIFICATION_MESSAGE must be defined, please read comment near the top of this file."
911 # define wxUSE_NOTIFICATION_MESSAGE 0
913 #endif /* !defined(wxUSE_NOTIFICATION_MESSAGE) */
915 #ifndef wxUSE_ODCOMBOBOX
916 # ifdef wxABORT_ON_CONFIG_ERROR
917 # error "wxUSE_ODCOMBOBOX must be defined, please read comment near the top of this file."
919 # define wxUSE_ODCOMBOBOX 0
921 #endif /* !defined(wxUSE_ODCOMBOBOX) */
923 #ifndef wxUSE_PALETTE
924 # ifdef wxABORT_ON_CONFIG_ERROR
925 # error "wxUSE_PALETTE must be defined, please read comment near the top of this file."
927 # define wxUSE_PALETTE 0
929 #endif /* !defined(wxUSE_PALETTE) */
931 #ifndef wxUSE_POPUPWIN
932 # ifdef wxABORT_ON_CONFIG_ERROR
933 # error "wxUSE_POPUPWIN must be defined, please read comment near the top of this file."
935 # define wxUSE_POPUPWIN 0
937 #endif /* !defined(wxUSE_POPUPWIN) */
939 #ifndef wxUSE_PREFERENCES_EDITOR
940 # ifdef wxABORT_ON_CONFIG_ERROR
941 # error "wxUSE_PREFERENCES_EDITOR must be defined, please read comment near the top of this file."
943 # define wxUSE_PREFERENCES_EDITOR 0
945 #endif /* !defined(wxUSE_PREFERENCES_EDITOR) */
947 #ifndef wxUSE_PRINTING_ARCHITECTURE
948 # ifdef wxABORT_ON_CONFIG_ERROR
949 # error "wxUSE_PRINTING_ARCHITECTURE must be defined, please read comment near the top of this file."
951 # define wxUSE_PRINTING_ARCHITECTURE 0
953 #endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */
955 #ifndef wxUSE_RADIOBOX
956 # ifdef wxABORT_ON_CONFIG_ERROR
957 # error "wxUSE_RADIOBOX must be defined, please read comment near the top of this file."
959 # define wxUSE_RADIOBOX 0
961 #endif /* !defined(wxUSE_RADIOBOX) */
963 #ifndef wxUSE_RADIOBTN
964 # ifdef wxABORT_ON_CONFIG_ERROR
965 # error "wxUSE_RADIOBTN must be defined, please read comment near the top of this file."
967 # define wxUSE_RADIOBTN 0
969 #endif /* !defined(wxUSE_RADIOBTN) */
971 #ifndef wxUSE_REARRANGECTRL
972 # ifdef wxABORT_ON_CONFIG_ERROR
973 # error "wxUSE_REARRANGECTRL must be defined, please read comment near the top of this file."
975 # define wxUSE_REARRANGECTRL 0
977 #endif /* !defined(wxUSE_REARRANGECTRL) */
980 # ifdef wxABORT_ON_CONFIG_ERROR
981 # error "wxUSE_RIBBON must be defined, please read comment near the top of this file."
983 # define wxUSE_RIBBON 0
985 #endif /* !defined(wxUSE_RIBBON) */
987 #ifndef wxUSE_RICHMSGDLG
988 # ifdef wxABORT_ON_CONFIG_ERROR
989 # error "wxUSE_RICHMSGDLG must be defined, please read comment near the top of this file."
991 # define wxUSE_RICHMSGDLG 0
993 #endif /* !defined(wxUSE_RICHMSGDLG) */
995 #ifndef wxUSE_RICHTOOLTIP
996 # ifdef wxABORT_ON_CONFIG_ERROR
997 # error "wxUSE_RICHTOOLTIP must be defined, please read comment near the top of this file."
999 # define wxUSE_RICHTOOLTIP 0
1001 #endif /* !defined(wxUSE_RICHTOOLTIP) */
1004 # ifdef wxABORT_ON_CONFIG_ERROR
1005 # error "wxUSE_SASH must be defined, please read comment near the top of this file."
1007 # define wxUSE_SASH 0
1009 #endif /* !defined(wxUSE_SASH) */
1011 #ifndef wxUSE_SCROLLBAR
1012 # ifdef wxABORT_ON_CONFIG_ERROR
1013 # error "wxUSE_SCROLLBAR must be defined, please read comment near the top of this file."
1015 # define wxUSE_SCROLLBAR 0
1017 #endif /* !defined(wxUSE_SCROLLBAR) */
1019 #ifndef wxUSE_SLIDER
1020 # ifdef wxABORT_ON_CONFIG_ERROR
1021 # error "wxUSE_SLIDER must be defined, please read comment near the top of this file."
1023 # define wxUSE_SLIDER 0
1025 #endif /* !defined(wxUSE_SLIDER) */
1028 # ifdef wxABORT_ON_CONFIG_ERROR
1029 # error "wxUSE_SOUND must be defined, please read comment near the top of this file."
1031 # define wxUSE_SOUND 0
1033 #endif /* !defined(wxUSE_SOUND) */
1035 #ifndef wxUSE_SPINBTN
1036 # ifdef wxABORT_ON_CONFIG_ERROR
1037 # error "wxUSE_SPINBTN must be defined, please read comment near the top of this file."
1039 # define wxUSE_SPINBTN 0
1041 #endif /* !defined(wxUSE_SPINBTN) */
1043 #ifndef wxUSE_SPINCTRL
1044 # ifdef wxABORT_ON_CONFIG_ERROR
1045 # error "wxUSE_SPINCTRL must be defined, please read comment near the top of this file."
1047 # define wxUSE_SPINCTRL 0
1049 #endif /* !defined(wxUSE_SPINCTRL) */
1051 #ifndef wxUSE_SPLASH
1052 # ifdef wxABORT_ON_CONFIG_ERROR
1053 # error "wxUSE_SPLASH must be defined, please read comment near the top of this file."
1055 # define wxUSE_SPLASH 0
1057 #endif /* !defined(wxUSE_SPLASH) */
1059 #ifndef wxUSE_SPLITTER
1060 # ifdef wxABORT_ON_CONFIG_ERROR
1061 # error "wxUSE_SPLITTER must be defined, please read comment near the top of this file."
1063 # define wxUSE_SPLITTER 0
1065 #endif /* !defined(wxUSE_SPLITTER) */
1067 #ifndef wxUSE_STATBMP
1068 # ifdef wxABORT_ON_CONFIG_ERROR
1069 # error "wxUSE_STATBMP must be defined, please read comment near the top of this file."
1071 # define wxUSE_STATBMP 0
1073 #endif /* !defined(wxUSE_STATBMP) */
1075 #ifndef wxUSE_STATBOX
1076 # ifdef wxABORT_ON_CONFIG_ERROR
1077 # error "wxUSE_STATBOX must be defined, please read comment near the top of this file."
1079 # define wxUSE_STATBOX 0
1081 #endif /* !defined(wxUSE_STATBOX) */
1083 #ifndef wxUSE_STATLINE
1084 # ifdef wxABORT_ON_CONFIG_ERROR
1085 # error "wxUSE_STATLINE must be defined, please read comment near the top of this file."
1087 # define wxUSE_STATLINE 0
1089 #endif /* !defined(wxUSE_STATLINE) */
1091 #ifndef wxUSE_STATTEXT
1092 # ifdef wxABORT_ON_CONFIG_ERROR
1093 # error "wxUSE_STATTEXT must be defined, please read comment near the top of this file."
1095 # define wxUSE_STATTEXT 0
1097 #endif /* !defined(wxUSE_STATTEXT) */
1099 #ifndef wxUSE_STATUSBAR
1100 # ifdef wxABORT_ON_CONFIG_ERROR
1101 # error "wxUSE_STATUSBAR must be defined, please read comment near the top of this file."
1103 # define wxUSE_STATUSBAR 0
1105 #endif /* !defined(wxUSE_STATUSBAR) */
1107 #ifndef wxUSE_TASKBARICON
1108 # ifdef wxABORT_ON_CONFIG_ERROR
1109 # error "wxUSE_TASKBARICON must be defined, please read comment near the top of this file."
1111 # define wxUSE_TASKBARICON 0
1113 #endif /* !defined(wxUSE_TASKBARICON) */
1115 #ifndef wxUSE_TEXTCTRL
1116 # ifdef wxABORT_ON_CONFIG_ERROR
1117 # error "wxUSE_TEXTCTRL must be defined, please read comment near the top of this file."
1119 # define wxUSE_TEXTCTRL 0
1121 #endif /* !defined(wxUSE_TEXTCTRL) */
1123 #ifndef wxUSE_TIMEPICKCTRL
1124 # ifdef wxABORT_ON_CONFIG_ERROR
1125 # error "wxUSE_TIMEPICKCTRL must be defined, please read comment near the top of this file."
1127 # define wxUSE_TIMEPICKCTRL 0
1129 #endif /* !defined(wxUSE_TIMEPICKCTRL) */
1131 #ifndef wxUSE_TIPWINDOW
1132 # ifdef wxABORT_ON_CONFIG_ERROR
1133 # error "wxUSE_TIPWINDOW must be defined, please read comment near the top of this file."
1135 # define wxUSE_TIPWINDOW 0
1137 #endif /* !defined(wxUSE_TIPWINDOW) */
1139 #ifndef wxUSE_TOOLBAR
1140 # ifdef wxABORT_ON_CONFIG_ERROR
1141 # error "wxUSE_TOOLBAR must be defined, please read comment near the top of this file."
1143 # define wxUSE_TOOLBAR 0
1145 #endif /* !defined(wxUSE_TOOLBAR) */
1147 #ifndef wxUSE_TOOLTIPS
1148 # ifdef wxABORT_ON_CONFIG_ERROR
1149 # error "wxUSE_TOOLTIPS must be defined, please read comment near the top of this file."
1151 # define wxUSE_TOOLTIPS 0
1153 #endif /* !defined(wxUSE_TOOLTIPS) */
1155 #ifndef wxUSE_TREECTRL
1156 # ifdef wxABORT_ON_CONFIG_ERROR
1157 # error "wxUSE_TREECTRL must be defined, please read comment near the top of this file."
1159 # define wxUSE_TREECTRL 0
1161 #endif /* !defined(wxUSE_TREECTRL) */
1163 #ifndef wxUSE_TREELISTCTRL
1164 # ifdef wxABORT_ON_CONFIG_ERROR
1165 # error "wxUSE_TREELISTCTRL must be defined, please read comment near the top of this file."
1167 # define wxUSE_TREELISTCTRL 0
1169 #endif /* !defined(wxUSE_TREELISTCTRL) */
1171 #ifndef wxUSE_UIACTIONSIMULATOR
1172 # ifdef wxABORT_ON_CONFIG_ERROR
1173 # error "wxUSE_UIACTIONSIMULATOR must be defined, please read comment near the top of this file."
1175 # define wxUSE_UIACTIONSIMULATOR 0
1177 #endif /* !defined(wxUSE_UIACTIONSIMULATOR) */
1179 #ifndef wxUSE_VALIDATORS
1180 # ifdef wxABORT_ON_CONFIG_ERROR
1181 # error "wxUSE_VALIDATORS must be defined, please read comment near the top of this file."
1183 # define wxUSE_VALIDATORS 0
1185 #endif /* !defined(wxUSE_VALIDATORS) */
1187 #ifndef wxUSE_WEBVIEW
1188 # ifdef wxABORT_ON_CONFIG_ERROR
1189 # error "wxUSE_WEBVIEW must be defined, please read comment near the top of this file."
1191 # define wxUSE_WEBVIEW 0
1193 #endif /* !defined(wxUSE_WEBVIEW) */
1195 #ifndef wxUSE_WXHTML_HELP
1196 # ifdef wxABORT_ON_CONFIG_ERROR
1197 # error "wxUSE_WXHTML_HELP must be defined, please read comment near the top of this file."
1199 # define wxUSE_WXHTML_HELP 0
1201 #endif /* !defined(wxUSE_WXHTML_HELP) */
1204 # ifdef wxABORT_ON_CONFIG_ERROR
1205 # error "wxUSE_XRC must be defined, please read comment near the top of this file."
1207 # define wxUSE_XRC 0
1209 #endif /* !defined(wxUSE_XRC) */
1211 #endif /* wxUSE_GUI */
1214 Section 2: platform-specific checks.
1216 This must be done after checking that everything is defined as the platform
1217 checks use wxUSE_XXX symbols in #if tests.
1220 #if defined(__WXWINCE__)
1221 # include "wx/msw/wince/chkconf.h"
1222 #elif defined(__WINDOWS__)
1223 # include "wx/msw/chkconf.h"
1224 # if defined(__WXGTK__)
1225 # include "wx/gtk/chkconf.h"
1227 #elif defined(__WXGTK__)
1228 # include "wx/gtk/chkconf.h"
1229 #elif defined(__WXCOCOA__)
1230 # include "wx/cocoa/chkconf.h"
1231 #elif defined(__WXMAC__)
1232 # include "wx/osx/chkconf.h"
1233 #elif defined(__OS2__)
1234 # include "wx/os2/chkconf.h"
1235 #elif defined(__WXDFB__)
1236 # include "wx/dfb/chkconf.h"
1237 #elif defined(__WXMOTIF__)
1238 # include "wx/motif/chkconf.h"
1239 #elif defined(__WXX11__)
1240 # include "wx/x11/chkconf.h"
1241 #elif defined(__WXANDROID__)
1242 # include "wx/android/chkconf.h"
1246 __UNIX__ is also defined under Cygwin but we shouldn't perform these checks
1247 there if we're building Windows ports.
1249 #if defined(__UNIX__) && !defined(__WINDOWS__)
1250 # include "wx/unix/chkconf.h"
1253 #ifdef __WXUNIVERSAL__
1254 # include "wx/univ/chkconf.h"
1258 Section 3a: check consistency of the non-GUI settings.
1261 #if WXWIN_COMPATIBILITY_2_6
1262 # if !WXWIN_COMPATIBILITY_2_8
1263 # ifdef wxABORT_ON_CONFIG_ERROR
1264 # error "2.6.X compatibility requires 2.8.X compatibility"
1266 # undef WXWIN_COMPATIBILITY_2_8
1267 # define WXWIN_COMPATIBILITY_2_8 1
1270 #endif /* WXWIN_COMPATIBILITY_2_6 */
1272 #if wxUSE_ARCHIVE_STREAMS
1273 # if !wxUSE_DATETIME
1274 # ifdef wxABORT_ON_CONFIG_ERROR
1275 # error "wxArchive requires wxUSE_DATETIME"
1277 # undef wxUSE_ARCHIVE_STREAMS
1278 # define wxUSE_ARCHIVE_STREAMS 0
1281 #endif /* wxUSE_ARCHIVE_STREAMS */
1283 #if wxUSE_PROTOCOL_FILE || wxUSE_PROTOCOL_FTP || wxUSE_PROTOCOL_HTTP
1284 # if !wxUSE_PROTOCOL
1285 # ifdef wxABORT_ON_CONFIG_ERROR
1286 # error "wxUSE_PROTOCOL_XXX requires wxUSE_PROTOCOL"
1288 # undef wxUSE_PROTOCOL
1289 # define wxUSE_PROTOCOL 1
1292 #endif /* wxUSE_PROTOCOL_XXX */
1295 # if !wxUSE_PROTOCOL
1296 # ifdef wxABORT_ON_CONFIG_ERROR
1297 # error "wxUSE_URL requires wxUSE_PROTOCOL"
1299 # undef wxUSE_PROTOCOL
1300 # define wxUSE_PROTOCOL 1
1303 #endif /* wxUSE_URL */
1307 # if wxUSE_PROTOCOL_HTTP || wxUSE_PROTOCOL_FTP
1308 # ifdef wxABORT_ON_CONFIG_ERROR
1309 # error "wxUSE_PROTOCOL_FTP/HTTP requires wxUSE_SOCKETS"
1311 # undef wxUSE_SOCKETS
1312 # define wxUSE_SOCKETS 1
1318 # ifdef wxABORT_ON_CONFIG_ERROR
1319 # error "wxUSE_PROTOCOL requires wxUSE_STREAMS"
1321 # undef wxUSE_STREAMS
1322 # define wxUSE_STREAMS 1
1325 #endif /* wxUSE_PROTOCOL */
1327 /* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
1329 # if !wxUSE_FILESYSTEM
1330 # ifdef wxABORT_ON_CONFIG_ERROR
1331 # error "wxHTML requires wxFileSystem"
1333 # undef wxUSE_FILESYSTEM
1334 # define wxUSE_FILESYSTEM 1
1337 #endif /* wxUSE_HTML */
1339 #if wxUSE_FS_ARCHIVE
1340 # if !wxUSE_FILESYSTEM
1341 # ifdef wxABORT_ON_CONFIG_ERROR
1342 # error "wxArchiveFSHandler requires wxFileSystem"
1344 # undef wxUSE_FILESYSTEM
1345 # define wxUSE_FILESYSTEM 1
1348 # if !wxUSE_ARCHIVE_STREAMS
1349 # ifdef wxABORT_ON_CONFIG_ERROR
1350 # error "wxArchiveFSHandler requires wxArchive"
1352 # undef wxUSE_ARCHIVE_STREAMS
1353 # define wxUSE_ARCHIVE_STREAMS 1
1356 #endif /* wxUSE_FS_ARCHIVE */
1358 #if wxUSE_FILESYSTEM
1360 # ifdef wxABORT_ON_CONFIG_ERROR
1361 # error "wxUSE_FILESYSTEM requires wxUSE_STREAMS"
1363 # undef wxUSE_STREAMS
1364 # define wxUSE_STREAMS 1
1367 # if !wxUSE_FILE && !wxUSE_FFILE
1368 # ifdef wxABORT_ON_CONFIG_ERROR
1369 # error "wxUSE_FILESYSTEM requires either wxUSE_FILE or wxUSE_FFILE"
1372 # define wxUSE_FILE 1
1374 # define wxUSE_FFILE 1
1377 #endif /* wxUSE_FILESYSTEM */
1380 # if !wxUSE_PROTOCOL
1381 # ifdef wxABORT_ON_CONFIG_ERROR
1382 # error "wxUSE_FS_INET requires wxUSE_PROTOCOL"
1384 # undef wxUSE_PROTOCOL
1385 # define wxUSE_PROTOCOL 1
1388 #endif /* wxUSE_FS_INET */
1390 #if wxUSE_STOPWATCH || wxUSE_DATETIME
1391 # if !wxUSE_LONGLONG
1392 # ifdef wxABORT_ON_CONFIG_ERROR
1393 # error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG"
1395 # undef wxUSE_LONGLONG
1396 # define wxUSE_LONGLONG 1
1399 #endif /* wxUSE_STOPWATCH */
1401 #if wxUSE_MIMETYPE && !wxUSE_TEXTFILE
1402 # ifdef wxABORT_ON_CONFIG_ERROR
1403 # error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE"
1405 # undef wxUSE_TEXTFILE
1406 # define wxUSE_TEXTFILE 1
1408 #endif /* wxUSE_MIMETYPE */
1410 #if wxUSE_TEXTFILE && !wxUSE_TEXTBUFFER
1411 # ifdef wxABORT_ON_CONFIG_ERROR
1412 # error "wxUSE_TEXTFILE requires wxUSE_TEXTBUFFER"
1414 # undef wxUSE_TEXTBUFFER
1415 # define wxUSE_TEXTBUFFER 1
1417 #endif /* wxUSE_TEXTFILE */
1419 #if wxUSE_TEXTFILE && !wxUSE_FILE
1420 # ifdef wxABORT_ON_CONFIG_ERROR
1421 # error "wxUSE_TEXTFILE requires wxUSE_FILE"
1424 # define wxUSE_FILE 1
1426 #endif /* wxUSE_TEXTFILE */
1428 #if !wxUSE_DYNLIB_CLASS
1429 # if wxUSE_DYNAMIC_LOADER
1430 # ifdef wxABORT_ON_CONFIG_ERROR
1431 # error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS."
1433 # define wxUSE_DYNLIB_CLASS 1
1436 #endif /* wxUSE_DYNLIB_CLASS */
1440 # ifdef wxABORT_ON_CONFIG_ERROR
1441 # error "wxZip requires wxZlib"
1444 # define wxUSE_ZLIB 1
1447 # if !wxUSE_ARCHIVE_STREAMS
1448 # ifdef wxABORT_ON_CONFIG_ERROR
1449 # error "wxZip requires wxArchive"
1451 # undef wxUSE_ARCHIVE_STREAMS
1452 # define wxUSE_ARCHIVE_STREAMS 1
1455 #endif /* wxUSE_ZIPSTREAM */
1458 # if !wxUSE_ARCHIVE_STREAMS
1459 # ifdef wxABORT_ON_CONFIG_ERROR
1460 # error "wxTar requires wxArchive"
1462 # undef wxUSE_ARCHIVE_STREAMS
1463 # define wxUSE_ARCHIVE_STREAMS 1
1466 #endif /* wxUSE_TARSTREAM */
1469 Section 3b: the tests for the GUI settings only.
1473 #if wxUSE_ACCESSIBILITY && !defined(__WXMSW__)
1474 # ifdef wxABORT_ON_CONFIG_ERROR
1475 # error "wxUSE_ACCESSIBILITY is currently only supported under wxMSW"
1477 # undef wxUSE_ACCESSIBILITY
1478 # define wxUSE_ACCESSIBILITY 0
1480 #endif /* wxUSE_ACCESSIBILITY */
1482 #if wxUSE_BUTTON || \
1483 wxUSE_CALENDARCTRL || \
1486 wxUSE_BMPBUTTON || \
1488 wxUSE_CHECKLISTBOX || \
1492 wxUSE_HEADERCTRL || \
1498 wxUSE_REARRANGECTRL || \
1499 wxUSE_SCROLLBAR || \
1507 wxUSE_STATUSBAR || \
1512 # if !wxUSE_CONTROLS
1513 # ifdef wxABORT_ON_CONFIG_ERROR
1514 # error "wxUSE_CONTROLS unset but some controls used"
1516 # undef wxUSE_CONTROLS
1517 # define wxUSE_CONTROLS 1
1520 #endif /* controls */
1524 # ifdef wxABORT_ON_CONFIG_ERROR
1525 # error "wxUSE_BMPBUTTON requires wxUSE_BUTTON"
1527 # undef wxUSE_BUTTON
1528 # define wxUSE_BUTTON 1
1531 #endif /* wxUSE_BMPBUTTON */
1533 #if wxUSE_COMMANDLINKBUTTON
1535 # ifdef wxABORT_ON_CONFIG_ERROR
1536 # error "wxUSE_COMMANDLINKBUTTON requires wxUSE_BUTTON"
1538 # undef wxUSE_BUTTON
1539 # define wxUSE_BUTTON 1
1542 #endif /* wxUSE_COMMANDLINKBUTTON */
1545 wxUSE_BOOKCTRL should be only used if any of the controls deriving from it
1548 #ifdef wxUSE_BOOKCTRL
1549 # ifdef wxABORT_ON_CONFIG_ERROR
1550 # error "wxUSE_BOOKCTRL is defined automatically, don't define it"
1552 # undef wxUSE_BOOKCTRL
1556 #define wxUSE_BOOKCTRL (wxUSE_NOTEBOOK || \
1558 wxUSE_CHOICEBOOK || \
1563 # if !wxUSE_BUTTON || !wxUSE_STATLINE
1564 # ifdef wxABORT_ON_CONFIG_ERROR
1565 # error "wxUSE_COLLPANE requires wxUSE_BUTTON and wxUSE_STATLINE"
1567 # undef wxUSE_COLLPANE
1568 # define wxUSE_COLLPANE 0
1571 #endif /* wxUSE_COLLPANE */
1574 # if !wxUSE_LISTCTRL
1575 # ifdef wxABORT_ON_CONFIG_ERROR
1576 # error "wxListbook requires wxListCtrl"
1578 # undef wxUSE_LISTCTRL
1579 # define wxUSE_LISTCTRL 1
1582 #endif /* wxUSE_LISTBOOK */
1584 #if wxUSE_CHOICEBOOK
1586 # ifdef wxABORT_ON_CONFIG_ERROR
1587 # error "wxChoicebook requires wxChoice"
1589 # undef wxUSE_CHOICE
1590 # define wxUSE_CHOICE 1
1593 #endif /* wxUSE_CHOICEBOOK */
1597 # ifdef wxABORT_ON_CONFIG_ERROR
1598 # error "wxToolbook requires wxToolBar"
1600 # undef wxUSE_TOOLBAR
1601 # define wxUSE_TOOLBAR 1
1604 #endif /* wxUSE_TOOLBOOK */
1606 #if !wxUSE_ODCOMBOBOX
1607 # if wxUSE_BITMAPCOMBOBOX
1608 # ifdef wxABORT_ON_CONFIG_ERROR
1609 # error "wxBitmapComboBox requires wxOwnerDrawnComboBox"
1611 # undef wxUSE_BITMAPCOMBOBOX
1612 # define wxUSE_BITMAPCOMBOBOX 0
1615 #endif /* !wxUSE_ODCOMBOBOX */
1617 #if !wxUSE_HEADERCTRL
1618 # if wxUSE_DATAVIEWCTRL || wxUSE_GRID
1619 # ifdef wxABORT_ON_CONFIG_ERROR
1620 # error "wxDataViewCtrl and wxGrid require wxHeaderCtrl"
1622 # undef wxUSE_HEADERCTRL
1623 # define wxUSE_HEADERCTRL 1
1626 #endif /* !wxUSE_HEADERCTRL */
1628 #if wxUSE_REARRANGECTRL
1629 # if !wxUSE_CHECKLISTBOX
1630 # ifdef wxABORT_ON_CONFIG_ERROR
1631 # error "wxRearrangeCtrl requires wxCheckListBox"
1633 # undef wxUSE_REARRANGECTRL
1634 # define wxUSE_REARRANGECTRL 0
1637 #endif /* wxUSE_REARRANGECTRL */
1639 #if wxUSE_RICHMSGDLG
1641 # ifdef wxABORT_ON_CONFIG_ERROR
1642 # error "wxUSE_RICHMSGDLG requires wxUSE_MSGDLG"
1644 # undef wxUSE_MSGDLG
1645 # define wxUSE_MSGDLG 1
1648 #endif /* wxUSE_RICHMSGDLG */
1650 /* don't attempt to use native status bar on the platforms not having it */
1651 #ifndef wxUSE_NATIVE_STATUSBAR
1652 # define wxUSE_NATIVE_STATUSBAR 0
1653 #elif wxUSE_NATIVE_STATUSBAR
1654 # if defined(__WXUNIVERSAL__) || !(defined(__WXMSW__) || defined(__WXMAC__))
1655 # undef wxUSE_NATIVE_STATUSBAR
1656 # define wxUSE_NATIVE_STATUSBAR 0
1660 #if wxUSE_GRAPHICS_CONTEXT && !wxUSE_GEOMETRY
1661 # ifdef wxABORT_ON_CONFIG_ERROR
1662 # error "wxUSE_GRAPHICS_CONTEXT requires wxUSE_GEOMETRY"
1664 # undef wxUSE_GRAPHICS_CONTEXT
1665 # define wxUSE_GRAPHICS_CONTEXT 0
1667 #endif /* wxUSE_GRAPHICS_CONTEXT */
1670 /* generic controls dependencies */
1671 #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
1672 # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
1673 /* all common controls are needed by these dialogs */
1674 # if !defined(wxUSE_CHOICE) || \
1675 !defined(wxUSE_TEXTCTRL) || \
1676 !defined(wxUSE_BUTTON) || \
1677 !defined(wxUSE_CHECKBOX) || \
1678 !defined(wxUSE_STATTEXT)
1679 # ifdef wxABORT_ON_CONFIG_ERROR
1680 # error "These common controls are needed by common dialogs"
1682 # undef wxUSE_CHOICE
1683 # define wxUSE_CHOICE 1
1684 # undef wxUSE_TEXTCTRL
1685 # define wxUSE_TEXTCTRL 1
1686 # undef wxUSE_BUTTON
1687 # define wxUSE_BUTTON 1
1688 # undef wxUSE_CHECKBOX
1689 # define wxUSE_CHECKBOX 1
1690 # undef wxUSE_STATTEXT
1691 # define wxUSE_STATTEXT 1
1695 #endif /* !wxMSW || wxUniv */
1697 /* generic file dialog depends on (generic) file control */
1698 #if wxUSE_FILEDLG && !wxUSE_FILECTRL && \
1699 (defined(__WXUNIVERSAL__) || defined(__WXGTK__))
1700 # ifdef wxABORT_ON_CONFIG_ERROR
1701 # error "Generic wxFileDialog requires wxFileCtrl"
1703 # undef wxUSE_FILECTRL
1704 # define wxUSE_FILECTRL 1
1706 #endif /* wxUSE_FILEDLG */
1708 /* common dependencies */
1709 #if wxUSE_ARTPROVIDER_TANGO
1710 # if !(wxUSE_STREAMS && wxUSE_IMAGE && wxUSE_LIBPNG)
1711 # ifdef wxABORT_ON_CONFIG_ERROR
1712 # error "Tango art provider requires wxImage with streams and PNG support"
1714 # undef wxUSE_ARTPROVIDER_TANGO
1715 # define wxUSE_ARTPROVIDER_TANGO 0
1718 #endif /* wxUSE_ARTPROVIDER_TANGO */
1720 #if wxUSE_CALENDARCTRL
1721 # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX)
1722 # ifdef wxABORT_ON_CONFIG_ERROR
1723 # error "wxCalendarCtrl requires wxSpinButton and wxComboBox"
1725 # undef wxUSE_SPINBTN
1726 # undef wxUSE_COMBOBOX
1727 # define wxUSE_SPINBTN 1
1728 # define wxUSE_COMBOBOX 1
1732 # if !wxUSE_DATETIME
1733 # ifdef wxABORT_ON_CONFIG_ERROR
1734 # error "wxCalendarCtrl requires wxUSE_DATETIME"
1736 # undef wxUSE_DATETIME
1737 # define wxUSE_DATETIME 1
1740 #endif /* wxUSE_CALENDARCTRL */
1742 #if wxUSE_DATEPICKCTRL || wxUSE_TIMEPICKCTRL
1743 # if !wxUSE_DATETIME
1744 # ifdef wxABORT_ON_CONFIG_ERROR
1745 # error "wxDatePickerCtrl and wxTimePickerCtrl requires wxUSE_DATETIME"
1747 # undef wxUSE_DATETIME
1748 # define wxUSE_DATETIME 1
1751 #endif /* wxUSE_DATEPICKCTRL || wxUSE_TIMEPICKCTRL */
1753 #if wxUSE_CHECKLISTBOX
1755 # ifdef wxABORT_ON_CONFIG_ERROR
1756 # error "wxCheckListBox requires wxListBox"
1758 # undef wxUSE_LISTBOX
1759 # define wxUSE_LISTBOX 1
1762 #endif /* wxUSE_CHECKLISTBOX */
1766 # ifdef wxABORT_ON_CONFIG_ERROR
1767 # error "Choice dialogs requires wxListBox"
1769 # undef wxUSE_LISTBOX
1770 # define wxUSE_LISTBOX 1
1773 #endif /* wxUSE_CHOICEDLG */
1776 # if !wxUSE_DATETIME
1777 # ifdef wxABORT_ON_CONFIG_ERROR
1778 # error "wxFileCtrl requires wxDateTime"
1780 # undef wxUSE_DATETIME
1781 # define wxUSE_DATETIME 1
1784 #endif /* wxUSE_FILECTRL */
1787 # if !wxUSE_BMPBUTTON
1788 # ifdef wxABORT_ON_CONFIG_ERROR
1789 # error "wxUSE_HELP requires wxUSE_BMPBUTTON"
1791 # undef wxUSE_BMPBUTTON
1792 # define wxUSE_BMPBUTTON 1
1796 # if !wxUSE_CHOICEDLG
1797 # ifdef wxABORT_ON_CONFIG_ERROR
1798 # error "wxUSE_HELP requires wxUSE_CHOICEDLG"
1800 # undef wxUSE_CHOICEDLG
1801 # define wxUSE_CHOICEDLG 1
1804 #endif /* wxUSE_HELP */
1806 #if wxUSE_MS_HTML_HELP
1808 this doesn't make sense for platforms other than MSW but we still
1809 define it in wx/setup_inc.h so don't complain if it happens to be
1810 defined under another platform but just silently fix it.
1813 # undef wxUSE_MS_HTML_HELP
1814 # define wxUSE_MS_HTML_HELP 0
1816 #endif /* wxUSE_MS_HTML_HELP */
1818 #if wxUSE_WXHTML_HELP
1819 # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK || !wxUSE_SPINCTRL
1820 # ifdef wxABORT_ON_CONFIG_ERROR
1821 # error "Built in help controller can't be compiled"
1824 # define wxUSE_HELP 1
1826 # define wxUSE_HTML 1
1827 # undef wxUSE_COMBOBOX
1828 # define wxUSE_COMBOBOX 1
1829 # undef wxUSE_NOTEBOOK
1830 # define wxUSE_NOTEBOOK 1
1831 # undef wxUSE_SPINCTRL
1832 # define wxUSE_SPINCTRL 1
1835 #endif /* wxUSE_WXHTML_HELP */
1839 The default wxUSE_IMAGE setting is 1, so if it's set to 0 we assume the
1840 user explicitly wants this and disable all other features that require
1843 # if wxUSE_DRAGIMAGE
1844 # ifdef wxABORT_ON_CONFIG_ERROR
1845 # error "wxUSE_DRAGIMAGE requires wxUSE_IMAGE"
1847 # undef wxUSE_DRAGIMAGE
1848 # define wxUSE_DRAGIMAGE 0
1853 # ifdef wxABORT_ON_CONFIG_ERROR
1854 # error "wxUSE_LIBPNG requires wxUSE_IMAGE"
1856 # undef wxUSE_LIBPNG
1857 # define wxUSE_LIBPNG 0
1862 # ifdef wxABORT_ON_CONFIG_ERROR
1863 # error "wxUSE_LIBJPEG requires wxUSE_IMAGE"
1865 # undef wxUSE_LIBJPEG
1866 # define wxUSE_LIBJPEG 0
1871 # ifdef wxABORT_ON_CONFIG_ERROR
1872 # error "wxUSE_LIBTIFF requires wxUSE_IMAGE"
1874 # undef wxUSE_LIBTIFF
1875 # define wxUSE_LIBTIFF 0
1880 # ifdef wxABORT_ON_CONFIG_ERROR
1881 # error "wxUSE_GIF requires wxUSE_IMAGE"
1884 # define wxUSE_GIF 0
1889 # ifdef wxABORT_ON_CONFIG_ERROR
1890 # error "wxUSE_PNM requires wxUSE_IMAGE"
1893 # define wxUSE_PNM 0
1898 # ifdef wxABORT_ON_CONFIG_ERROR
1899 # error "wxUSE_PCX requires wxUSE_IMAGE"
1902 # define wxUSE_PCX 0
1907 # ifdef wxABORT_ON_CONFIG_ERROR
1908 # error "wxUSE_IFF requires wxUSE_IMAGE"
1911 # define wxUSE_IFF 0
1916 # ifdef wxABORT_ON_CONFIG_ERROR
1917 # error "wxUSE_TOOLBAR requires wxUSE_IMAGE"
1919 # undef wxUSE_TOOLBAR
1920 # define wxUSE_TOOLBAR 0
1925 # ifdef wxABORT_ON_CONFIG_ERROR
1926 # error "wxUSE_XPM requires wxUSE_IMAGE"
1929 # define wxUSE_XPM 0
1933 #endif /* !wxUSE_IMAGE */
1935 #if wxUSE_DOC_VIEW_ARCHITECTURE
1937 # ifdef wxABORT_ON_CONFIG_ERROR
1938 # error "DocView requires wxUSE_MENUS"
1941 # define wxUSE_MENUS 1
1945 # if !wxUSE_CHOICEDLG
1946 # ifdef wxABORT_ON_CONFIG_ERROR
1947 # error "DocView requires wxUSE_CHOICEDLG"
1949 # undef wxUSE_CHOICEDLG
1950 # define wxUSE_CHOICEDLG 1
1954 # if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM
1955 # ifdef wxABORT_ON_CONFIG_ERROR
1956 # error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM"
1958 # undef wxUSE_STREAMS
1959 # define wxUSE_STREAMS 1
1963 # if !wxUSE_FILE_HISTORY
1964 # ifdef wxABORT_ON_CONFIG_ERROR
1965 # error "DocView requires wxUSE_FILE_HISTORY"
1967 # undef wxUSE_FILE_HISTORY
1968 # define wxUSE_FILE_HISTORY 1
1971 #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
1973 #if wxUSE_PRINTING_ARCHITECTURE
1974 # if !wxUSE_COMBOBOX
1975 # ifdef wxABORT_ON_CONFIG_ERROR
1976 # error "Print dialog requires wxUSE_COMBOBOX"
1978 # undef wxUSE_COMBOBOX
1979 # define wxUSE_COMBOBOX 1
1982 #endif /* wxUSE_PRINTING_ARCHITECTURE */
1984 #if wxUSE_MDI_ARCHITECTURE
1986 # ifdef wxABORT_ON_CONFIG_ERROR
1987 # error "MDI requires wxUSE_MDI"
1990 # define wxUSE_MDI 1
1994 # if !wxUSE_DOC_VIEW_ARCHITECTURE
1995 # ifdef wxABORT_ON_CONFIG_ERROR
1996 # error "wxUSE_MDI_ARCHITECTURE requires wxUSE_DOC_VIEW_ARCHITECTURE"
1998 # undef wxUSE_DOC_VIEW_ARCHITECTURE
1999 # define wxUSE_DOC_VIEW_ARCHITECTURE 1
2002 #endif /* wxUSE_MDI_ARCHITECTURE */
2005 # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP
2006 # ifdef wxABORT_ON_CONFIG_ERROR
2007 # error "wxUSE_FILEDLG is required by wxUSE_DOC_VIEW_ARCHITECTURE and wxUSE_WXHTML_HELP!"
2009 # undef wxUSE_FILEDLG
2010 # define wxUSE_FILEDLG 1
2013 #endif /* wxUSE_FILEDLG */
2015 #if !wxUSE_GAUGE || !wxUSE_BUTTON
2016 # if wxUSE_PROGRESSDLG
2017 # ifdef wxABORT_ON_CONFIG_ERROR
2018 # error "Generic progress dialog requires wxUSE_GAUGE and wxUSE_BUTTON"
2021 # undef wxUSE_BUTTON
2022 # define wxUSE_GAUGE 1
2023 # define wxUSE_BUTTON 1
2026 #endif /* !wxUSE_GAUGE */
2029 # if wxUSE_FONTDLG || \
2031 wxUSE_CHOICEDLG || \
2032 wxUSE_NUMBERDLG || \
2035 wxUSE_STARTUP_TIPS || \
2037 # ifdef wxABORT_ON_CONFIG_ERROR
2038 # error "Common and generic dialogs require wxUSE_BUTTON"
2040 # undef wxUSE_BUTTON
2041 # define wxUSE_BUTTON 1
2044 #endif /* !wxUSE_BUTTON */
2047 # if wxUSE_TOOLBAR_NATIVE
2048 # ifdef wxABORT_ON_CONFIG_ERROR
2049 # error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_NATIVE is set to 1"
2051 # undef wxUSE_TOOLBAR_NATIVE
2052 # define wxUSE_TOOLBAR_NATIVE 0
2058 # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL || wxUSE_TREELISTCTRL
2059 # ifdef wxABORT_ON_CONFIG_ERROR
2060 # error "wxImageList must be compiled as well"
2062 # undef wxUSE_IMAGLIST
2063 # define wxUSE_IMAGLIST 1
2066 #endif /* !wxUSE_IMAGLIST */
2069 # if !wxUSE_RADIOBTN
2070 # ifdef wxABORT_ON_CONFIG_ERROR
2071 # error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN"
2073 # undef wxUSE_RADIOBTN
2074 # define wxUSE_RADIOBTN 1
2078 # ifdef wxABORT_ON_CONFIG_ERROR
2079 # error "wxUSE_RADIOBOX requires wxUSE_STATBOX"
2081 # undef wxUSE_STATBOX
2082 # define wxUSE_STATBOX 1
2085 #endif /* wxUSE_RADIOBOX */
2088 # if !wxUSE_TEXTCTRL
2089 # ifdef wxABORT_ON_CONFIG_ERROR
2090 # error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL"
2092 # undef wxUSE_TEXTCTRL
2093 # define wxUSE_TEXTCTRL 1
2096 #endif /* wxUSE_LOGWINDOW */
2098 #if wxUSE_LOG_DIALOG
2099 # if !wxUSE_LISTCTRL || !wxUSE_BUTTON
2100 # ifdef wxABORT_ON_CONFIG_ERROR
2101 # error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL and wxUSE_BUTTON"
2103 # undef wxUSE_LISTCTRL
2104 # define wxUSE_LISTCTRL 1
2105 # undef wxUSE_BUTTON
2106 # define wxUSE_BUTTON 1
2109 #endif /* wxUSE_LOG_DIALOG */
2111 #if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ
2112 # ifdef wxABORT_ON_CONFIG_ERROR
2113 # error "wxClipboard requires wxDataObject"
2115 # undef wxUSE_DATAOBJ
2116 # define wxUSE_DATAOBJ 1
2118 #endif /* wxUSE_CLIPBOARD */
2120 #if wxUSE_XRC && !wxUSE_XML
2121 # ifdef wxABORT_ON_CONFIG_ERROR
2122 # error "wxUSE_XRC requires wxUSE_XML"
2125 # define wxUSE_XRC 0
2127 #endif /* wxUSE_XRC */
2129 #if wxUSE_SOCKETS && !wxUSE_STOPWATCH
2130 # ifdef wxABORT_ON_CONFIG_ERROR
2131 # error "wxUSE_SOCKETS requires wxUSE_STOPWATCH"
2133 # undef wxUSE_SOCKETS
2134 # define wxUSE_SOCKETS 0
2136 #endif /* wxUSE_SOCKETS */
2138 #if wxUSE_SVG && !wxUSE_STREAMS
2139 # ifdef wxABORT_ON_CONFIG_ERROR
2140 # error "wxUSE_SVG requires wxUSE_STREAMS"
2143 # define wxUSE_SVG 0
2145 #endif /* wxUSE_SVG */
2147 #if wxUSE_SVG && !wxUSE_IMAGE
2148 # ifdef wxABORT_ON_CONFIG_ERROR
2149 # error "wxUSE_SVG requires wxUSE_IMAGE"
2152 # define wxUSE_SVG 0
2154 #endif /* wxUSE_SVG */
2156 #if wxUSE_SVG && !wxUSE_LIBPNG
2157 # ifdef wxABORT_ON_CONFIG_ERROR
2158 # error "wxUSE_SVG requires wxUSE_LIBPNG"
2161 # define wxUSE_SVG 0
2163 #endif /* wxUSE_SVG */
2165 #if wxUSE_TASKBARICON && !wxUSE_MENUS
2166 # ifdef wxABORT_ON_CONFIG_ERROR
2167 # error "wxUSE_TASKBARICON requires wxUSE_MENUS"
2169 # undef wxUSE_TASKBARICON
2170 # define wxUSE_TASKBARICON 0
2172 #endif /* wxUSE_TASKBARICON */
2175 # if wxUSE_DATAVIEWCTRL
2176 # ifdef wxABORT_ON_CONFIG_ERROR
2177 # error "wxDataViewCtrl requires wxVariant"
2179 # undef wxUSE_DATAVIEWCTRL
2180 # define wxUSE_DATAVIEWCTRL 0
2183 #endif /* wxUSE_VARIANT */
2185 #if wxUSE_TREELISTCTRL && !wxUSE_DATAVIEWCTRL
2186 # ifdef wxABORT_ON_CONFIG_ERROR
2187 # error "wxUSE_TREELISTCTRL requires wxDataViewCtrl"
2189 # undef wxUSE_TREELISTCTRL
2190 # define wxUSE_TREELISTCTRL 0
2192 #endif /* wxUSE_TREELISTCTRL */
2194 #if wxUSE_WEBVIEW && !(wxUSE_WEBVIEW_WEBKIT || wxUSE_WEBVIEW_IE)
2195 # ifdef wxABORT_ON_CONFIG_ERROR
2196 # error "wxUSE_WEBVIEW requires at least one backend"
2198 # undef wxUSE_WEBVIEW
2199 # define wxUSE_WEBVIEW 0
2201 #endif /* wxUSE_WEBVIEW && !any web view backend */
2203 #if wxUSE_PREFERENCES_EDITOR
2205 We can use either a generic implementation, using wxNotebook, or a
2206 native one under wxOSX/Cocoa but then we must be using the native
2209 # if !wxUSE_NOTEBOOK
2210 # ifdef __WXOSX_COCOA__
2211 # if !wxUSE_TOOLBAR || !wxOSX_USE_NATIVE_TOOLBAR
2212 # if wxABORT_ON_CONFIG_ERROR
2213 # error "wxUSE_PREFERENCES_EDITOR requires native toolbar in wxOSX"
2215 # undef wxUSE_PREFERENCES_EDITOR
2216 # define wxUSE_PREFERENCES_EDITOR 0
2220 # if wxABORT_ON_CONFIG_ERROR
2221 # error "wxUSE_PREFERENCES_EDITOR requires wxNotebook"
2223 # undef wxUSE_PREFERENCES_EDITOR
2224 # define wxUSE_PREFERENCES_EDITOR 0
2228 #endif /* wxUSE_PREFERENCES_EDITOR */
2230 #endif /* wxUSE_GUI */
2232 #endif /* _WX_CHKCONF_H_ */