]> git.saurik.com Git - wxWidgets.git/blame - include/wx/chkconf.h
don't assert when right/down cursor arrows are used in an empty tree control with...
[wxWidgets.git] / include / wx / chkconf.h
CommitLineData
b45f79ec
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@wxwidgets.org>
9 * Licence: wxWindows licence
10 */
1e6feb95
VZ
11
12/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
8ba16443
VZ
13#ifndef _WX_CHKCONF_H_
14#define _WX_CHKCONF_H_
1e6feb95 15
01ebf752 16/*
b55c3716 17 Platform-specific checking.
01ebf752
JS
18 */
19
4055ed82 20#if defined(__WXPALMOS__)
ffecfa5a 21# include "wx/palmos/chkconf.h"
69dada2e
VZ
22#elif defined(__WXWINCE__)
23# include "wx/msw/wince/chkconf.h"
ffecfa5a 24#elif defined(__WXMSW__)
01ebf752
JS
25# include "wx/msw/chkconf.h"
26#elif defined(__WXMAC__)
27# include "wx/mac/chkconf.h"
cb7d7375
WS
28#elif defined(__OS2__)
29# include "wx/os2/chkconf.h"
b8af111f
WS
30#elif defined(__WXMGL__)
31# include "wx/mgl/chkconf.h"
b3c86150
VS
32#elif defined(__WXDFB__)
33# include "wx/dfb/chkconf.h"
b45f79ec 34#elif defined(__WXMOTIF__)
5c7c67fd 35# include "wx/motif/chkconf.h"
05024233
VS
36#elif defined(__WXX11__)
37# include "wx/x11/chkconf.h"
01ebf752
JS
38#endif
39
a1873279
VZ
40#ifdef __UNIX__
41# include "wx/unix/chkconf.h"
42#endif
43
4353a8df
VZ
44#ifdef __WXUNIVERSAL__
45# include "wx/univ/chkconf.h"
46#endif
47
1e6feb95 48/*
730dfeb4 49 this global setting determines what should we do if the setting FOO
8a43eaec
VZ
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 surprizing behaviour)
1e6feb95
VZ
53 */
54#define wxABORT_ON_CONFIG_ERROR
55
6962f34e
VZ
56/*
57 global features
58 */
59
60/* GUI build by default */
61#if !defined(wxUSE_GUI)
62# define wxUSE_GUI 1
63#endif /* !defined(wxUSE_GUI) */
64
1bbcb0d5
VZ
65/*
66 If we're compiling without support for threads/exceptions we have to
67 disable the corresponding features.
68 */
69#ifdef wxNO_THREADS
70# undef wxUSE_THREADS
71# define wxUSE_THREADS 0
72#endif /* wxNO_THREADS */
73
74#ifdef wxNO_EXCEPTIONS
75# undef wxUSE_EXCEPTIONS
76# define wxUSE_EXCEPTIONS 0
77#endif /* wxNO_EXCEPTIONS */
78
4652511f
VZ
79/* we also must disable exceptions if compiler doesn't support them */
80#if defined(_MSC_VER) && !defined(_CPPUNWIND)
81# undef wxUSE_EXCEPTIONS
82# define wxUSE_EXCEPTIONS 0
83#endif /* VC++ without exceptions support */
84
1bbcb0d5 85
1e6feb95 86/*
03169422 87 tests for non GUI features
e16514bf
VZ
88
89 please keep the options in alphabetical order!
03169422
RL
90 */
91
a1873279
VZ
92#ifndef wxUSE_CONSOLE_EVENTLOOP
93# ifdef wxABORT_ON_CONFIG_ERROR
94# error "wxUSE_CONSOLE_EVENTLOOP must be defined."
95# else
96# define wxUSE_CONSOLE_EVENTLOOP 0
97# endif
98#endif /* !defined(wxUSE_CONSOLE_EVENTLOOP) */
99
0c46d866 100#ifndef wxUSE_CRASHREPORT
7e0aee72
VZ
101 /* this one is special: as currently it is Windows-only, don't force it
102 to be defined on other platforms */
103# if defined(wxABORT_ON_CONFIG_ERROR) && defined(__WXMSW__)
0c46d866
VZ
104# error "wxUSE_CRASHREPORT must be defined."
105# else
106# define wxUSE_CRASHREPORT 0
107# endif
108#endif /* !defined(wxUSE_CRASHREPORT) */
109
03169422
RL
110#ifndef wxUSE_DYNLIB_CLASS
111# ifdef wxABORT_ON_CONFIG_ERROR
112# error "wxUSE_DYNLIB_CLASS must be defined."
113# else
114# define wxUSE_DYNLIB_CLASS 0
115# endif
116#endif /* !defined(wxUSE_DYNLIB_CLASS) */
117
4199367e
VZ
118#ifndef wxUSE_EXCEPTIONS
119# ifdef wxABORT_ON_CONFIG_ERROR
120# error "wxUSE_EXCEPTIONS must be defined."
121# else
122# define wxUSE_EXCEPTIONS 0
123# endif
124#endif /* !defined(wxUSE_EXCEPTIONS) */
125
c7f3eecc
VZ
126#ifndef wxUSE_FILESYSTEM
127# ifdef wxABORT_ON_CONFIG_ERROR
128# error "wxUSE_FILESYSTEM must be defined."
129# else
130# define wxUSE_FILESYSTEM 0
131# endif
132#endif /* !defined(wxUSE_FILESYSTEM) */
133
26e422a9
MW
134#ifndef wxUSE_FS_ARCHIVE
135# ifdef wxABORT_ON_CONFIG_ERROR
136# error "wxUSE_FS_ARCHIVE must be defined."
137# else
138# define wxUSE_FS_ARCHIVE 0
139# endif
140#endif /* !defined(wxUSE_FS_ARCHIVE) */
141
6fb17fd5 142/* don't give an error about this one yet, it's not fully implemented */
05815ab3 143#ifndef wxUSE_FSVOLUME
6fb17fd5 144# define wxUSE_FSVOLUME 0
05815ab3
VZ
145#endif /* !defined(wxUSE_FSVOLUME) */
146
03169422
RL
147#ifndef wxUSE_DYNAMIC_LOADER
148# ifdef wxABORT_ON_CONFIG_ERROR
149# error "wxUSE_DYNAMIC_LOADER must be defined."
150# else
151# define wxUSE_DYNAMIC_LOADER 0
152# endif
153#endif /* !defined(wxUSE_DYNAMIC_LOADER) */
154
a5d46b73
VZ
155#ifndef wxUSE_LOG
156# ifdef wxABORT_ON_CONFIG_ERROR
157# error "wxUSE_LOG must be defined."
158# else
159# define wxUSE_LOG 0
160# endif
161#endif /* !defined(wxUSE_LOG) */
162
163#ifndef wxUSE_LONGLONG
164# ifdef wxABORT_ON_CONFIG_ERROR
165# error "wxUSE_LONGLONG must be defined."
166# else
167# define wxUSE_LONGLONG 0
168# endif
169#endif /* !defined(wxUSE_LONGLONG) */
170
171#ifndef wxUSE_MIMETYPE
172# ifdef wxABORT_ON_CONFIG_ERROR
173# error "wxUSE_MIMETYPE must be defined."
174# else
175# define wxUSE_MIMETYPE 0
176# endif
177#endif /* !defined(wxUSE_MIMETYPE) */
178
0c46d866
VZ
179#ifndef wxUSE_ON_FATAL_EXCEPTION
180# ifdef wxABORT_ON_CONFIG_ERROR
181# error "wxUSE_ON_FATAL_EXCEPTION must be defined."
182# else
183# define wxUSE_ON_FATAL_EXCEPTION 0
184# endif
185#endif /* !defined(wxUSE_ON_FATAL_EXCEPTION) */
186
7a828c7f
VZ
187#ifndef wxUSE_PRINTF_POS_PARAMS
188# ifdef wxABORT_ON_CONFIG_ERROR
189# error "wxUSE_PRINTF_POS_PARAMS must be defined."
190# else
191# define wxUSE_PRINTF_POS_PARAMS 0
192# endif
193#endif /* !defined(wxUSE_PRINTF_POS_PARAMS) */
194
a5d46b73
VZ
195#ifndef wxUSE_PROTOCOL
196# ifdef wxABORT_ON_CONFIG_ERROR
197# error "wxUSE_PROTOCOL must be defined."
198# else
199# define wxUSE_PROTOCOL 0
200# endif
201#endif /* !defined(wxUSE_PROTOCOL) */
202
203/* we may not define wxUSE_PROTOCOL_XXX if wxUSE_PROTOCOL is set to 0 */
204#if !wxUSE_PROTOCOL
205# undef wxUSE_PROTOCOL_HTTP
206# undef wxUSE_PROTOCOL_FTP
207# undef wxUSE_PROTOCOL_FILE
208# define wxUSE_PROTOCOL_HTTP 0
209# define wxUSE_PROTOCOL_FTP 0
210# define wxUSE_PROTOCOL_FILE 0
211#endif /* wxUSE_PROTOCOL */
212
213#ifndef wxUSE_PROTOCOL_HTTP
214# ifdef wxABORT_ON_CONFIG_ERROR
215# error "wxUSE_PROTOCOL_HTTP must be defined."
216# else
217# define wxUSE_PROTOCOL_HTTP 0
218# endif
219#endif /* !defined(wxUSE_PROTOCOL_HTTP) */
220
221#ifndef wxUSE_PROTOCOL_FTP
222# ifdef wxABORT_ON_CONFIG_ERROR
223# error "wxUSE_PROTOCOL_FTP must be defined."
224# else
225# define wxUSE_PROTOCOL_FTP 0
226# endif
227#endif /* !defined(wxUSE_PROTOCOL_FTP) */
228
229#ifndef wxUSE_PROTOCOL_FILE
230# ifdef wxABORT_ON_CONFIG_ERROR
231# error "wxUSE_PROTOCOL_FILE must be defined."
232# else
233# define wxUSE_PROTOCOL_FILE 0
234# endif
235#endif /* !defined(wxUSE_PROTOCOL_FILE) */
236
237#ifndef wxUSE_REGEX
238# ifdef wxABORT_ON_CONFIG_ERROR
239# error "wxUSE_REGEX must be defined."
240# else
241# define wxUSE_REGEX 0
242# endif
243#endif /* !defined(wxUSE_REGEX) */
244
07158944
VZ
245#ifndef wxUSE_STDPATHS
246# ifdef wxABORT_ON_CONFIG_ERROR
247# error "wxUSE_STDPATHS must be defined."
248# else
249# define wxUSE_STDPATHS 1
250# endif
251#endif /* !defined(wxUSE_STDPATHS) */
252
27b0c286
VS
253#ifndef wxUSE_XML
254# ifdef wxABORT_ON_CONFIG_ERROR
255# error "wxUSE_XML must be defined."
256# else
257# define wxUSE_XML 0
258# endif
259#endif /* !defined(wxUSE_XML) */
260
a5d46b73
VZ
261#ifndef wxUSE_SOCKETS
262# ifdef wxABORT_ON_CONFIG_ERROR
263# error "wxUSE_SOCKETS must be defined."
264# else
265# define wxUSE_SOCKETS 0
266# endif
267#endif /* !defined(wxUSE_SOCKETS) */
268
269#ifndef wxUSE_STREAMS
270# ifdef wxABORT_ON_CONFIG_ERROR
271# error "wxUSE_STREAMS must be defined."
272# else
273# define wxUSE_STREAMS 0
274# endif
275#endif /* !defined(wxUSE_STREAMS) */
276
277#ifndef wxUSE_STOPWATCH
278# ifdef wxABORT_ON_CONFIG_ERROR
279# error "wxUSE_STOPWATCH must be defined."
280# else
281# define wxUSE_STOPWATCH 0
282# endif
283#endif /* !defined(wxUSE_STOPWATCH) */
284
285#ifndef wxUSE_TEXTBUFFER
286# ifdef wxABORT_ON_CONFIG_ERROR
287# error "wxUSE_TEXTBUFFER must be defined."
288# else
289# define wxUSE_TEXTBUFFER 0
290# endif
291#endif /* !defined(wxUSE_TEXTBUFFER) */
292
293#ifndef wxUSE_TEXTFILE
294# ifdef wxABORT_ON_CONFIG_ERROR
295# error "wxUSE_TEXTFILE must be defined."
296# else
297# define wxUSE_TEXTFILE 0
298# endif
299#endif /* !defined(wxUSE_TEXTFILE) */
300
301#ifndef wxUSE_UNICODE
302# ifdef wxABORT_ON_CONFIG_ERROR
303# error "wxUSE_UNICODE must be defined."
304# else
305# define wxUSE_UNICODE 0
306# endif
307#endif /* !defined(wxUSE_UNICODE) */
308
309#ifndef wxUSE_URL
310# ifdef wxABORT_ON_CONFIG_ERROR
311# error "wxUSE_URL must be defined."
312# else
313# define wxUSE_URL 0
314# endif
315#endif /* !defined(wxUSE_URL) */
316
ca5c6ac3
VZ
317#ifndef wxUSE_VARIANT
318# ifdef wxABORT_ON_CONFIG_ERROR
319# error "wxUSE_VARIANT must be defined."
320# else
321# define wxUSE_VARIANT 0
322# endif
323#endif /* wxUSE_VARIANT */
324
03169422
RL
325/*
326 all these tests are for GUI only
e16514bf
VZ
327
328 please keep the options in alphabetical order!
1e6feb95
VZ
329 */
330#if wxUSE_GUI
331
332/*
333 all of the settings tested below must be defined or we'd get an error from
334 preprocessor about invalid integer expression
335 */
336
9211cf3c
VZ
337#ifndef wxUSE_ABOUTDLG
338# ifdef wxABORT_ON_CONFIG_ERROR
339# error "wxUSE_ABOUTDLG must be defined."
340# else
341# define wxUSE_ABOUTDLG 0
342# endif
343#endif /* !defined(wxUSE_ABOUTDLG) */
344
1e6feb95
VZ
345#ifndef wxUSE_ACCEL
346# ifdef wxABORT_ON_CONFIG_ERROR
347# error "wxUSE_ACCEL must be defined."
348# else
349# define wxUSE_ACCEL 0
350# endif
351#endif /* !defined(wxUSE_ACCEL) */
352
72045d57
VZ
353#ifndef wxUSE_ANIMATIONCTRL
354# ifdef wxABORT_ON_CONFIG_ERROR
355# error "wxUSE_ANIMATIONCTRL must be defined."
356# else
357# define wxUSE_ANIMATIONCTRL 0
358# endif
359#endif /* !defined(wxUSE_ANIMATIONCTRL) */
360
8d37334f
VZ
361#ifndef wxUSE_BITMAPCOMBOBOX
362# ifdef wxABORT_ON_CONFIG_ERROR
363# error "wxUSE_BITMAPCOMBOBOX must be defined."
364# else
365# define wxUSE_BITMAPCOMBOBOX 0
366# endif
367#endif /* !defined(wxUSE_BITMAPCOMBOBOX) */
368
1e6feb95
VZ
369#ifndef wxUSE_BMPBUTTON
370# ifdef wxABORT_ON_CONFIG_ERROR
371# error "wxUSE_BMPBUTTON must be defined."
372# else
373# define wxUSE_BMPBUTTON 0
374# endif
375#endif /* !defined(wxUSE_BMPBUTTON) */
376
377#ifndef wxUSE_BUTTON
378# ifdef wxABORT_ON_CONFIG_ERROR
379# error "wxUSE_BUTTON must be defined."
380# else
381# define wxUSE_BUTTON 0
382# endif
383#endif /* !defined(wxUSE_BUTTON) */
384
385#ifndef wxUSE_CALENDARCTRL
386# ifdef wxABORT_ON_CONFIG_ERROR
387# error "wxUSE_CALENDARCTRL must be defined."
388# else
389# define wxUSE_CALENDARCTRL 0
390# endif
391#endif /* !defined(wxUSE_CALENDARCTRL) */
392
393#ifndef wxUSE_CARET
394# ifdef wxABORT_ON_CONFIG_ERROR
395# error "wxUSE_CARET must be defined."
396# else
397# define wxUSE_CARET 0
398# endif
399#endif /* !defined(wxUSE_CARET) */
400
401#ifndef wxUSE_CHECKBOX
402# ifdef wxABORT_ON_CONFIG_ERROR
403# error "wxUSE_CHECKBOX must be defined."
404# else
405# define wxUSE_CHECKBOX 0
406# endif
407#endif /* !defined(wxUSE_CHECKBOX) */
408
409#ifndef wxUSE_CHECKLISTBOX
410# ifdef wxABORT_ON_CONFIG_ERROR
411# error "wxUSE_CHECKLISTBOX must be defined."
412# else
413# define wxUSE_CHECKLISTBOX 0
414# endif
415#endif /* !defined(wxUSE_CHECKLISTBOX) */
416
417#ifndef wxUSE_CHOICE
418# ifdef wxABORT_ON_CONFIG_ERROR
419# error "wxUSE_CHOICE must be defined."
420# else
421# define wxUSE_CHOICE 0
422# endif
423#endif /* !defined(wxUSE_CHOICE) */
424
f5e0b4bc
WS
425#ifndef wxUSE_CHOICEBOOK
426# ifdef wxABORT_ON_CONFIG_ERROR
427# error "wxUSE_CHOICEBOOK must be defined."
428# else
429# define wxUSE_CHOICEBOOK 0
430# endif
431#endif /* !defined(wxUSE_CHOICEBOOK) */
432
3379ed37
VZ
433#ifndef wxUSE_CHOICEDLG
434# ifdef wxABORT_ON_CONFIG_ERROR
435# error "wxUSE_CHOICEDLG must be defined."
436# else
437# define wxUSE_CHOICEDLG 0
438# endif
439#endif /* !defined(wxUSE_CHOICEDLG) */
440
1e6feb95
VZ
441#ifndef wxUSE_CLIPBOARD
442# ifdef wxABORT_ON_CONFIG_ERROR
443# error "wxUSE_CLIPBOARD must be defined."
444# else
445# define wxUSE_CLIPBOARD 0
446# endif
447#endif /* !defined(wxUSE_CLIPBOARD) */
448
912c3932
VZ
449#ifndef wxUSE_COLLPANE
450# ifdef wxABORT_ON_CONFIG_ERROR
451# error "wxUSE_COLLPANE must be defined."
452# else
453# define wxUSE_COLLPANE 0
454# endif
455#endif /* !defined(wxUSE_COLLPANE) */
456
a2c0a9c5
VZ
457#ifndef wxUSE_COLOURDLG
458# ifdef wxABORT_ON_CONFIG_ERROR
459# error "wxUSE_COLOURDLG must be defined."
460# else
461# define wxUSE_COLOURDLG 0
462# endif
463#endif /* !defined(wxUSE_COLOURDLG) */
464
ec376c8f
VZ
465#ifndef wxUSE_COLOURPICKERCTRL
466# ifdef wxABORT_ON_CONFIG_ERROR
467# error "wxUSE_COLOURPICKERCTRL must be defined."
468# else
469# define wxUSE_COLOURPICKERCTRL 0
470# endif
471#endif /* !defined(wxUSE_COLOURPICKERCTRL) */
472
1e6feb95
VZ
473#ifndef wxUSE_COMBOBOX
474# ifdef wxABORT_ON_CONFIG_ERROR
475# error "wxUSE_COMBOBOX must be defined."
476# else
477# define wxUSE_COMBOBOX 0
478# endif
479#endif /* !defined(wxUSE_COMBOBOX) */
480
a57d600f 481#ifndef wxUSE_COMBOCTRL
481e2766 482# ifdef wxABORT_ON_CONFIG_ERROR
a57d600f 483# error "wxUSE_COMBOCTRL must be defined."
481e2766 484# else
a57d600f 485# define wxUSE_COMBOCTRL 0
481e2766 486# endif
a57d600f 487#endif /* !defined(wxUSE_COMBOCTRL) */
481e2766 488
1e6feb95
VZ
489#ifndef wxUSE_DATAOBJ
490# ifdef wxABORT_ON_CONFIG_ERROR
491# error "wxUSE_DATAOBJ must be defined."
492# else
493# define wxUSE_DATAOBJ 0
494# endif
495#endif /* !defined(wxUSE_DATAOBJ) */
496
e16514bf
VZ
497#ifndef wxUSE_DATAVIEWCTRL
498# ifdef wxABORT_ON_CONFIG_ERROR
499# error "wxUSE_DATAVIEWCTRL must be defined."
500# else
501# define wxUSE_DATAVIEWCTRL 0
502# endif
503#endif /* !defined(wxUSE_DATAVIEWCTRL) */
504
337dc4c1
WS
505#ifndef wxUSE_DATEPICKCTRL
506# ifdef wxABORT_ON_CONFIG_ERROR
507# error "wxUSE_DATEPICKCTRL must be defined."
508# else
509# define wxUSE_DATEPICKCTRL 0
510# endif
511#endif /* !defined(wxUSE_DATEPICKCTRL) */
512
ec376c8f
VZ
513#ifndef wxUSE_DIRPICKERCTRL
514# ifdef wxABORT_ON_CONFIG_ERROR
515# error "wxUSE_DIRPICKERCTRL must be defined."
516# else
517# define wxUSE_DIRPICKERCTRL 0
518# endif
519#endif /* !defined(wxUSE_DIRPICKERCTRL) */
520
f8ba082e
VZ
521#ifndef wxUSE_DISPLAY
522# ifdef wxABORT_ON_CONFIG_ERROR
523# error "wxUSE_DISPLAY must be defined."
524# else
525# define wxUSE_DISPLAY 0
526# endif
527#endif /* !defined(wxUSE_DISPLAY) */
528
3379ed37
VZ
529#ifndef wxUSE_DOC_VIEW_ARCHITECTURE
530# ifdef wxABORT_ON_CONFIG_ERROR
531# error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
532# else
533# define wxUSE_DOC_VIEW_ARCHITECTURE 0
534# endif
535#endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */
536
1e6feb95
VZ
537#ifndef wxUSE_FILEDLG
538# ifdef wxABORT_ON_CONFIG_ERROR
539# error "wxUSE_FILEDLG must be defined."
540# else
541# define wxUSE_FILEDLG 0
542# endif
543#endif /* !defined(wxUSE_FILEDLG) */
544
ec376c8f
VZ
545#ifndef wxUSE_FILEPICKERCTRL
546# ifdef wxABORT_ON_CONFIG_ERROR
547# error "wxUSE_FILEPICKERCTRL must be defined."
548# else
549# define wxUSE_FILEPICKERCTRL 0
550# endif
551#endif /* !defined(wxUSE_FILEPICKERCTRL) */
552
1e6feb95
VZ
553#ifndef wxUSE_FONTDLG
554# ifdef wxABORT_ON_CONFIG_ERROR
555# error "wxUSE_FONTDLG must be defined."
556# else
557# define wxUSE_FONTDLG 0
558# endif
559#endif /* !defined(wxUSE_FONTDLG) */
560
561#ifndef wxUSE_FONTMAP
562# ifdef wxABORT_ON_CONFIG_ERROR
563# error "wxUSE_FONTMAP must be defined."
564# else
565# define wxUSE_FONTMAP 0
566# endif
567#endif /* !defined(wxUSE_FONTMAP) */
568
ec376c8f
VZ
569#ifndef wxUSE_FONTPICKERCTRL
570# ifdef wxABORT_ON_CONFIG_ERROR
571# error "wxUSE_FONTPICKERCTRL must be defined."
572# else
573# define wxUSE_FONTPICKERCTRL 0
574# endif
575#endif /* !defined(wxUSE_FONTPICKERCTRL) */
576
1e6feb95
VZ
577#ifndef wxUSE_GAUGE
578# ifdef wxABORT_ON_CONFIG_ERROR
579# error "wxUSE_GAUGE must be defined."
580# else
581# define wxUSE_GAUGE 0
582# endif
583#endif /* !defined(wxUSE_GAUGE) */
584
f43426c1
RD
585#ifndef wxUSE_GRAPHICS_CONTEXT
586# ifdef wxABORT_ON_CONFIG_ERROR
587# error "wxUSE_GRAPHICS_CONTEXT must be defined."
588# else
589# define wxUSE_GRAPHICS_CONTEXT 0
590# endif
591#endif /* !defined(wxUSE_GRAPHICS_CONTEXT) */
592
593
1e6feb95
VZ
594#ifndef wxUSE_GRID
595# ifdef wxABORT_ON_CONFIG_ERROR
596# error "wxUSE_GRID must be defined."
597# else
598# define wxUSE_GRID 0
599# endif
600#endif /* !defined(wxUSE_GRID) */
601
3379ed37
VZ
602#ifndef wxUSE_HELP
603# ifdef wxABORT_ON_CONFIG_ERROR
604# error "wxUSE_HELP must be defined."
605# else
606# define wxUSE_HELP 0
607# endif
608#endif /* !defined(wxUSE_HELP) */
609
17e91437
VZ
610#ifndef wxUSE_HYPERLINKCTRL
611# ifdef wxABORT_ON_CONFIG_ERROR
612# error "wxUSE_HYPERLINKCTRL must be defined."
613# else
614# define wxUSE_HYPERLINKCTRL 0
615# endif
616#endif /* !defined(wxUSE_HYPERLINKCTRL) */
617
05dcbb8e
VZ
618#ifndef wxUSE_HTML
619# ifdef wxABORT_ON_CONFIG_ERROR
620# error "wxUSE_HTML must be defined."
621# else
622# define wxUSE_HTML 0
623# endif
624#endif /* !defined(wxUSE_HTML) */
625
c839485c
VS
626#ifndef wxUSE_LIBMSPACK
627# ifndef __UNIX__
628 /* set to 0 on platforms that don't have libmspack */
629# define wxUSE_LIBMSPACK 0
630# else
631# ifdef wxABORT_ON_CONFIG_ERROR
632# error "wxUSE_LIBMSPACK must be defined."
633# else
634# define wxUSE_LIBMSPACK 0
635# endif
636# endif
637#endif /* !defined(wxUSE_LIBMSPACK) */
638
658974ae
VS
639#ifndef wxUSE_ICO_CUR
640# ifdef wxABORT_ON_CONFIG_ERROR
641# error "wxUSE_ICO_CUR must be defined."
642# else
643# define wxUSE_ICO_CUR 0
644# endif
645#endif /* !defined(wxUSE_ICO_CUR) */
646
1663afc0
VS
647#ifndef wxUSE_IFF
648# ifdef wxABORT_ON_CONFIG_ERROR
649# error "wxUSE_IFF must be defined."
650# else
651# define wxUSE_IFF 0
652# endif
653#endif /* !defined(wxUSE_IFF) */
654
1e6feb95
VZ
655#ifndef wxUSE_IMAGLIST
656# ifdef wxABORT_ON_CONFIG_ERROR
657# error "wxUSE_IMAGLIST must be defined."
658# else
659# define wxUSE_IMAGLIST 0
660# endif
661#endif /* !defined(wxUSE_IMAGLIST) */
662
2131b89d
VZ
663#ifndef wxUSE_JOYSTICK
664# ifdef wxABORT_ON_CONFIG_ERROR
665# error "wxUSE_JOYSTICK must be defined."
666# else
667# define wxUSE_JOYSTICK 0
668# endif
669#endif /* !defined(wxUSE_JOYSTICK) */
670
5b5e4f32
VZ
671#ifndef wxUSE_LISTBOOK
672# ifdef wxABORT_ON_CONFIG_ERROR
673# error "wxUSE_LISTBOOK must be defined."
674# else
675# define wxUSE_LISTBOOK 0
676# endif
677#endif /* !defined(wxUSE_LISTBOOK) */
678
1e6feb95
VZ
679#ifndef wxUSE_LISTBOX
680# ifdef wxABORT_ON_CONFIG_ERROR
681# error "wxUSE_LISTBOX must be defined."
682# else
683# define wxUSE_LISTBOX 0
684# endif
685#endif /* !defined(wxUSE_LISTBOX) */
686
687#ifndef wxUSE_LISTCTRL
688# ifdef wxABORT_ON_CONFIG_ERROR
689# error "wxUSE_LISTCTRL must be defined."
690# else
691# define wxUSE_LISTCTRL 0
692# endif
693#endif /* !defined(wxUSE_LISTCTRL) */
694
3379ed37
VZ
695#ifndef wxUSE_LOGGUI
696# ifdef wxABORT_ON_CONFIG_ERROR
697# error "wxUSE_LOGGUI must be defined."
698# else
699# define wxUSE_LOGGUI 0
700# endif
701#endif /* !defined(wxUSE_LOGGUI) */
702
703#ifndef wxUSE_LOGWINDOW
704# ifdef wxABORT_ON_CONFIG_ERROR
705# error "wxUSE_LOGWINDOW must be defined."
706# else
707# define wxUSE_LOGWINDOW 0
708# endif
709#endif /* !defined(wxUSE_LOGWINDOW) */
e421922f 710
3e6e2754
JS
711#ifndef wxUSE_LOG_DIALOG
712# ifdef wxABORT_ON_CONFIG_ERROR
713# error "wxUSE_LOG_DIALOG must be defined."
714# else
715# define wxUSE_LOG_DIALOG 0
716# endif
71908213 717#endif /* !defined(wxUSE_LOG_DIALOG) */
3e6e2754 718
efd17a1d
VZ
719#ifndef wxUSE_MDI
720# ifdef wxABORT_ON_CONFIG_ERROR
721# error "wxUSE_MDI must be defined."
722# else
723# define wxUSE_MDI 0
724# endif
725#endif /* !defined(wxUSE_MDI) */
726
1e6feb95
VZ
727#ifndef wxUSE_MDI_ARCHITECTURE
728# ifdef wxABORT_ON_CONFIG_ERROR
729# error "wxUSE_MDI_ARCHITECTURE must be defined."
730# else
731# define wxUSE_MDI_ARCHITECTURE 0
732# endif
733#endif /* !defined(wxUSE_MDI_ARCHITECTURE) */
734
735#ifndef wxUSE_MENUS
736# ifdef wxABORT_ON_CONFIG_ERROR
737# error "wxUSE_MENUS must be defined."
738# else
739# define wxUSE_MENUS 0
740# endif
741#endif /* !defined(wxUSE_MENUS) */
742
3379ed37
VZ
743#ifndef wxUSE_MSGDLG
744# ifdef wxABORT_ON_CONFIG_ERROR
745# error "wxUSE_MSGDLG must be defined."
746# else
747# define wxUSE_MSGDLG 0
748# endif
749#endif /* !defined(wxUSE_MSGDLG) */
750
1e6feb95
VZ
751#ifndef wxUSE_NOTEBOOK
752# ifdef wxABORT_ON_CONFIG_ERROR
753# error "wxUSE_NOTEBOOK must be defined."
754# else
755# define wxUSE_NOTEBOOK 0
756# endif
757#endif /* !defined(wxUSE_NOTEBOOK) */
758
a57d600f 759#ifndef wxUSE_ODCOMBOBOX
481e2766 760# ifdef wxABORT_ON_CONFIG_ERROR
a57d600f 761# error "wxUSE_ODCOMBOBOX must be defined."
481e2766 762# else
a57d600f 763# define wxUSE_ODCOMBOBOX 0
481e2766 764# endif
a57d600f 765#endif /* !defined(wxUSE_ODCOMBOBOX) */
481e2766 766
d275c7eb
VZ
767#ifndef wxUSE_PALETTE
768# ifdef wxABORT_ON_CONFIG_ERROR
769# error "wxUSE_PALETTE must be defined."
770# else
771# define wxUSE_PALETTE 0
772# endif
773#endif /* !defined(wxUSE_PALETTE) */
774
1e6feb95
VZ
775#ifndef wxUSE_POPUPWIN
776# ifdef wxABORT_ON_CONFIG_ERROR
777# error "wxUSE_POPUPWIN must be defined."
778# else
779# define wxUSE_POPUPWIN 0
780# endif
781#endif /* !defined(wxUSE_POPUPWIN) */
782
3379ed37
VZ
783#ifndef wxUSE_PRINTING_ARCHITECTURE
784# ifdef wxABORT_ON_CONFIG_ERROR
785# error "wxUSE_PRINTING_ARCHITECTURE must be defined."
786# else
787# define wxUSE_PRINTING_ARCHITECTURE 0
788# endif
789#endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */
790
1e6feb95
VZ
791#ifndef wxUSE_RADIOBOX
792# ifdef wxABORT_ON_CONFIG_ERROR
793# error "wxUSE_RADIOBOX must be defined."
794# else
795# define wxUSE_RADIOBOX 0
796# endif
797#endif /* !defined(wxUSE_RADIOBOX) */
798
799#ifndef wxUSE_RADIOBTN
800# ifdef wxABORT_ON_CONFIG_ERROR
801# error "wxUSE_RADIOBTN must be defined."
802# else
803# define wxUSE_RADIOBTN 0
804# endif
805#endif /* !defined(wxUSE_RADIOBTN) */
806
807#ifndef wxUSE_SASH
808# ifdef wxABORT_ON_CONFIG_ERROR
809# error "wxUSE_SASH must be defined."
810# else
811# define wxUSE_SASH 0
812# endif
813#endif /* !defined(wxUSE_SASH) */
814
815#ifndef wxUSE_SCROLLBAR
816# ifdef wxABORT_ON_CONFIG_ERROR
817# error "wxUSE_SCROLLBAR must be defined."
818# else
819# define wxUSE_SCROLLBAR 0
820# endif
821#endif /* !defined(wxUSE_SCROLLBAR) */
822
823#ifndef wxUSE_SLIDER
824# ifdef wxABORT_ON_CONFIG_ERROR
825# error "wxUSE_SLIDER must be defined."
826# else
827# define wxUSE_SLIDER 0
828# endif
829#endif /* !defined(wxUSE_SLIDER) */
830
cad1a197
VS
831#ifndef wxUSE_SOUND
832# ifdef wxABORT_ON_CONFIG_ERROR
833# error "wxUSE_SOUND must be defined."
834# else
835# define wxUSE_SOUND 0
836# endif
837#endif /* !defined(wxUSE_SOUND) */
838
1e6feb95
VZ
839#ifndef wxUSE_SPINBTN
840# ifdef wxABORT_ON_CONFIG_ERROR
841# error "wxUSE_SPINBTN must be defined."
842# else
843# define wxUSE_SPINBTN 0
844# endif
845#endif /* !defined(wxUSE_SPINBTN) */
846
847#ifndef wxUSE_SPINCTRL
848# ifdef wxABORT_ON_CONFIG_ERROR
849# error "wxUSE_SPINCTRL must be defined."
850# else
851# define wxUSE_SPINCTRL 0
852# endif
853#endif /* !defined(wxUSE_SPINCTRL) */
854
2654a046
MB
855#ifndef wxUSE_SPLASH
856# ifdef wxABORT_ON_CONFIG_ERROR
857# error "wxUSE_SPLASH must be defined."
858# else
859# define wxUSE_SPLASH 0
860# endif
861#endif /* !defined(wxUSE_SPLASH) */
862
1e6feb95
VZ
863#ifndef wxUSE_SPLITTER
864# ifdef wxABORT_ON_CONFIG_ERROR
865# error "wxUSE_SPLITTER must be defined."
866# else
867# define wxUSE_SPLITTER 0
868# endif
869#endif /* !defined(wxUSE_SPLITTER) */
870
871#ifndef wxUSE_STATBMP
872# ifdef wxABORT_ON_CONFIG_ERROR
873# error "wxUSE_STATBMP must be defined."
874# else
875# define wxUSE_STATBMP 0
876# endif
877#endif /* !defined(wxUSE_STATBMP) */
878
879#ifndef wxUSE_STATBOX
880# ifdef wxABORT_ON_CONFIG_ERROR
881# error "wxUSE_STATBOX must be defined."
882# else
883# define wxUSE_STATBOX 0
884# endif
885#endif /* !defined(wxUSE_STATBOX) */
886
887#ifndef wxUSE_STATLINE
888# ifdef wxABORT_ON_CONFIG_ERROR
889# error "wxUSE_STATLINE must be defined."
890# else
891# define wxUSE_STATLINE 0
892# endif
893#endif /* !defined(wxUSE_STATLINE) */
894
3379ed37
VZ
895#ifndef wxUSE_STATTEXT
896# ifdef wxABORT_ON_CONFIG_ERROR
897# error "wxUSE_STATTEXT must be defined."
898# else
899# define wxUSE_STATTEXT 0
900# endif
901#endif /* !defined(wxUSE_STATTEXT) */
902
1e6feb95
VZ
903#ifndef wxUSE_STATUSBAR
904# ifdef wxABORT_ON_CONFIG_ERROR
905# error "wxUSE_STATUSBAR must be defined."
906# else
907# define wxUSE_STATUSBAR 0
908# endif
909#endif /* !defined(wxUSE_STATUSBAR) */
910
1e6feb95
VZ
911#ifndef wxUSE_TAB_DIALOG
912# ifdef wxABORT_ON_CONFIG_ERROR
913# error "wxUSE_TAB_DIALOG must be defined."
914# else
915# define wxUSE_TAB_DIALOG 0
916# endif
917#endif /* !defined(wxUSE_TAB_DIALOG) */
918
919#ifndef wxUSE_TEXTCTRL
920# ifdef wxABORT_ON_CONFIG_ERROR
921# error "wxUSE_TEXTCTRL must be defined."
922# else
923# define wxUSE_TEXTCTRL 0
924# endif
925#endif /* !defined(wxUSE_TEXTCTRL) */
926
f38bcae5
VZ
927#ifndef wxUSE_TIPWINDOW
928# ifdef wxABORT_ON_CONFIG_ERROR
929# error "wxUSE_TIPWINDOW must be defined."
930# else
931# define wxUSE_TIPWINDOW 0
932# endif
933#endif /* !defined(wxUSE_TIPWINDOW) */
934
1e6feb95
VZ
935#ifndef wxUSE_TOOLBAR
936# ifdef wxABORT_ON_CONFIG_ERROR
937# error "wxUSE_TOOLBAR must be defined."
938# else
939# define wxUSE_TOOLBAR 0
940# endif
941#endif /* !defined(wxUSE_TOOLBAR) */
942
943#ifndef wxUSE_TOOLTIPS
944# ifdef wxABORT_ON_CONFIG_ERROR
945# error "wxUSE_TOOLTIPS must be defined."
946# else
947# define wxUSE_TOOLTIPS 0
948# endif
949#endif /* !defined(wxUSE_TOOLTIPS) */
950
951#ifndef wxUSE_TREECTRL
952# ifdef wxABORT_ON_CONFIG_ERROR
953# error "wxUSE_TREECTRL must be defined."
954# else
955# define wxUSE_TREECTRL 0
956# endif
957#endif /* !defined(wxUSE_TREECTRL) */
958
f8ba082e 959#ifndef wxUSE_VALIDATORS
12491c1f 960# ifdef wxABORT_ON_CONFIG_ERROR
f8ba082e 961# error "wxUSE_VALIDATORS must be defined."
12491c1f 962# else
f8ba082e 963# define wxUSE_VALIDATORS 0
12491c1f 964# endif
f8ba082e 965#endif /* !defined(wxUSE_VALIDATORS) */
12491c1f 966
3379ed37
VZ
967#ifndef wxUSE_WXHTML_HELP
968# ifdef wxABORT_ON_CONFIG_ERROR
969# error "wxUSE_WXHTML_HELP must be defined."
970# else
971# define wxUSE_WXHTML_HELP 0
972# endif
973#endif /* !defined(wxUSE_WXHTML_HELP) */
974
e16514bf
VZ
975#ifndef wxUSE_XRC
976# ifdef wxABORT_ON_CONFIG_ERROR
977# error "wxUSE_XRC must be defined."
978# else
979# define wxUSE_XRC 0
980# endif
981#endif /* !defined(wxUSE_XRC) */
982
a5d46b73 983#endif /* wxUSE_GUI */
c4d596ea 984
1e6feb95
VZ
985/*
986 check consistency of the settings
987 */
a5d46b73 988
c1dc9f83
VZ
989#if WXWIN_COMPATIBILITY_2_6
990# if !WXWIN_COMPATIBILITY_2_8
f7c3b945 991# ifdef wxABORT_ON_CONFIG_ERROR
c1dc9f83 992# error "2.6.X compatibility requires 2.8.X compatibility"
f7c3b945 993# else
c1dc9f83
VZ
994# undef WXWIN_COMPATIBILITY_2_8
995# define WXWIN_COMPATIBILITY_2_8 1
f7c3b945
WS
996# endif
997# endif
c1dc9f83 998#endif /* WXWIN_COMPATIBILITY_2_6 */
f7c3b945 999
5d36ad18
VZ
1000#if wxUSE_ARCHIVE_STREAMS
1001# if !wxUSE_DATETIME
1002# ifdef wxABORT_ON_CONFIG_ERROR
1003# error "wxArchive requires wxUSE_DATETIME"
1004# else
1005# undef wxUSE_ARCHIVE_STREAMS
1006# define wxUSE_ARCHIVE_STREAMS 0
1007# endif
1008# endif
1009#endif /* wxUSE_ARCHIVE_STREAMS */
1010
0c46d866
VZ
1011#if wxUSE_CRASHREPORT && !wxUSE_ON_FATAL_EXCEPTION
1012# ifdef wxABORT_ON_CONFIG_ERROR
1013# error "wxUSE_CRASHREPORT requires wxUSE_ON_FATAL_EXCEPTION"
1014# else
1015# undef wxUSE_CRASHREPORT
1016# define wxUSE_CRASHREPORT 0
1017# endif
1018#endif /* wxUSE_CRASHREPORT */
1019
a5d46b73
VZ
1020#if wxUSE_PROTOCOL_FILE || wxUSE_PROTOCOL_FTP || wxUSE_PROTOCOL_HTTP
1021# if !wxUSE_PROTOCOL
1022# ifdef wxABORT_ON_CONFIG_ERROR
1023# error "wxUSE_PROTOCOL_XXX requires wxUSE_PROTOCOL"
1024# else
1025# undef wxUSE_PROTOCOL
1026# define wxUSE_PROTOCOL 1
1027# endif
1028# endif
1029#endif /* wxUSE_PROTOCOL_XXX */
1030
1031#if wxUSE_URL
1032# if !wxUSE_PROTOCOL
1033# ifdef wxABORT_ON_CONFIG_ERROR
1034# error "wxUSE_URL requires wxUSE_PROTOCOL"
1035# else
1036# undef wxUSE_PROTOCOL
1037# define wxUSE_PROTOCOL 1
1038# endif
1039# endif
1040#endif /* wxUSE_URL */
1041
1042#if wxUSE_PROTOCOL
1043# if !wxUSE_SOCKETS
1044# if wxUSE_PROTOCOL_HTTP || wxUSE_PROTOCOL_FTP
1045# ifdef wxABORT_ON_CONFIG_ERROR
1046# error "wxUSE_PROTOCOL_FTP/HTTP requires wxUSE_SOCKETS"
1047# else
1048# undef wxUSE_SOCKETS
1049# define wxUSE_SOCKETS 1
1050# endif
1051# endif
1052# endif
1053
1054# if !wxUSE_STREAMS
1055# ifdef wxABORT_ON_CONFIG_ERROR
1056# error "wxUSE_PROTOCOL requires wxUSE_STREAMS"
1057# else
1058# undef wxUSE_STREAMS
1059# define wxUSE_STREAMS 1
1060# endif
1061# endif
1062#endif /* wxUSE_PROTOCOL */
1063
c7f3eecc
VZ
1064/* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
1065#if wxUSE_HTML
1066# if !wxUSE_FILESYSTEM
1067# ifdef wxABORT_ON_CONFIG_ERROR
1068# error "wxHTML requires wxFileSystem"
1069# else
1070# undef wxUSE_FILESYSTEM
1071# define wxUSE_FILESYSTEM 1
1072# endif
1073# endif
1074#endif /* wxUSE_HTML */
1075
916af76f
MW
1076#if wxUSE_FS_ARCHIVE
1077# if !wxUSE_FILESYSTEM
1078# ifdef wxABORT_ON_CONFIG_ERROR
1079# error "wxArchiveFSHandler requires wxFileSystem"
1080# else
1081# undef wxUSE_FILESYSTEM
1082# define wxUSE_FILESYSTEM 1
1083# endif
1084# endif
1085# if !wxUSE_ARCHIVE_STREAMS
1086# ifdef wxABORT_ON_CONFIG_ERROR
1087# error "wxArchiveFSHandler requires wxArchive"
1088# else
1089# undef wxUSE_ARCHIVE_STREAMS
1090# define wxUSE_ARCHIVE_STREAMS 1
1091# endif
1092# endif
1093#endif /* wxUSE_FS_ARCHIVE */
1094
c7f3eecc
VZ
1095#if wxUSE_FILESYSTEM
1096# if !wxUSE_STREAMS
1097# ifdef wxABORT_ON_CONFIG_ERROR
1098# error "wxUSE_FILESYSTEM requires wxUSE_STREAMS"
1099# else
1100# undef wxUSE_STREAMS
1101# define wxUSE_STREAMS 1
1102# endif
1103# endif
d9b0ee1e
VZ
1104# if !wxUSE_FILE && !wxUSE_FFILE
1105# ifdef wxABORT_ON_CONFIG_ERROR
1106# error "wxUSE_FILESYSTEM requires either wxUSE_FILE or wxUSE_FFILE"
1107# else
916af76f
MW
1108# undef wxUSE_FILE
1109# define wxUSE_FILE 1
1110# undef wxUSE_FFILE
1111# define wxUSE_FFILE 1
d9b0ee1e
VZ
1112# endif
1113# endif
c7f3eecc
VZ
1114#endif /* wxUSE_FILESYSTEM */
1115
ce73e654
VS
1116#if wxUSE_FS_INET
1117# if !wxUSE_PROTOCOL
1118# ifdef wxABORT_ON_CONFIG_ERROR
1119# error "wxUSE_FS_INET requires wxUSE_PROTOCOL"
1120# else
1121# undef wxUSE_PROTOCOL
1122# define wxUSE_PROTOCOL 1
1123# endif
1124# endif
1125#endif /* wxUSE_FS_INET */
1126
c7f3eecc 1127#if wxUSE_STOPWATCH || wxUSE_DATETIME
a5d46b73
VZ
1128# if !wxUSE_LONGLONG
1129# ifdef wxABORT_ON_CONFIG_ERROR
c7f3eecc 1130# error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG"
a5d46b73
VZ
1131# else
1132# undef wxUSE_LONGLONG
1133# define wxUSE_LONGLONG 1
1134# endif
1135# endif
1136#endif /* wxUSE_STOPWATCH */
1137
1138#if wxUSE_MIMETYPE && !wxUSE_TEXTFILE
1139# ifdef wxABORT_ON_CONFIG_ERROR
1140# error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE"
1141# else
1142# undef wxUSE_TEXTFILE
1143# define wxUSE_TEXTFILE 1
1144# endif
1145#endif /* wxUSE_MIMETYPE */
1146
5ac31f6f
VZ
1147#if wxUSE_ODBC
1148# if !wxUSE_DATETIME
1149# ifdef wxABORT_ON_CONFIG_ERROR
1150# error "wxODBC requires wxUSE_DATETIME"
1151# else
1152# undef wxUSE_ODBC
1153# define wxUSE_ODBC 0
1154# endif
1155# endif
1156#endif /* wxUSE_ODBC */
1157
a5d46b73
VZ
1158#if wxUSE_TEXTFILE && !wxUSE_TEXTBUFFER
1159# ifdef wxABORT_ON_CONFIG_ERROR
1160# error "wxUSE_TEXTFILE requires wxUSE_TEXTBUFFER"
1161# else
1162# undef wxUSE_TEXTBUFFER
1163# define wxUSE_TEXTBUFFER 1
1164# endif
1165#endif /* wxUSE_TEXTFILE */
1166
1167#if wxUSE_TEXTFILE && !wxUSE_FILE
1168# ifdef wxABORT_ON_CONFIG_ERROR
1169# error "wxUSE_TEXTFILE requires wxUSE_FILE"
1170# else
1171# undef wxUSE_FILE
1172# define wxUSE_FILE 1
1173# endif
1174#endif /* wxUSE_TEXTFILE */
1175
7f799744
VS
1176#if wxUSE_XML && !wxUSE_WCHAR_T
1177# ifdef wxABORT_ON_CONFIG_ERROR
1178# error "wxUSE_XML requires wxUSE_WCHAR_T"
1179# else
1180# undef wxUSE_XML
1181# define wxUSE_XML 0
1182# endif
36a22fa3 1183#endif /* wxUSE_XML */
7f799744 1184
1948bb32
VS
1185#if !wxUSE_DYNLIB_CLASS
1186# if wxUSE_DYNAMIC_LOADER
1187# ifdef wxABORT_ON_CONFIG_ERROR
1188# error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS."
1189# else
1190# define wxUSE_DYNLIB_CLASS 1
1191# endif
1192# endif
1193#endif /* wxUSE_DYNLIB_CLASS */
1194
81f90336
MW
1195#if wxUSE_ZIPSTREAM
1196# if !wxUSE_ZLIB
1197# ifdef wxABORT_ON_CONFIG_ERROR
1198# error "wxZip requires wxZlib"
1199# else
1200# undef wxUSE_ZLIB
1201# define wxUSE_ZLIB 1
1202# endif
1203# endif
9e8e867f 1204# if !wxUSE_ARCHIVE_STREAMS
81f90336
MW
1205# ifdef wxABORT_ON_CONFIG_ERROR
1206# error "wxZip requires wxArchive"
1207# else
9e8e867f
MW
1208# undef wxUSE_ARCHIVE_STREAMS
1209# define wxUSE_ARCHIVE_STREAMS 1
81f90336
MW
1210# endif
1211# endif
1212#endif /* wxUSE_ZIPSTREAM */
1213
26e422a9
MW
1214#if wxUSE_TARSTREAM
1215# if !wxUSE_ARCHIVE_STREAMS
1216# ifdef wxABORT_ON_CONFIG_ERROR
1217# error "wxTar requires wxArchive"
1218# else
1219# undef wxUSE_ARCHIVE_STREAMS
1220# define wxUSE_ARCHIVE_STREAMS 1
1221# endif
1222# endif
1223#endif /* wxUSE_TARSTREAM */
1224
a5d46b73
VZ
1225/* the rest of the tests is for the GUI settings only */
1226#if wxUSE_GUI
1227
1e6feb95
VZ
1228#if wxUSE_BUTTON || \
1229 wxUSE_CALENDARCTRL || \
1230 wxUSE_CARET || \
1231 wxUSE_COMBOBOX || \
1232 wxUSE_BMPBUTTON || \
1233 wxUSE_CHECKBOX || \
1234 wxUSE_CHECKLISTBOX || \
1235 wxUSE_CHOICE || \
1236 wxUSE_GAUGE || \
1237 wxUSE_GRID || \
1e6feb95
VZ
1238 wxUSE_LISTBOX || \
1239 wxUSE_LISTCTRL || \
1240 wxUSE_NOTEBOOK || \
1241 wxUSE_RADIOBOX || \
1242 wxUSE_RADIOBTN || \
1243 wxUSE_SCROLLBAR || \
1244 wxUSE_SLIDER || \
1245 wxUSE_SPINBTN || \
1246 wxUSE_SPINCTRL || \
1247 wxUSE_STATBMP || \
1248 wxUSE_STATBOX || \
1249 wxUSE_STATLINE || \
3379ed37 1250 wxUSE_STATTEXT || \
1e6feb95
VZ
1251 wxUSE_STATUSBAR || \
1252 wxUSE_TEXTCTRL || \
1253 wxUSE_TOOLBAR || \
1254 wxUSE_TREECTRL
1255# if !wxUSE_CONTROLS
1256# ifdef wxABORT_ON_CONFIG_ERROR
1257# error "wxUSE_CONTROLS unset but some controls used"
1258# else
1259# undef wxUSE_CONTROLS
1260# define wxUSE_CONTROLS 1
1261# endif
1262# endif
1263#endif /* controls */
1264
0b4f47a3
DS
1265#if wxUSE_BMPBUTTON
1266# if !wxUSE_BUTTON
1267# ifdef wxABORT_ON_CONFIG_ERROR
1268# error "wxUSE_BMPBUTTON requires wxUSE_BUTTON"
1269# else
1270# undef wxUSE_BUTTON
1271# define wxUSE_BUTTON 1
1272# endif
1273# endif
1274#endif /* wxUSE_BMPBUTTON */
1275
aa017eab
VZ
1276/*
1277 wxUSE_BOOKCTRL should be only used if any of the controls deriving from it
1278 are used
1279 */
1280#ifdef wxUSE_BOOKCTRL
1281# ifdef wxABORT_ON_CONFIG_ERROR
1282# error "wxUSE_BOOKCTRL is defined automatically, don't define it"
1283# else
1284# undef wxUSE_BOOKCTRL
15aad3b9 1285# endif
aa017eab 1286#endif
15aad3b9 1287
aa017eab
VZ
1288#define wxUSE_BOOKCTRL (wxUSE_NOTEBOOK || \
1289 wxUSE_LISTBOOK || \
1290 wxUSE_CHOICEBOOK || \
8d206c07 1291 wxUSE_TOOLBOOK || \
aa017eab 1292 wxUSE_TREEBOOK)
15aad3b9 1293
0917b10c
VZ
1294#if wxUSE_COLLPANE
1295# if !wxUSE_BUTTON || !wxUSE_STATLINE
1296# ifdef wxABORT_ON_CONFIG_ERROR
1297# error "wxUSE_COLLPANE requires wxUSE_BUTTON and wxUSE_STATLINE"
1298# else
1299# undef wxUSE_COLLPANE
1300# define wxUSE_COLLPANE 0
1301# endif
1302# endif
1303#endif /* wxUSE_COLLPANE */
1304
5b5e4f32
VZ
1305#if wxUSE_LISTBOOK
1306# if !wxUSE_LISTCTRL
1307# ifdef wxABORT_ON_CONFIG_ERROR
1308# error "wxListbook requires wxListCtrl"
1309# else
1310# undef wxUSE_LISTCTRL
1311# define wxUSE_LISTCTRL 1
1312# endif
1313# endif
1314#endif /* wxUSE_LISTBOOK */
1315
f5e0b4bc
WS
1316#if wxUSE_CHOICEBOOK
1317# if !wxUSE_CHOICE
1318# ifdef wxABORT_ON_CONFIG_ERROR
1319# error "wxChoicebook requires wxChoice"
1320# else
1321# undef wxUSE_CHOICE
1322# define wxUSE_CHOICE 1
1323# endif
1324# endif
1325#endif /* wxUSE_CHOICEBOOK */
1326
8d206c07
PC
1327#if wxUSE_TOOLBOOK
1328# if !wxUSE_TOOLBAR
1329# ifdef wxABORT_ON_CONFIG_ERROR
1330# error "wxToolbook requires wxToolBar"
1331# else
1332# undef wxUSE_TOOLBAR
1333# define wxUSE_TOOLBAR 1
1334# endif
1335# endif
1336#endif /* wxUSE_TOOLBOOK */
1337
8d37334f
VZ
1338#if !wxUSE_ODCOMBOBOX
1339# if wxUSE_BITMAPCOMBOBOX
1340# error "wxBitmapComboBox requires wxOwnerDrawnComboBox"
1341# else
1342# undef wxUSE_BITMAPCOMBOBOX
1343# define wxUSE_BITMAPCOMBOBOX 0
1344# endif
1345#endif /* !wxUSE_ODCOMBOBOX */
1346
da4486fb
VZ
1347/* don't attempt to use native status bar on the platforms not having it */
1348#ifndef wxUSE_NATIVE_STATUSBAR
1349# define wxUSE_NATIVE_STATUSBAR 0
1350#elif wxUSE_NATIVE_STATUSBAR
b08cd3bf
WS
1351# if defined(__WXUNIVERSAL__) || !( defined(__WXMSW__) || \
1352 defined(__WXMAC__) || \
1353 defined(__WXPALMOS__) )
da4486fb
VZ
1354# undef wxUSE_NATIVE_STATUSBAR
1355# define wxUSE_NATIVE_STATUSBAR 0
1356# endif
1357#endif
1358
f43426c1
RD
1359#if wxUSE_GRAPHICS_CONTEXT && !wxUSE_GEOMETRY
1360# ifdef wxABORT_ON_CONFIG_ERROR
1361# error "wxUSE_GRAPHICS_CONTEXT requires wxUSE_GEOMETRY"
1362# else
1363# undef wxUSE_GRAPHICS_CONTEXT
1364# define wxUSE_GRAPHICS_CONTEXT 0
1365# endif
1366#endif /* wxUSE_GRAPHICS_CONTEXT */
1367
1368
3379ed37 1369/* wxGTK-specific dependencies */
2131b89d
VZ
1370#ifdef __WXGTK__
1371# ifndef __WXUNIVERSAL__
1372# if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS
1373# ifdef wxABORT_ON_CONFIG_ERROR
1374# error "MDI requires wxUSE_MENUS in wxGTK"
1375# else
1376# undef wxUSE_MENUS
1377# define wxUSE_MENUS 1
1378# endif
1379# endif
1380# endif /* !__WXUNIVERSAL__ */
1381
1382# if wxUSE_JOYSTICK
1383# if !wxUSE_THREADS
1384# ifdef wxABORT_ON_CONFIG_ERROR
1385# error "wxJoystick requires threads in wxGTK"
1386# else
1387# undef wxUSE_JOYSTICK
1388# define wxUSE_JOYSTICK 0
1389# endif
3379ed37
VZ
1390# endif
1391# endif
1392#endif /* wxGTK && !wxUniv */
1393
67e489c5 1394/* Hopefully we can emulate these dialogs in due course */
9b141468 1395#if defined(__SMARTPHONE__) && defined(__WXWINCE__)
b92203a8
VZ
1396# ifdef wxUSE_COLOURDLG
1397# undef wxUSE_COLOURDLG
1398# define wxUSE_COLOURDLG 0
1399# endif
9b141468 1400#endif /* __SMARTPHONE__ && __WXWINCE__ */
b92203a8
VZ
1401
1402
3379ed37
VZ
1403/* generic controls dependencies */
1404#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
1405# if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
1406 /* all common controls are needed by these dialogs */
1407# if !defined(wxUSE_CHOICE) || \
1408 !defined(wxUSE_TEXTCTRL) || \
1409 !defined(wxUSE_BUTTON) || \
1410 !defined(wxUSE_CHECKBOX) || \
1411 !defined(wxUSE_STATTEXT)
1412# ifdef wxABORT_ON_CONFIG_ERROR
1413# error "These common controls are needed by common dialogs"
1414# else
1415# undef wxUSE_CHOICE
1416# define wxUSE_CHOICE 1
1417# undef wxUSE_TEXTCTRL
1418# define wxUSE_TEXTCTRL 1
1419# undef wxUSE_BUTTON
1420# define wxUSE_BUTTON 1
1421# undef wxUSE_CHECKBOX
1422# define wxUSE_CHECKBOX 1
1423# undef wxUSE_STATTEXT
1424# define wxUSE_STATTEXT 1
1425# endif
1426# endif
1427# endif
1428#endif /* !wxMSW || wxUniv */
1429
1430/* common dependencies */
1e6feb95
VZ
1431#if wxUSE_CALENDARCTRL
1432# if !(wxUSE_SPINBTN && wxUSE_COMBOBOX)
1433# ifdef wxABORT_ON_CONFIG_ERROR
1434# error "wxCalendarCtrl requires wxSpinButton and wxComboBox"
1435# else
1436# undef wxUSE_SPINBTN
1437# undef wxUSE_COMBOBOX
1438# define wxUSE_SPINBTN 1
1439# define wxUSE_COMBOBOX 1
1440# endif
1441# endif
e2b87f38
VZ
1442
1443# if !wxUSE_DATETIME
1444# ifdef wxABORT_ON_CONFIG_ERROR
1445# error "wxCalendarCtrl requires wxUSE_DATETIME"
1446# else
1447# undef wxUSE_DATETIME
1448# define wxUSE_DATETIME 1
1449# endif
1450# endif
1e6feb95
VZ
1451#endif /* wxUSE_CALENDARCTRL */
1452
324eeecb
WS
1453#if wxUSE_DATEPICKCTRL
1454# if !wxUSE_DATETIME
1455# ifdef wxABORT_ON_CONFIG_ERROR
60bea0cf 1456# error "wxDatePickerCtrl requires wxUSE_DATETIME"
324eeecb
WS
1457# else
1458# undef wxUSE_DATETIME
1459# define wxUSE_DATETIME 1
1460# endif
1461# endif
1462#endif /* wxUSE_DATEPICKCTRL */
1463
1e6feb95
VZ
1464#if wxUSE_CHECKLISTBOX
1465# if !wxUSE_LISTBOX
1466# ifdef wxABORT_ON_CONFIG_ERROR
1467# error "wxCheckListBox requires wxListBox"
1468# else
1469# undef wxUSE_LISTBOX
1470# define wxUSE_LISTBOX 1
1471# endif
1472# endif
97e4cf6d
WS
1473#endif /* wxUSE_CHECKLISTBOX */
1474
1475#if wxUSE_CHOICEDLG
1476# if !wxUSE_LISTBOX
1477# ifdef wxABORT_ON_CONFIG_ERROR
1478# error "Choice dialogs requires wxListBox"
1479# else
1480# undef wxUSE_LISTBOX
1481# define wxUSE_LISTBOX 1
1482# endif
1483# endif
1484#endif /* wxUSE_CHOICEDLG */
1e6feb95 1485
0b4f47a3
DS
1486#if wxUSE_HELP
1487# if !wxUSE_BMPBUTTON
1488# ifdef wxABORT_ON_CONFIG_ERROR
1489# error "wxUSE_HELP requires wxUSE_BMPBUTTON"
1490# else
1491# undef wxUSE_BMPBUTTON
1492# define wxUSE_BMPBUTTON 1
1493# endif
1494# endif
adb799d6
DS
1495
1496# if !wxUSE_CHOICEDLG
1497# ifdef wxABORT_ON_CONFIG_ERROR
1498# error "wxUSE_HELP requires wxUSE_CHOICEDLG"
1499# else
1500# undef wxUSE_CHOICEDLG
1501# define wxUSE_CHOICEDLG 1
1502# endif
1503# endif
0b4f47a3
DS
1504#endif /* wxUSE_HELP */
1505
09f43fd3
VZ
1506#if wxUSE_MS_HTML_HELP
1507 /*
1508 this doesn't make sense for platforms other than MSW but we still
1509 define it in wx/setup_inc.h so don't complain if it happens to be
1510 defined under another platform but just silently fix it.
1511 */
1512# ifndef __WXMSW__
1513# undef wxUSE_MS_HTML_HELP
1514# define wxUSE_MS_HTML_HELP 0
1515# endif
1516#endif /* wxUSE_MS_HTML_HELP */
1517
3379ed37 1518#if wxUSE_WXHTML_HELP
0e871ad0 1519# if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK || !wxUSE_SPINCTRL
3379ed37
VZ
1520# ifdef wxABORT_ON_CONFIG_ERROR
1521# error "Built in help controller can't be compiled"
1522# else
1523# undef wxUSE_HELP
1524# define wxUSE_HELP 1
1525# undef wxUSE_HTML
1526# define wxUSE_HTML 1
1527# undef wxUSE_COMBOBOX
1528# define wxUSE_COMBOBOX 1
730dfeb4
VS
1529# undef wxUSE_NOTEBOOK
1530# define wxUSE_NOTEBOOK 1
0e871ad0
WS
1531# undef wxUSE_SPINCTRL
1532# define wxUSE_SPINCTRL 1
3379ed37
VZ
1533# endif
1534# endif
1535#endif /* wxUSE_WXHTML_HELP */
1536
05e4fd64
DS
1537#if !wxUSE_IMAGE
1538/*
1539 The default wxUSE_IMAGE setting is 1, so if it's set to 0 we assume the
1540 user explicitly wants this and disable all other features that require
1541 wxUSE_IMAGE.
1542 */
1543# if wxUSE_DRAGIMAGE
1544# ifdef wxABORT_ON_CONFIG_ERROR
1545# error "wxUSE_DRAGIMAGE requires wxUSE_IMAGE"
1546# else
1547# undef wxUSE_DRAGIMAGE
1548# define wxUSE_DRAGIMAGE 0
1549# endif
1550# endif
1551
1552# if wxUSE_LIBPNG
1553# ifdef wxABORT_ON_CONFIG_ERROR
1554# error "wxUSE_LIBPNG requires wxUSE_IMAGE"
1555# else
1556# undef wxUSE_LIBPNG
1557# define wxUSE_LIBPNG 0
1558# endif
1559# endif
1560
1561# if wxUSE_LIBJPEG
1562# ifdef wxABORT_ON_CONFIG_ERROR
1563# error "wxUSE_LIBJPEG requires wxUSE_IMAGE"
1564# else
1565# undef wxUSE_LIBJPEG
1566# define wxUSE_LIBJPEG 0
1567# endif
1568# endif
1569
1570# if wxUSE_LIBTIFF
1571# ifdef wxABORT_ON_CONFIG_ERROR
1572# error "wxUSE_LIBTIFF requires wxUSE_IMAGE"
1573# else
1574# undef wxUSE_LIBTIFF
1575# define wxUSE_LIBTIFF 0
1576# endif
1577# endif
1578
1579# if wxUSE_GIF
1580# ifdef wxABORT_ON_CONFIG_ERROR
1581# error "wxUSE_GIF requires wxUSE_IMAGE"
1582# else
1583# undef wxUSE_GIF
1584# define wxUSE_GIF 0
1585# endif
1586# endif
1587
1588# if wxUSE_PNM
1589# ifdef wxABORT_ON_CONFIG_ERROR
1590# error "wxUSE_PNM requires wxUSE_IMAGE"
1591# else
1592# undef wxUSE_PNM
1593# define wxUSE_PNM 0
1594# endif
1595# endif
1596
1597# if wxUSE_PCX
1598# ifdef wxABORT_ON_CONFIG_ERROR
1599# error "wxUSE_PCX requires wxUSE_IMAGE"
1600# else
1601# undef wxUSE_PCX
1602# define wxUSE_PCX 0
1603# endif
1604# endif
1605
1606# if wxUSE_IFF
1607# ifdef wxABORT_ON_CONFIG_ERROR
1608# error "wxUSE_IFF requires wxUSE_IMAGE"
1609# else
1610# undef wxUSE_IFF
1611# define wxUSE_IFF 0
1612# endif
1613# endif
1614
1615# if wxUSE_TOOLBAR
1616# ifdef wxABORT_ON_CONFIG_ERROR
1617# error "wxUSE_TOOLBAR requires wxUSE_IMAGE"
1618# else
1619# undef wxUSE_TOOLBAR
1620# define wxUSE_TOOLBAR 0
1621# endif
1622# endif
1623
1624# if wxUSE_XPM
1625# ifdef wxABORT_ON_CONFIG_ERROR
1626# error "wxUSE_XPM requires wxUSE_IMAGE"
1627# else
1628# undef wxUSE_XPM
1629# define wxUSE_XPM 0
1630# endif
1631# endif
1632
1633#endif /* !wxUSE_IMAGE */
1634
e30285ab
VZ
1635#if wxUSE_DOC_VIEW_ARCHITECTURE
1636# if !wxUSE_MENUS
1637# ifdef wxABORT_ON_CONFIG_ERROR
1638# error "DocView requires wxUSE_MENUS"
1639# else
1640# undef wxUSE_MENUS
1641# define wxUSE_MENUS 1
1642# endif
1643# endif
1644
adb799d6
DS
1645# if !wxUSE_CHOICEDLG
1646# ifdef wxABORT_ON_CONFIG_ERROR
1647# error "DocView requires wxUSE_CHOICEDLG"
1648# else
1649# undef wxUSE_CHOICEDLG
1650# define wxUSE_CHOICEDLG 1
1651# endif
1652# endif
1653
e30285ab
VZ
1654# if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM
1655# ifdef wxABORT_ON_CONFIG_ERROR
1656# error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM"
1657# else
1658# undef wxUSE_STREAMS
1659# define wxUSE_STREAMS 1
1660# endif
1661# endif
1662#endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
1663
3379ed37
VZ
1664#if wxUSE_PRINTING_ARCHITECTURE
1665# if !wxUSE_COMBOBOX
1666# ifdef wxABORT_ON_CONFIG_ERROR
1667# error "Print dialog requires wxUSE_COMBOBOX"
1668# else
1669# undef wxUSE_COMBOBOX
1670# define wxUSE_COMBOBOX 1
1671# endif
1672# endif
1673#endif /* wxUSE_PRINTING_ARCHITECTURE */
1674
e30285ab 1675#if wxUSE_MDI_ARCHITECTURE
efd17a1d
VZ
1676# if !wxUSE_MDI
1677# ifdef wxABORT_ON_CONFIG_ERROR
1678# error "MDI requires wxUSE_MDI"
1679# else
1680# undef wxUSE_MDI
1681# define wxUSE_MDI 1
1682# endif
1683# endif
1684
e30285ab 1685# if !wxUSE_DOC_VIEW_ARCHITECTURE
1e6feb95 1686# ifdef wxABORT_ON_CONFIG_ERROR
0872eaf9 1687# error "wxUSE_MDI_ARCHITECTURE requires wxUSE_DOC_VIEW_ARCHITECTURE"
1e6feb95 1688# else
e30285ab
VZ
1689# undef wxUSE_DOC_VIEW_ARCHITECTURE
1690# define wxUSE_DOC_VIEW_ARCHITECTURE 1
1e6feb95
VZ
1691# endif
1692# endif
e30285ab 1693#endif /* wxUSE_MDI_ARCHITECTURE */
1e6feb95
VZ
1694
1695#if !wxUSE_FILEDLG
2119e280 1696# if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP
1e6feb95 1697# ifdef wxABORT_ON_CONFIG_ERROR
0872eaf9 1698# error "wxUSE_FILEDLG is required by wxUSE_DOC_VIEW_ARCHITECTURE and wxUSE_WXHTML_HELP!"
1e6feb95
VZ
1699# else
1700# undef wxUSE_FILEDLG
1701# define wxUSE_FILEDLG 1
1702# endif
1703# endif
e421922f 1704#endif /* wxUSE_FILEDLG */
1e6feb95 1705
555f645a
WS
1706#if !wxUSE_GAUGE || !wxUSE_BUTTON
1707# if wxUSE_PROGRESSDLG && !defined(__WXPALMOS__)
063b752e 1708# ifdef wxABORT_ON_CONFIG_ERROR
555f645a 1709# error "Generic progress dialog requires wxUSE_GAUGE and wxUSE_BUTTON"
063b752e
WS
1710# else
1711# undef wxUSE_GAUGE
555f645a 1712# undef wxUSE_BUTTON
063b752e 1713# define wxUSE_GAUGE 1
555f645a 1714# define wxUSE_BUTTON 1
063b752e
WS
1715# endif
1716# endif
1717#endif /* !wxUSE_GAUGE */
1718
0b4f47a3 1719#if !wxUSE_BUTTON
555f645a 1720# if wxUSE_FONTDLG || \
0b4f47a3
DS
1721 wxUSE_FILEDLG || \
1722 wxUSE_CHOICEDLG || \
1723 wxUSE_NUMBERDLG || \
1724 wxUSE_TEXTDLG || \
1725 wxUSE_DIRDLG || \
1726 wxUSE_STARTUP_TIPS || \
1727 wxUSE_WIZARDDLG
1728# ifdef wxABORT_ON_CONFIG_ERROR
1729# error "Common and generic dialogs require wxUSE_BUTTON"
1730# else
1731# undef wxUSE_BUTTON
1732# define wxUSE_BUTTON 1
1733# endif
1734# endif
063b752e 1735#endif /* !wxUSE_BUTTON */
0b4f47a3 1736
12491c1f
JS
1737#if !wxUSE_TOOLBAR
1738# if wxUSE_TOOLBAR_NATIVE
1739# ifdef wxABORT_ON_CONFIG_ERROR
1740# error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_NATIVE is set to 1"
1741# else
1742# undef wxUSE_TOOLBAR_NATIVE
1743# define wxUSE_TOOLBAR_NATIVE 0
1744# endif
1745# endif
12491c1f
JS
1746#endif
1747
1e6feb95
VZ
1748#if !wxUSE_IMAGLIST
1749# if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL
1750# ifdef wxABORT_ON_CONFIG_ERROR
1751# error "wxImageList must be compiled as well"
1752# else
1753# undef wxUSE_IMAGLIST
1754# define wxUSE_IMAGLIST 1
1755# endif
1756# endif
1757#endif /* !wxUSE_IMAGLIST */
1758
1e6feb95 1759#if wxUSE_RADIOBOX
9a727a3b 1760# if !wxUSE_RADIOBTN
1e6feb95 1761# ifdef wxABORT_ON_CONFIG_ERROR
9a727a3b 1762# error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN"
1e6feb95
VZ
1763# else
1764# undef wxUSE_RADIOBTN
1e6feb95 1765# define wxUSE_RADIOBTN 1
9a727a3b
WS
1766# endif
1767# endif
1768# if !wxUSE_STATBOX && !defined(__WXPALMOS__)
1769# ifdef wxABORT_ON_CONFIG_ERROR
1770# error "wxUSE_RADIOBOX requires wxUSE_STATBOX"
1771# else
1772# undef wxUSE_STATBOX
1e6feb95
VZ
1773# define wxUSE_STATBOX 1
1774# endif
1775# endif
1776#endif /* wxUSE_RADIOBOX */
1777
3379ed37
VZ
1778#if wxUSE_LOGWINDOW
1779# if !wxUSE_TEXTCTRL
1780# ifdef wxABORT_ON_CONFIG_ERROR
1781# error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL"
1782# else
1783# undef wxUSE_TEXTCTRL
1784# define wxUSE_TEXTCTRL 1
1785# endif
1786# endif
1787#endif /* wxUSE_LOGWINDOW */
1e6feb95 1788
3e6e2754 1789#if wxUSE_LOG_DIALOG
0b4f47a3 1790# if !wxUSE_LISTCTRL || !wxUSE_BUTTON
3e6e2754 1791# ifdef wxABORT_ON_CONFIG_ERROR
0b4f47a3 1792# error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL and wxUSE_BUTTON"
3e6e2754
JS
1793# else
1794# undef wxUSE_LISTCTRL
1795# define wxUSE_LISTCTRL 1
0b4f47a3
DS
1796# undef wxUSE_BUTTON
1797# define wxUSE_BUTTON 1
3e6e2754
JS
1798# endif
1799# endif
1800#endif /* wxUSE_LOG_DIALOG */
1801
1e6feb95 1802#if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ
3379ed37 1803# ifdef wxABORT_ON_CONFIG_ERROR
1e6feb95
VZ
1804# error "wxClipboard requires wxDataObject"
1805# else
1806# undef wxUSE_DATAOBJ
1807# define wxUSE_DATAOBJ 1
1808# endif
1809#endif /* wxUSE_CLIPBOARD */
1810
d2ebf0b7
VS
1811#if wxUSE_XRC && !wxUSE_XML
1812# ifdef wxABORT_ON_CONFIG_ERROR
1813# error "wxUSE_XRC requires wxUSE_XML"
1814# else
1815# undef wxUSE_XRC
1816# define wxUSE_XRC 0
1817# endif
5a017695 1818#endif /* wxUSE_XRC */
d2ebf0b7 1819
4669dcb2
RN
1820#if wxUSE_SOCKETS && !wxUSE_STOPWATCH
1821# ifdef wxABORT_ON_CONFIG_ERROR
1822# error "wxUSE_SOCKETS requires wxUSE_STOPWATCH"
1823# else
1824# undef wxUSE_SOCKETS
1825# define wxUSE_SOCKETS 0
1826# endif
1827#endif /* wxUSE_SOCKETS */
1828
b0fc907f
VZ
1829#if wxUSE_SVG && !wxUSE_STREAMS
1830# ifdef wxABORT_ON_CONFIG_ERROR
1831# error "wxUSE_SVG requires wxUSE_STREAMS"
1832# else
1833# undef wxUSE_SVG
1834# define wxUSE_SVG 0
1835# endif
1836#endif /* wxUSE_SVG */
1837
ca5c6ac3
VZ
1838#if !wxUSE_VARIANT
1839# if wxUSE_DATAVIEWCTRL
1840# ifdef wxABORT_ON_CONFIG_ERROR
1841# error "wxDataViewCtrl requires wxVariant"
1842# else
1843# undef wxUSE_DATAVIEWCTRL
1844# define wxUSE_DATAVIEWCTRL 0
1845# endif
1846# endif
1847
1848# if wxUSE_ODBC
1849# ifdef wxABORT_ON_CONFIG_ERROR
1850# error "wxUSE_ODBC requires wxVariant"
1851# else
1852# undef wxUSE_ODBC
1853# define wxUSE_ODBC 0
1854# endif
1855# endif
1856#endif /* wxUSE_VARIANT */
1857
1e6feb95 1858#endif /* wxUSE_GUI */
8ba16443
VZ
1859
1860#endif /* _WX_CHKCONF_H_ */