]>
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@wxwindows.org>
9 * Licence: wxWindows license
12 /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
15 this global setting determintes what should we do if the setting FOO
16 requires BAR and BAR is not set: we can either silently define BAR
17 (default, recommended) or give an error and abort (mainly useful for
20 #define wxABORT_ON_CONFIG_ERROR
23 all these tests are for GUI onlu
28 all of the settings tested below must be defined or we'd get an error from
29 preprocessor about invalid integer expression
33 # ifdef wxABORT_ON_CONFIG_ERROR
34 # error "wxUSE_ACCEL must be defined."
36 # define wxUSE_ACCEL 0
38 #endif /* !defined(wxUSE_ACCEL) */
40 #ifndef wxUSE_BMPBUTTON
41 # ifdef wxABORT_ON_CONFIG_ERROR
42 # error "wxUSE_BMPBUTTON must be defined."
44 # define wxUSE_BMPBUTTON 0
46 #endif /* !defined(wxUSE_BMPBUTTON) */
49 # ifdef wxABORT_ON_CONFIG_ERROR
50 # error "wxUSE_BUTTON must be defined."
52 # define wxUSE_BUTTON 0
54 #endif /* !defined(wxUSE_BUTTON) */
56 #ifndef wxUSE_CALENDARCTRL
57 # ifdef wxABORT_ON_CONFIG_ERROR
58 # error "wxUSE_CALENDARCTRL must be defined."
60 # define wxUSE_CALENDARCTRL 0
62 #endif /* !defined(wxUSE_CALENDARCTRL) */
65 # ifdef wxABORT_ON_CONFIG_ERROR
66 # error "wxUSE_CARET must be defined."
68 # define wxUSE_CARET 0
70 #endif /* !defined(wxUSE_CARET) */
72 #ifndef wxUSE_CHECKBOX
73 # ifdef wxABORT_ON_CONFIG_ERROR
74 # error "wxUSE_CHECKBOX must be defined."
76 # define wxUSE_CHECKBOX 0
78 #endif /* !defined(wxUSE_CHECKBOX) */
80 #ifndef wxUSE_CHECKLISTBOX
81 # ifdef wxABORT_ON_CONFIG_ERROR
82 # error "wxUSE_CHECKLISTBOX must be defined."
84 # define wxUSE_CHECKLISTBOX 0
86 #endif /* !defined(wxUSE_CHECKLISTBOX) */
89 # ifdef wxABORT_ON_CONFIG_ERROR
90 # error "wxUSE_CHOICE must be defined."
92 # define wxUSE_CHOICE 0
94 #endif /* !defined(wxUSE_CHOICE) */
96 #ifndef wxUSE_CHOICEDLG
97 # ifdef wxABORT_ON_CONFIG_ERROR
98 # error "wxUSE_CHOICEDLG must be defined."
100 # define wxUSE_CHOICEDLG 0
102 #endif /* !defined(wxUSE_CHOICEDLG) */
104 #ifndef wxUSE_CLIPBOARD
105 # ifdef wxABORT_ON_CONFIG_ERROR
106 # error "wxUSE_CLIPBOARD must be defined."
108 # define wxUSE_CLIPBOARD 0
110 #endif /* !defined(wxUSE_CLIPBOARD) */
112 #ifndef wxUSE_COLOURDLG
113 # ifdef wxABORT_ON_CONFIG_ERROR
114 # error "wxUSE_COLOURDLG must be defined."
116 # define wxUSE_COLOURDLG 0
118 #endif /* !defined(wxUSE_COLOURDLG) */
120 #ifndef wxUSE_COMBOBOX
121 # ifdef wxABORT_ON_CONFIG_ERROR
122 # error "wxUSE_COMBOBOX must be defined."
124 # define wxUSE_COMBOBOX 0
126 #endif /* !defined(wxUSE_COMBOBOX) */
128 #ifndef wxUSE_DATAOBJ
129 # ifdef wxABORT_ON_CONFIG_ERROR
130 # error "wxUSE_DATAOBJ must be defined."
132 # define wxUSE_DATAOBJ 0
134 #endif /* !defined(wxUSE_DATAOBJ) */
136 #ifndef wxUSE_DOC_VIEW_ARCHITECTURE
137 # ifdef wxABORT_ON_CONFIG_ERROR
138 # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
140 # define wxUSE_DOC_VIEW_ARCHITECTURE 0
142 #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */
144 #ifndef wxUSE_FILEDLG
145 # ifdef wxABORT_ON_CONFIG_ERROR
146 # error "wxUSE_FILEDLG must be defined."
148 # define wxUSE_FILEDLG 0
150 #endif /* !defined(wxUSE_FILEDLG) */
152 #ifndef wxUSE_FONTDLG
153 # ifdef wxABORT_ON_CONFIG_ERROR
154 # error "wxUSE_FONTDLG must be defined."
156 # define wxUSE_FONTDLG 0
158 #endif /* !defined(wxUSE_FONTDLG) */
160 #ifndef wxUSE_FONTMAP
161 # ifdef wxABORT_ON_CONFIG_ERROR
162 # error "wxUSE_FONTMAP must be defined."
164 # define wxUSE_FONTMAP 0
166 #endif /* !defined(wxUSE_FONTMAP) */
169 # ifdef wxABORT_ON_CONFIG_ERROR
170 # error "wxUSE_GAUGE must be defined."
172 # define wxUSE_GAUGE 0
174 #endif /* !defined(wxUSE_GAUGE) */
177 # ifdef wxABORT_ON_CONFIG_ERROR
178 # error "wxUSE_GRID must be defined."
180 # define wxUSE_GRID 0
182 #endif /* !defined(wxUSE_GRID) */
185 # ifdef wxABORT_ON_CONFIG_ERROR
186 # error "wxUSE_HELP must be defined."
188 # define wxUSE_HELP 0
190 #endif /* !defined(wxUSE_HELP) */
193 # ifdef wxABORT_ON_CONFIG_ERROR
194 # error "wxUSE_HTML must be defined."
196 # define wxUSE_HTML 0
198 #endif /* !defined(wxUSE_HTML) */
200 #ifndef wxUSE_IMAGLIST
201 # ifdef wxABORT_ON_CONFIG_ERROR
202 # error "wxUSE_IMAGLIST must be defined."
204 # define wxUSE_IMAGLIST 0
206 #endif /* !defined(wxUSE_IMAGLIST) */
208 #ifndef wxUSE_JOYSTICK
209 # ifdef wxABORT_ON_CONFIG_ERROR
210 # error "wxUSE_JOYSTICK must be defined."
212 # define wxUSE_JOYSTICK 0
214 #endif /* !defined(wxUSE_JOYSTICK) */
216 #ifndef wxUSE_LISTBOX
217 # ifdef wxABORT_ON_CONFIG_ERROR
218 # error "wxUSE_LISTBOX must be defined."
220 # define wxUSE_LISTBOX 0
222 #endif /* !defined(wxUSE_LISTBOX) */
224 #ifndef wxUSE_LISTCTRL
225 # ifdef wxABORT_ON_CONFIG_ERROR
226 # error "wxUSE_LISTCTRL must be defined."
228 # define wxUSE_LISTCTRL 0
230 #endif /* !defined(wxUSE_LISTCTRL) */
233 # ifdef wxABORT_ON_CONFIG_ERROR
234 # error "wxUSE_LOG must be defined."
238 #endif /* !defined(wxUSE_LOG) */
241 # ifdef wxABORT_ON_CONFIG_ERROR
242 # error "wxUSE_LOGGUI must be defined."
244 # define wxUSE_LOGGUI 0
246 #endif /* !defined(wxUSE_LOGGUI) */
248 #ifndef wxUSE_LOGWINDOW
249 # ifdef wxABORT_ON_CONFIG_ERROR
250 # error "wxUSE_LOGWINDOW must be defined."
252 # define wxUSE_LOGWINDOW 0
254 #endif /* !defined(wxUSE_LOGWINDOW) */
256 #ifndef wxUSE_LOG_DIALOG
257 # ifdef wxABORT_ON_CONFIG_ERROR
258 # error "wxUSE_LOG_DIALOG must be defined."
260 # define wxUSE_LOG_DIALOG 0
262 #endif /* !defined(wxUSE_LOG_DIALOG) */
264 #ifndef wxUSE_MDI_ARCHITECTURE
265 # ifdef wxABORT_ON_CONFIG_ERROR
266 # error "wxUSE_MDI_ARCHITECTURE must be defined."
268 # define wxUSE_MDI_ARCHITECTURE 0
270 #endif /* !defined(wxUSE_MDI_ARCHITECTURE) */
273 # ifdef wxABORT_ON_CONFIG_ERROR
274 # error "wxUSE_MENUS must be defined."
276 # define wxUSE_MENUS 0
278 #endif /* !defined(wxUSE_MENUS) */
280 #ifndef wxUSE_MIMETYPE
281 # ifdef wxABORT_ON_CONFIG_ERROR
282 # error "wxUSE_MIMETYPE must be defined."
284 # define wxUSE_MIMETYPE 0
286 #endif /* !defined(wxUSE_MIMETYPE) */
289 # ifdef wxABORT_ON_CONFIG_ERROR
290 # error "wxUSE_MSGDLG must be defined."
292 # define wxUSE_MSGDLG 0
294 #endif /* !defined(wxUSE_MSGDLG) */
296 #ifndef wxUSE_NEW_GRID
297 # ifdef wxABORT_ON_CONFIG_ERROR
298 # error "wxUSE_NEW_GRID must be defined."
300 # define wxUSE_NEW_GRID 0
302 #endif /* !defined(wxUSE_NEW_GRID) */
304 #ifndef wxUSE_NOTEBOOK
305 # ifdef wxABORT_ON_CONFIG_ERROR
306 # error "wxUSE_NOTEBOOK must be defined."
308 # define wxUSE_NOTEBOOK 0
310 #endif /* !defined(wxUSE_NOTEBOOK) */
312 #ifndef wxUSE_PALETTE
313 # ifdef wxABORT_ON_CONFIG_ERROR
314 # error "wxUSE_PALETTE must be defined."
316 # define wxUSE_PALETTE 0
318 #endif /* !defined(wxUSE_PALETTE) */
320 #ifndef wxUSE_POPUPWIN
321 # ifdef wxABORT_ON_CONFIG_ERROR
322 # error "wxUSE_POPUPWIN must be defined."
324 # define wxUSE_POPUPWIN 0
326 #endif /* !defined(wxUSE_POPUPWIN) */
328 #ifndef wxUSE_PRINTING_ARCHITECTURE
329 # ifdef wxABORT_ON_CONFIG_ERROR
330 # error "wxUSE_PRINTING_ARCHITECTURE must be defined."
332 # define wxUSE_PRINTING_ARCHITECTURE 0
334 #endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */
336 #ifndef wxUSE_RADIOBOX
337 # ifdef wxABORT_ON_CONFIG_ERROR
338 # error "wxUSE_RADIOBOX must be defined."
340 # define wxUSE_RADIOBOX 0
342 #endif /* !defined(wxUSE_RADIOBOX) */
344 #ifndef wxUSE_RADIOBTN
345 # ifdef wxABORT_ON_CONFIG_ERROR
346 # error "wxUSE_RADIOBTN must be defined."
348 # define wxUSE_RADIOBTN 0
350 #endif /* !defined(wxUSE_RADIOBTN) */
353 # ifdef wxABORT_ON_CONFIG_ERROR
354 # error "wxUSE_REGEX must be defined."
356 # define wxUSE_REGEX 0
358 #endif /* !defined(wxUSE_REGEX) */
361 # ifdef wxABORT_ON_CONFIG_ERROR
362 # error "wxUSE_SASH must be defined."
364 # define wxUSE_SASH 0
366 #endif /* !defined(wxUSE_SASH) */
368 #ifndef wxUSE_SCROLLBAR
369 # ifdef wxABORT_ON_CONFIG_ERROR
370 # error "wxUSE_SCROLLBAR must be defined."
372 # define wxUSE_SCROLLBAR 0
374 #endif /* !defined(wxUSE_SCROLLBAR) */
377 # ifdef wxABORT_ON_CONFIG_ERROR
378 # error "wxUSE_SLIDER must be defined."
380 # define wxUSE_SLIDER 0
382 #endif /* !defined(wxUSE_SLIDER) */
384 #ifndef wxUSE_SPINBTN
385 # ifdef wxABORT_ON_CONFIG_ERROR
386 # error "wxUSE_SPINBTN must be defined."
388 # define wxUSE_SPINBTN 0
390 #endif /* !defined(wxUSE_SPINBTN) */
392 #ifndef wxUSE_SPINCTRL
393 # ifdef wxABORT_ON_CONFIG_ERROR
394 # error "wxUSE_SPINCTRL must be defined."
396 # define wxUSE_SPINCTRL 0
398 #endif /* !defined(wxUSE_SPINCTRL) */
401 # ifdef wxABORT_ON_CONFIG_ERROR
402 # error "wxUSE_SPLASH must be defined."
404 # define wxUSE_SPLASH 0
406 #endif /* !defined(wxUSE_SPLASH) */
408 #ifndef wxUSE_SPLITTER
409 # ifdef wxABORT_ON_CONFIG_ERROR
410 # error "wxUSE_SPLITTER must be defined."
412 # define wxUSE_SPLITTER 0
414 #endif /* !defined(wxUSE_SPLITTER) */
416 #ifndef wxUSE_STATBMP
417 # ifdef wxABORT_ON_CONFIG_ERROR
418 # error "wxUSE_STATBMP must be defined."
420 # define wxUSE_STATBMP 0
422 #endif /* !defined(wxUSE_STATBMP) */
424 #ifndef wxUSE_STATBOX
425 # ifdef wxABORT_ON_CONFIG_ERROR
426 # error "wxUSE_STATBOX must be defined."
428 # define wxUSE_STATBOX 0
430 #endif /* !defined(wxUSE_STATBOX) */
432 #ifndef wxUSE_STATLINE
433 # ifdef wxABORT_ON_CONFIG_ERROR
434 # error "wxUSE_STATLINE must be defined."
436 # define wxUSE_STATLINE 0
438 #endif /* !defined(wxUSE_STATLINE) */
440 #ifndef wxUSE_STATTEXT
441 # ifdef wxABORT_ON_CONFIG_ERROR
442 # error "wxUSE_STATTEXT must be defined."
444 # define wxUSE_STATTEXT 0
446 #endif /* !defined(wxUSE_STATTEXT) */
448 #ifndef wxUSE_STATUSBAR
449 # ifdef wxABORT_ON_CONFIG_ERROR
450 # error "wxUSE_STATUSBAR must be defined."
452 # define wxUSE_STATUSBAR 0
454 #endif /* !defined(wxUSE_STATUSBAR) */
456 #ifndef wxUSE_STOPWATCH
457 # ifdef wxABORT_ON_CONFIG_ERROR
458 # error "wxUSE_STOPWATCH must be defined."
460 # define wxUSE_STOPWATCH 0
462 #endif /* !defined(wxUSE_STOPWATCH) */
464 #ifndef wxUSE_TAB_DIALOG
465 # ifdef wxABORT_ON_CONFIG_ERROR
466 # error "wxUSE_TAB_DIALOG must be defined."
468 # define wxUSE_TAB_DIALOG 0
470 #endif /* !defined(wxUSE_TAB_DIALOG) */
472 #ifndef wxUSE_TEXTBUFFER
473 # ifdef wxABORT_ON_CONFIG_ERROR
474 # error "wxUSE_TEXTBUFFER must be defined."
476 # define wxUSE_TEXTBUFFER 0
478 #endif /* !defined(wxUSE_TEXTBUFFER) */
480 #ifndef wxUSE_TEXTCTRL
481 # ifdef wxABORT_ON_CONFIG_ERROR
482 # error "wxUSE_TEXTCTRL must be defined."
484 # define wxUSE_TEXTCTRL 0
486 #endif /* !defined(wxUSE_TEXTCTRL) */
488 #ifndef wxUSE_TEXTFILE
489 # ifdef wxABORT_ON_CONFIG_ERROR
490 # error "wxUSE_TEXTFILE must be defined."
492 # define wxUSE_TEXTFILE 0
494 #endif /* !defined(wxUSE_TEXTFILE) */
496 #ifndef wxUSE_TIPWINDOW
497 # ifdef wxABORT_ON_CONFIG_ERROR
498 # error "wxUSE_TIPWINDOW must be defined."
500 # define wxUSE_TIPWINDOW 0
502 #endif /* !defined(wxUSE_TIPWINDOW) */
504 #ifndef wxUSE_TOOLBAR
505 # ifdef wxABORT_ON_CONFIG_ERROR
506 # error "wxUSE_TOOLBAR must be defined."
508 # define wxUSE_TOOLBAR 0
510 #endif /* !defined(wxUSE_TOOLBAR) */
512 #ifndef wxUSE_TOOLTIPS
513 # ifdef wxABORT_ON_CONFIG_ERROR
514 # error "wxUSE_TOOLTIPS must be defined."
516 # define wxUSE_TOOLTIPS 0
518 #endif /* !defined(wxUSE_TOOLTIPS) */
520 #ifndef wxUSE_TREECTRL
521 # ifdef wxABORT_ON_CONFIG_ERROR
522 # error "wxUSE_TREECTRL must be defined."
524 # define wxUSE_TREECTRL 0
526 #endif /* !defined(wxUSE_TREECTRL) */
528 #ifndef wxUSE_WXHTML_HELP
529 # ifdef wxABORT_ON_CONFIG_ERROR
530 # error "wxUSE_WXHTML_HELP must be defined."
532 # define wxUSE_WXHTML_HELP 0
534 #endif /* !defined(wxUSE_WXHTML_HELP) */
537 check consistency of the settings
539 #if wxUSE_BUTTON || \
540 wxUSE_CALENDARCTRL || \
545 wxUSE_CHECKLISTBOX || \
568 # ifdef wxABORT_ON_CONFIG_ERROR
569 # error "wxUSE_CONTROLS unset but some controls used"
571 # undef wxUSE_CONTROLS
572 # define wxUSE_CONTROLS 1
575 #endif /* controls */
577 /* wxUniv-specific dependencies */
578 #if defined(__WXUNIVERSAL__)
579 # if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN
580 # ifdef wxABORT_ON_CONFIG_ERROR
581 # error "wxUSE_POPUPWIN must be defined to use comboboxes/menus"
583 # undef wxUSE_POPUPWIN
584 # define wxUSE_POPUPWIN 1
590 # ifdef wxABORT_ON_CONFIG_ERROR
591 # error "wxComboBox requires wxListBox in wxUniversal"
593 # undef wxUSE_LISTBOX
594 # define wxUSE_LISTBOX 1
597 # endif /* wxUSE_COMBOBOX */
601 # ifdef wxABORT_ON_CONFIG_ERROR
602 # error "wxUSE_RADIOBTN requires wxUSE_CHECKBOX in wxUniversal"
604 # undef wxUSE_CHECKBOX
605 # define wxUSE_CHECKBOX 1
608 # endif /* wxUSE_RADIOBTN */
612 # ifdef wxABORT_ON_CONFIG_ERROR
613 # error "wxTextCtrl requires wxCaret in wxUniversal"
616 # define wxUSE_CARET 1
618 # endif /* wxUSE_CARET */
620 # if !wxUSE_SCROLLBAR
621 # ifdef wxABORT_ON_CONFIG_ERROR
622 # error "wxTextCtrl requires wxScrollBar in wxUniversal"
624 # undef wxUSE_SCROLLBAR
625 # define wxUSE_SCROLLBAR 1
627 # endif /* wxUSE_SCROLLBAR */
628 # endif /* wxUSE_TEXTCTRL */
629 #endif /* __WXUNIVERSAL__ */
631 /* wxGTK-specific dependencies */
633 # ifndef __WXUNIVERSAL__
634 # if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS
635 # ifdef wxABORT_ON_CONFIG_ERROR
636 # error "MDI requires wxUSE_MENUS in wxGTK"
639 # define wxUSE_MENUS 1
642 # endif /* !__WXUNIVERSAL__ */
646 # ifdef wxABORT_ON_CONFIG_ERROR
647 # error "wxJoystick requires threads in wxGTK"
649 # undef wxUSE_JOYSTICK
650 # define wxUSE_JOYSTICK 0
654 #endif /* wxGTK && !wxUniv */
656 /* wxMotif-specific dependencies */
657 #if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG
658 # undef wxUSE_TAB_DIALOG
659 # define wxUSE_TAB_DIALOG 1
661 #if defined(__WXMOTIF__) && wxUSE_TOGGLEBTN
662 # undef wxUSE_TOGGLEBTN
663 # define wxUSE_TOGGLEBTN 0
666 /* generic controls dependencies */
667 #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
668 # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
669 /* all common controls are needed by these dialogs */
670 # if !defined(wxUSE_CHOICE) || \
671 !defined(wxUSE_TEXTCTRL) || \
672 !defined(wxUSE_BUTTON) || \
673 !defined(wxUSE_CHECKBOX) || \
674 !defined(wxUSE_STATTEXT)
675 # ifdef wxABORT_ON_CONFIG_ERROR
676 # error "These common controls are needed by common dialogs"
679 # define wxUSE_CHOICE 1
680 # undef wxUSE_TEXTCTRL
681 # define wxUSE_TEXTCTRL 1
683 # define wxUSE_BUTTON 1
684 # undef wxUSE_CHECKBOX
685 # define wxUSE_CHECKBOX 1
686 # undef wxUSE_STATTEXT
687 # define wxUSE_STATTEXT 1
691 #endif /* !wxMSW || wxUniv */
693 /* common dependencies */
694 #if wxUSE_CALENDARCTRL
695 # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX)
696 # ifdef wxABORT_ON_CONFIG_ERROR
697 # error "wxCalendarCtrl requires wxSpinButton and wxComboBox"
699 # undef wxUSE_SPINBTN
700 # undef wxUSE_COMBOBOX
701 # define wxUSE_SPINBTN 1
702 # define wxUSE_COMBOBOX 1
705 #endif /* wxUSE_CALENDARCTRL */
707 #if wxUSE_CHECKLISTBOX
709 # ifdef wxABORT_ON_CONFIG_ERROR
710 # error "wxCheckListBox requires wxListBox"
712 # undef wxUSE_LISTBOX
713 # define wxUSE_LISTBOX 1
716 #endif /* wxUSE_RADIOBTN */
718 #if wxUSE_WXHTML_HELP
719 # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX
720 # ifdef wxABORT_ON_CONFIG_ERROR
721 # error "Built in help controller can't be compiled"
724 # define wxUSE_HELP 1
726 # define wxUSE_HTML 1
727 # undef wxUSE_COMBOBOX
728 # define wxUSE_COMBOBOX 1
731 #endif /* wxUSE_WXHTML_HELP */
733 #if wxUSE_PRINTING_ARCHITECTURE
735 # ifdef wxABORT_ON_CONFIG_ERROR
736 # error "Print dialog requires wxUSE_COMBOBOX"
738 # undef wxUSE_COMBOBOX
739 # define wxUSE_COMBOBOX 1
742 #endif /* wxUSE_PRINTING_ARCHITECTURE */
744 #if wxUSE_DOC_VIEW_ARCHITECTURE
746 # ifdef wxABORT_ON_CONFIG_ERROR
747 # error "DocView requires wxUSE_MENUS"
750 # define wxUSE_MENUS 1
753 #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
756 # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP
757 # ifdef wxABORT_ON_CONFIG_ERROR
758 # error "wxFileDialog must be compiled as well"
760 # undef wxUSE_FILEDLG
761 # define wxUSE_FILEDLG 1
764 #endif /* wxUSE_FILEDLG */
767 # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL
768 # ifdef wxABORT_ON_CONFIG_ERROR
769 # error "wxImageList must be compiled as well"
771 # undef wxUSE_IMAGLIST
772 # define wxUSE_IMAGLIST 1
775 #endif /* !wxUSE_IMAGLIST */
778 # ifdef wxABORT_ON_CONFIG_ERROR
779 /* FIXME: should compile without it, of course, but doesn't */
780 # error "wxMessageBox is always needed"
783 # define wxUSE_MSGDLG 1
788 # if !wxUSE_RADIOBTN || !wxUSE_STATBOX
789 # ifdef wxABORT_ON_CONFIG_ERROR
790 # error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN and wxUSE_STATBOX"
792 # undef wxUSE_RADIOBTN
793 # undef wxUSE_STATBOX
794 # define wxUSE_RADIOBTN 1
795 # define wxUSE_STATBOX 1
798 #endif /* wxUSE_RADIOBOX */
802 # ifdef wxABORT_ON_CONFIG_ERROR
803 # error "wxUSE_STOPWATCH requires wxUSE_LONGLONG"
805 # undef wxUSE_LONGLONG
806 # define wxUSE_LONGLONG 1
809 #endif /* wxUSE_STOPWATCH */
813 # ifdef wxABORT_ON_CONFIG_ERROR
814 # error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL"
816 # undef wxUSE_TEXTCTRL
817 # define wxUSE_TEXTCTRL 1
820 #endif /* wxUSE_LOGWINDOW */
824 # ifdef wxABORT_ON_CONFIG_ERROR
825 # error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL"
827 # undef wxUSE_LISTCTRL
828 # define wxUSE_LISTCTRL 1
831 #endif /* wxUSE_LOG_DIALOG */
833 /* I wonder if we shouldn't just remove all occurrences of
834 wxUSE_DYNAMIC_CLASSES from the sources? */
835 #if !defined(wxUSE_DYNAMIC_CLASSES) || !wxUSE_DYNAMIC_CLASSES
836 # ifdef wxABORT_ON_CONFIG_ERROR
837 # error "wxUSE_DYNAMIC_CLASSES must be defined as 1"
839 # undef wxUSE_DYNAMIC_CLASSES
840 # define wxUSE_DYNAMIC_CLASSES
842 #endif /* wxUSE_DYNAMIC_CLASSES */
844 #if wxUSE_MIMETYPE && !wxUSE_TEXTFILE
845 # ifdef wxABORT_ON_CONFIG_ERROR
846 # error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE"
848 # undef wxUSE_TEXTFILE
849 # define wxUSE_TEXTFILE 1
851 #endif /* wxUSE_MIMETYPE */
853 #if wxUSE_TEXTFILE && !wxUSE_TEXTBUFFER
854 # ifdef wxABORT_ON_CONFIG_ERROR
855 # error "wxUSE_TEXTFILE requires wxUSE_TEXTBUFFER"
857 # undef wxUSE_TEXTBUFFER
858 # define wxUSE_TEXTBUFFER 1
860 #endif /* wxUSE_TEXTFILE */
862 #if wxUSE_TEXTFILE && !wxUSE_FILE
863 # ifdef wxABORT_ON_CONFIG_ERROR
864 # error "wxUSE_TEXTFILE requires wxUSE_FILE"
867 # define wxUSE_FILE 1
869 #endif /* wxUSE_TEXTFILE */
871 #if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ
872 # ifdef wxABORT_ON_CONFIG_ERROR
873 # error "wxClipboard requires wxDataObject"
875 # undef wxUSE_DATAOBJ
876 # define wxUSE_DATAOBJ 1
878 #endif /* wxUSE_CLIPBOARD */
880 #endif /* wxUSE_GUI */