]> git.saurik.com Git - wxWidgets.git/blame - include/wx/chkconf.h
Use wmain() if supported by the compiler/CRT instead of main().
[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
aa62256a
VZ
16/*
17 **************************************************
18 PLEASE READ THIS IF YOU GET AN ERROR IN THIS FILE!
19 **************************************************
20
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
4c51a665 24 setup0.h and you haven't updated your local setup.h to reflect it. If
aa62256a
VZ
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
4c51a665 27 build directory (lib/$(COMPILER)_{lib,dll}/msw[u][d][dll]/wx) so that
aa62256a
VZ
28 the new setup.h is copied there.
29
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
34 might work).
35 */
36
01ebf752 37/*
6619edf0
VZ
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
01ebf752
JS
46 */
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
cbab1556 52 error and abort (default as leads to least surprising behaviour)
1e6feb95
VZ
53 */
54#define wxABORT_ON_CONFIG_ERROR
55
6962f34e
VZ
56/*
57 global features
58 */
59
1bbcb0d5
VZ
60/*
61 If we're compiling without support for threads/exceptions we have to
62 disable the corresponding features.
63 */
64#ifdef wxNO_THREADS
65# undef wxUSE_THREADS
66# define wxUSE_THREADS 0
67#endif /* wxNO_THREADS */
68
69#ifdef wxNO_EXCEPTIONS
70# undef wxUSE_EXCEPTIONS
71# define wxUSE_EXCEPTIONS 0
72#endif /* wxNO_EXCEPTIONS */
73
4652511f
VZ
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 */
79
1bbcb0d5 80
1e6feb95 81/*
6619edf0 82 Section 1a: tests for non GUI features.
e16514bf
VZ
83
84 please keep the options in alphabetical order!
03169422
RL
85 */
86
178c7760
JS
87#ifndef wxUSE_ANY
88# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 89# error "wxUSE_ANY must be defined, please read comment near the top of this file."
178c7760
JS
90# else
91# define wxUSE_ANY 0
92# endif
93#endif /* wxUSE_ANY */
94
b33e9f40
VZ
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."
98# else
99# define wxUSE_COMPILER_TLS 0
100# endif
101#endif /* !defined(wxUSE_COMPILER_TLS) */
102
a1873279
VZ
103#ifndef wxUSE_CONSOLE_EVENTLOOP
104# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 105# error "wxUSE_CONSOLE_EVENTLOOP must be defined, please read comment near the top of this file."
a1873279
VZ
106# else
107# define wxUSE_CONSOLE_EVENTLOOP 0
108# endif
109#endif /* !defined(wxUSE_CONSOLE_EVENTLOOP) */
110
03169422
RL
111#ifndef wxUSE_DYNLIB_CLASS
112# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 113# error "wxUSE_DYNLIB_CLASS must be defined, please read comment near the top of this file."
03169422
RL
114# else
115# define wxUSE_DYNLIB_CLASS 0
116# endif
117#endif /* !defined(wxUSE_DYNLIB_CLASS) */
118
4199367e
VZ
119#ifndef wxUSE_EXCEPTIONS
120# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 121# error "wxUSE_EXCEPTIONS must be defined, please read comment near the top of this file."
4199367e
VZ
122# else
123# define wxUSE_EXCEPTIONS 0
124# endif
125#endif /* !defined(wxUSE_EXCEPTIONS) */
126
f19f8180
VS
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."
130# else
131# define wxUSE_FILE_HISTORY 0
132# endif
133#endif /* !defined(wxUSE_FILE_HISTORY) */
134
c7f3eecc
VZ
135#ifndef wxUSE_FILESYSTEM
136# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 137# error "wxUSE_FILESYSTEM must be defined, please read comment near the top of this file."
c7f3eecc
VZ
138# else
139# define wxUSE_FILESYSTEM 0
140# endif
141#endif /* !defined(wxUSE_FILESYSTEM) */
142
26e422a9
MW
143#ifndef wxUSE_FS_ARCHIVE
144# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 145# error "wxUSE_FS_ARCHIVE must be defined, please read comment near the top of this file."
26e422a9
MW
146# else
147# define wxUSE_FS_ARCHIVE 0
148# endif
149#endif /* !defined(wxUSE_FS_ARCHIVE) */
150
05815ab3 151#ifndef wxUSE_FSVOLUME
83d56dd1 152# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 153# error "wxUSE_FSVOLUME must be defined, please read comment near the top of this file."
83d56dd1
FM
154# else
155# define wxUSE_FSVOLUME 0
156# endif
05815ab3
VZ
157#endif /* !defined(wxUSE_FSVOLUME) */
158
6b8ef0b3
VZ
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."
162# else
163# define wxUSE_FSWATCHER 0
164# endif
165#endif /* !defined(wxUSE_FSWATCHER) */
166
03169422
RL
167#ifndef wxUSE_DYNAMIC_LOADER
168# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 169# error "wxUSE_DYNAMIC_LOADER must be defined, please read comment near the top of this file."
03169422
RL
170# else
171# define wxUSE_DYNAMIC_LOADER 0
172# endif
173#endif /* !defined(wxUSE_DYNAMIC_LOADER) */
174
149e70e1
VZ
175#ifndef wxUSE_INTL
176# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 177# error "wxUSE_INTL must be defined, please read comment near the top of this file."
149e70e1
VZ
178# else
179# define wxUSE_INTL 0
180# endif
181#endif /* !defined(wxUSE_INTL) */
182
8ac36abb
VZ
183#ifndef wxUSE_IPV6
184# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 185# error "wxUSE_IPV6 must be defined, please read comment near the top of this file."
8ac36abb
VZ
186# else
187# define wxUSE_IPV6 0
188# endif
189#endif /* !defined(wxUSE_IPV6) */
190
a5d46b73
VZ
191#ifndef wxUSE_LOG
192# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 193# error "wxUSE_LOG must be defined, please read comment near the top of this file."
a5d46b73
VZ
194# else
195# define wxUSE_LOG 0
196# endif
197#endif /* !defined(wxUSE_LOG) */
198
199#ifndef wxUSE_LONGLONG
200# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 201# error "wxUSE_LONGLONG must be defined, please read comment near the top of this file."
a5d46b73
VZ
202# else
203# define wxUSE_LONGLONG 0
204# endif
205#endif /* !defined(wxUSE_LONGLONG) */
206
207#ifndef wxUSE_MIMETYPE
208# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 209# error "wxUSE_MIMETYPE must be defined, please read comment near the top of this file."
a5d46b73
VZ
210# else
211# define wxUSE_MIMETYPE 0
212# endif
213#endif /* !defined(wxUSE_MIMETYPE) */
214
0c46d866
VZ
215#ifndef wxUSE_ON_FATAL_EXCEPTION
216# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 217# error "wxUSE_ON_FATAL_EXCEPTION must be defined, please read comment near the top of this file."
0c46d866
VZ
218# else
219# define wxUSE_ON_FATAL_EXCEPTION 0
220# endif
221#endif /* !defined(wxUSE_ON_FATAL_EXCEPTION) */
222
7a828c7f
VZ
223#ifndef wxUSE_PRINTF_POS_PARAMS
224# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 225# error "wxUSE_PRINTF_POS_PARAMS must be defined, please read comment near the top of this file."
7a828c7f
VZ
226# else
227# define wxUSE_PRINTF_POS_PARAMS 0
228# endif
229#endif /* !defined(wxUSE_PRINTF_POS_PARAMS) */
230
a5d46b73
VZ
231#ifndef wxUSE_PROTOCOL
232# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 233# error "wxUSE_PROTOCOL must be defined, please read comment near the top of this file."
a5d46b73
VZ
234# else
235# define wxUSE_PROTOCOL 0
236# endif
237#endif /* !defined(wxUSE_PROTOCOL) */
238
239/* we may not define wxUSE_PROTOCOL_XXX if wxUSE_PROTOCOL is set to 0 */
240#if !wxUSE_PROTOCOL
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 */
248
249#ifndef wxUSE_PROTOCOL_HTTP
250# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 251# error "wxUSE_PROTOCOL_HTTP must be defined, please read comment near the top of this file."
a5d46b73
VZ
252# else
253# define wxUSE_PROTOCOL_HTTP 0
254# endif
255#endif /* !defined(wxUSE_PROTOCOL_HTTP) */
256
257#ifndef wxUSE_PROTOCOL_FTP
258# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 259# error "wxUSE_PROTOCOL_FTP must be defined, please read comment near the top of this file."
a5d46b73
VZ
260# else
261# define wxUSE_PROTOCOL_FTP 0
262# endif
263#endif /* !defined(wxUSE_PROTOCOL_FTP) */
264
265#ifndef wxUSE_PROTOCOL_FILE
266# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 267# error "wxUSE_PROTOCOL_FILE must be defined, please read comment near the top of this file."
a5d46b73
VZ
268# else
269# define wxUSE_PROTOCOL_FILE 0
270# endif
271#endif /* !defined(wxUSE_PROTOCOL_FILE) */
272
273#ifndef wxUSE_REGEX
274# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 275# error "wxUSE_REGEX must be defined, please read comment near the top of this file."
a5d46b73
VZ
276# else
277# define wxUSE_REGEX 0
278# endif
279#endif /* !defined(wxUSE_REGEX) */
280
07158944
VZ
281#ifndef wxUSE_STDPATHS
282# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 283# error "wxUSE_STDPATHS must be defined, please read comment near the top of this file."
07158944
VZ
284# else
285# define wxUSE_STDPATHS 1
286# endif
287#endif /* !defined(wxUSE_STDPATHS) */
288
27b0c286
VS
289#ifndef wxUSE_XML
290# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 291# error "wxUSE_XML must be defined, please read comment near the top of this file."
27b0c286
VS
292# else
293# define wxUSE_XML 0
294# endif
295#endif /* !defined(wxUSE_XML) */
296
a5d46b73
VZ
297#ifndef wxUSE_SOCKETS
298# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 299# error "wxUSE_SOCKETS must be defined, please read comment near the top of this file."
a5d46b73
VZ
300# else
301# define wxUSE_SOCKETS 0
302# endif
303#endif /* !defined(wxUSE_SOCKETS) */
304
01871bf6
VZ
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."
308# else
309# define wxUSE_STD_CONTAINERS 0
310# endif
311#endif /* !defined(wxUSE_STD_CONTAINERS) */
312
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."
316# else
317# define wxUSE_STD_STRING_CONV_IN_WXSTRING 0
318# endif
319#endif /* !defined(wxUSE_STD_STRING_CONV_IN_WXSTRING) */
320
a5d46b73
VZ
321#ifndef wxUSE_STREAMS
322# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 323# error "wxUSE_STREAMS must be defined, please read comment near the top of this file."
a5d46b73
VZ
324# else
325# define wxUSE_STREAMS 0
326# endif
327#endif /* !defined(wxUSE_STREAMS) */
328
329#ifndef wxUSE_STOPWATCH
330# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 331# error "wxUSE_STOPWATCH must be defined, please read comment near the top of this file."
a5d46b73
VZ
332# else
333# define wxUSE_STOPWATCH 0
334# endif
335#endif /* !defined(wxUSE_STOPWATCH) */
336
337#ifndef wxUSE_TEXTBUFFER
338# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 339# error "wxUSE_TEXTBUFFER must be defined, please read comment near the top of this file."
a5d46b73
VZ
340# else
341# define wxUSE_TEXTBUFFER 0
342# endif
343#endif /* !defined(wxUSE_TEXTBUFFER) */
344
345#ifndef wxUSE_TEXTFILE
346# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 347# error "wxUSE_TEXTFILE must be defined, please read comment near the top of this file."
a5d46b73
VZ
348# else
349# define wxUSE_TEXTFILE 0
350# endif
351#endif /* !defined(wxUSE_TEXTFILE) */
352
353#ifndef wxUSE_UNICODE
354# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 355# error "wxUSE_UNICODE must be defined, please read comment near the top of this file."
a5d46b73
VZ
356# else
357# define wxUSE_UNICODE 0
358# endif
359#endif /* !defined(wxUSE_UNICODE) */
360
361#ifndef wxUSE_URL
362# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 363# error "wxUSE_URL must be defined, please read comment near the top of this file."
a5d46b73
VZ
364# else
365# define wxUSE_URL 0
366# endif
367#endif /* !defined(wxUSE_URL) */
368
ca5c6ac3
VZ
369#ifndef wxUSE_VARIANT
370# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 371# error "wxUSE_VARIANT must be defined, please read comment near the top of this file."
ca5c6ac3
VZ
372# else
373# define wxUSE_VARIANT 0
374# endif
375#endif /* wxUSE_VARIANT */
376
149e70e1
VZ
377#ifndef wxUSE_XLOCALE
378# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 379# error "wxUSE_XLOCALE must be defined, please read comment near the top of this file."
149e70e1
VZ
380# else
381# define wxUSE_XLOCALE 0
382# endif
383#endif /* !defined(wxUSE_XLOCALE) */
384
03169422 385/*
6619edf0 386 Section 1b: all these tests are for GUI only.
e16514bf
VZ
387
388 please keep the options in alphabetical order!
1e6feb95
VZ
389 */
390#if wxUSE_GUI
391
392/*
393 all of the settings tested below must be defined or we'd get an error from
394 preprocessor about invalid integer expression
395 */
396
9211cf3c
VZ
397#ifndef wxUSE_ABOUTDLG
398# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 399# error "wxUSE_ABOUTDLG must be defined, please read comment near the top of this file."
9211cf3c
VZ
400# else
401# define wxUSE_ABOUTDLG 0
402# endif
403#endif /* !defined(wxUSE_ABOUTDLG) */
404
1e6feb95
VZ
405#ifndef wxUSE_ACCEL
406# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 407# error "wxUSE_ACCEL must be defined, please read comment near the top of this file."
1e6feb95
VZ
408# else
409# define wxUSE_ACCEL 0
410# endif
411#endif /* !defined(wxUSE_ACCEL) */
412
a9c64a1b
VZ
413#ifndef wxUSE_ACCESSIBILITY
414# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 415# error "wxUSE_ACCESSIBILITY must be defined, please read comment near the top of this file."
a9c64a1b
VZ
416# else
417# define wxUSE_ACCESSIBILITY 0
418# endif
419#endif /* !defined(wxUSE_ACCESSIBILITY) */
420
72045d57
VZ
421#ifndef wxUSE_ANIMATIONCTRL
422# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 423# error "wxUSE_ANIMATIONCTRL must be defined, please read comment near the top of this file."
72045d57
VZ
424# else
425# define wxUSE_ANIMATIONCTRL 0
426# endif
427#endif /* !defined(wxUSE_ANIMATIONCTRL) */
428
2e9b5717
VZ
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."
432# else
433# define wxUSE_ARTPROVIDER_STD 0
434# endif
435#endif /* !defined(wxUSE_ARTPROVIDER_STD) */
436
c1d2466a
VZ
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."
440# else
441# define wxUSE_ARTPROVIDER_TANGO 0
442# endif
443#endif /* !defined(wxUSE_ARTPROVIDER_TANGO) */
444
8084f8b7
VZ
445#ifndef wxUSE_AUTOID_MANAGEMENT
446# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 447# error "wxUSE_AUTOID_MANAGEMENT must be defined, please read comment near the top of this file."
8084f8b7
VZ
448# else
449# define wxUSE_AUTOID_MANAGEMENT 0
450# endif
451#endif /* !defined(wxUSE_AUTOID_MANAGEMENT) */
452
8d37334f
VZ
453#ifndef wxUSE_BITMAPCOMBOBOX
454# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 455# error "wxUSE_BITMAPCOMBOBOX must be defined, please read comment near the top of this file."
8d37334f
VZ
456# else
457# define wxUSE_BITMAPCOMBOBOX 0
458# endif
459#endif /* !defined(wxUSE_BITMAPCOMBOBOX) */
460
1e6feb95
VZ
461#ifndef wxUSE_BMPBUTTON
462# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 463# error "wxUSE_BMPBUTTON must be defined, please read comment near the top of this file."
1e6feb95
VZ
464# else
465# define wxUSE_BMPBUTTON 0
466# endif
467#endif /* !defined(wxUSE_BMPBUTTON) */
468
469#ifndef wxUSE_BUTTON
470# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 471# error "wxUSE_BUTTON must be defined, please read comment near the top of this file."
1e6feb95
VZ
472# else
473# define wxUSE_BUTTON 0
474# endif
475#endif /* !defined(wxUSE_BUTTON) */
476
6c99dbd5 477#ifndef wxUSE_CAIRO
711a4812 478# ifdef wxABORT_ON_CONFIG_ERROR
93fdbfb7 479# error "wxUSE_CAIRO must be defined, please read comment near the top of this file."
711a4812
VZ
480# else
481# define wxUSE_CAIRO 0
482# endif
483#endif /* !defined(wxUSE_CAIRO) */
6c99dbd5 484
1e6feb95
VZ
485#ifndef wxUSE_CALENDARCTRL
486# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 487# error "wxUSE_CALENDARCTRL must be defined, please read comment near the top of this file."
1e6feb95
VZ
488# else
489# define wxUSE_CALENDARCTRL 0
490# endif
491#endif /* !defined(wxUSE_CALENDARCTRL) */
492
493#ifndef wxUSE_CARET
494# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 495# error "wxUSE_CARET must be defined, please read comment near the top of this file."
1e6feb95
VZ
496# else
497# define wxUSE_CARET 0
498# endif
499#endif /* !defined(wxUSE_CARET) */
500
501#ifndef wxUSE_CHECKBOX
502# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 503# error "wxUSE_CHECKBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
504# else
505# define wxUSE_CHECKBOX 0
506# endif
507#endif /* !defined(wxUSE_CHECKBOX) */
508
509#ifndef wxUSE_CHECKLISTBOX
510# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 511# error "wxUSE_CHECKLISTBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
512# else
513# define wxUSE_CHECKLISTBOX 0
514# endif
515#endif /* !defined(wxUSE_CHECKLISTBOX) */
516
517#ifndef wxUSE_CHOICE
518# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 519# error "wxUSE_CHOICE must be defined, please read comment near the top of this file."
1e6feb95
VZ
520# else
521# define wxUSE_CHOICE 0
522# endif
523#endif /* !defined(wxUSE_CHOICE) */
524
f5e0b4bc
WS
525#ifndef wxUSE_CHOICEBOOK
526# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 527# error "wxUSE_CHOICEBOOK must be defined, please read comment near the top of this file."
f5e0b4bc
WS
528# else
529# define wxUSE_CHOICEBOOK 0
530# endif
531#endif /* !defined(wxUSE_CHOICEBOOK) */
532
3379ed37
VZ
533#ifndef wxUSE_CHOICEDLG
534# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 535# error "wxUSE_CHOICEDLG must be defined, please read comment near the top of this file."
3379ed37
VZ
536# else
537# define wxUSE_CHOICEDLG 0
538# endif
539#endif /* !defined(wxUSE_CHOICEDLG) */
540
1e6feb95
VZ
541#ifndef wxUSE_CLIPBOARD
542# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 543# error "wxUSE_CLIPBOARD must be defined, please read comment near the top of this file."
1e6feb95
VZ
544# else
545# define wxUSE_CLIPBOARD 0
546# endif
547#endif /* !defined(wxUSE_CLIPBOARD) */
548
912c3932
VZ
549#ifndef wxUSE_COLLPANE
550# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 551# error "wxUSE_COLLPANE must be defined, please read comment near the top of this file."
912c3932
VZ
552# else
553# define wxUSE_COLLPANE 0
554# endif
555#endif /* !defined(wxUSE_COLLPANE) */
556
a2c0a9c5
VZ
557#ifndef wxUSE_COLOURDLG
558# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 559# error "wxUSE_COLOURDLG must be defined, please read comment near the top of this file."
a2c0a9c5
VZ
560# else
561# define wxUSE_COLOURDLG 0
562# endif
563#endif /* !defined(wxUSE_COLOURDLG) */
564
ec376c8f
VZ
565#ifndef wxUSE_COLOURPICKERCTRL
566# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 567# error "wxUSE_COLOURPICKERCTRL must be defined, please read comment near the top of this file."
ec376c8f
VZ
568# else
569# define wxUSE_COLOURPICKERCTRL 0
570# endif
571#endif /* !defined(wxUSE_COLOURPICKERCTRL) */
572
1e6feb95
VZ
573#ifndef wxUSE_COMBOBOX
574# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 575# error "wxUSE_COMBOBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
576# else
577# define wxUSE_COMBOBOX 0
578# endif
579#endif /* !defined(wxUSE_COMBOBOX) */
580
3571e1ad
VZ
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."
584# else
585# define wxUSE_COMMANDLINKBUTTON 0
586# endif
587#endif /* !defined(wxUSE_COMMANDLINKBUTTON) */
588
a57d600f 589#ifndef wxUSE_COMBOCTRL
481e2766 590# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 591# error "wxUSE_COMBOCTRL must be defined, please read comment near the top of this file."
481e2766 592# else
a57d600f 593# define wxUSE_COMBOCTRL 0
481e2766 594# endif
a57d600f 595#endif /* !defined(wxUSE_COMBOCTRL) */
481e2766 596
1e6feb95
VZ
597#ifndef wxUSE_DATAOBJ
598# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 599# error "wxUSE_DATAOBJ must be defined, please read comment near the top of this file."
1e6feb95
VZ
600# else
601# define wxUSE_DATAOBJ 0
602# endif
603#endif /* !defined(wxUSE_DATAOBJ) */
604
e16514bf
VZ
605#ifndef wxUSE_DATAVIEWCTRL
606# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 607# error "wxUSE_DATAVIEWCTRL must be defined, please read comment near the top of this file."
e16514bf
VZ
608# else
609# define wxUSE_DATAVIEWCTRL 0
610# endif
611#endif /* !defined(wxUSE_DATAVIEWCTRL) */
612
337dc4c1
WS
613#ifndef wxUSE_DATEPICKCTRL
614# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 615# error "wxUSE_DATEPICKCTRL must be defined, please read comment near the top of this file."
337dc4c1
WS
616# else
617# define wxUSE_DATEPICKCTRL 0
618# endif
619#endif /* !defined(wxUSE_DATEPICKCTRL) */
620
e71508e1
VZ
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."
624# else
625# define wxUSE_DC_TRANSFORM_MATRIX 1
626# endif
627#endif /* wxUSE_DC_TRANSFORM_MATRIX */
628
ec376c8f
VZ
629#ifndef wxUSE_DIRPICKERCTRL
630# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 631# error "wxUSE_DIRPICKERCTRL must be defined, please read comment near the top of this file."
ec376c8f
VZ
632# else
633# define wxUSE_DIRPICKERCTRL 0
634# endif
635#endif /* !defined(wxUSE_DIRPICKERCTRL) */
636
f8ba082e
VZ
637#ifndef wxUSE_DISPLAY
638# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 639# error "wxUSE_DISPLAY must be defined, please read comment near the top of this file."
f8ba082e
VZ
640# else
641# define wxUSE_DISPLAY 0
642# endif
643#endif /* !defined(wxUSE_DISPLAY) */
644
3379ed37
VZ
645#ifndef wxUSE_DOC_VIEW_ARCHITECTURE
646# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 647# error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined, please read comment near the top of this file."
3379ed37
VZ
648# else
649# define wxUSE_DOC_VIEW_ARCHITECTURE 0
650# endif
651#endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */
652
0cf3e587
VZ
653#ifndef wxUSE_FILECTRL
654# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 655# error "wxUSE_FILECTRL must be defined, please read comment near the top of this file."
0cf3e587
VZ
656# else
657# define wxUSE_FILECTRL 0
658# endif
659#endif /* !defined(wxUSE_FILECTRL) */
660
1e6feb95
VZ
661#ifndef wxUSE_FILEDLG
662# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 663# error "wxUSE_FILEDLG must be defined, please read comment near the top of this file."
1e6feb95
VZ
664# else
665# define wxUSE_FILEDLG 0
666# endif
667#endif /* !defined(wxUSE_FILEDLG) */
668
ec376c8f
VZ
669#ifndef wxUSE_FILEPICKERCTRL
670# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 671# error "wxUSE_FILEPICKERCTRL must be defined, please read comment near the top of this file."
ec376c8f
VZ
672# else
673# define wxUSE_FILEPICKERCTRL 0
674# endif
675#endif /* !defined(wxUSE_FILEPICKERCTRL) */
676
1e6feb95
VZ
677#ifndef wxUSE_FONTDLG
678# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 679# error "wxUSE_FONTDLG must be defined, please read comment near the top of this file."
1e6feb95
VZ
680# else
681# define wxUSE_FONTDLG 0
682# endif
683#endif /* !defined(wxUSE_FONTDLG) */
684
685#ifndef wxUSE_FONTMAP
686# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 687# error "wxUSE_FONTMAP must be defined, please read comment near the top of this file."
1e6feb95
VZ
688# else
689# define wxUSE_FONTMAP 0
690# endif
691#endif /* !defined(wxUSE_FONTMAP) */
692
ec376c8f
VZ
693#ifndef wxUSE_FONTPICKERCTRL
694# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 695# error "wxUSE_FONTPICKERCTRL must be defined, please read comment near the top of this file."
ec376c8f
VZ
696# else
697# define wxUSE_FONTPICKERCTRL 0
698# endif
699#endif /* !defined(wxUSE_FONTPICKERCTRL) */
700
1e6feb95
VZ
701#ifndef wxUSE_GAUGE
702# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 703# error "wxUSE_GAUGE must be defined, please read comment near the top of this file."
1e6feb95
VZ
704# else
705# define wxUSE_GAUGE 0
706# endif
707#endif /* !defined(wxUSE_GAUGE) */
708
f43426c1
RD
709#ifndef wxUSE_GRAPHICS_CONTEXT
710# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 711# error "wxUSE_GRAPHICS_CONTEXT must be defined, please read comment near the top of this file."
f43426c1
RD
712# else
713# define wxUSE_GRAPHICS_CONTEXT 0
714# endif
715#endif /* !defined(wxUSE_GRAPHICS_CONTEXT) */
716
717
1e6feb95
VZ
718#ifndef wxUSE_GRID
719# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 720# error "wxUSE_GRID must be defined, please read comment near the top of this file."
1e6feb95
VZ
721# else
722# define wxUSE_GRID 0
723# endif
724#endif /* !defined(wxUSE_GRID) */
725
e721a2a2
VZ
726#ifndef wxUSE_HEADERCTRL
727# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 728# error "wxUSE_HEADERCTRL must be defined, please read comment near the top of this file."
e721a2a2
VZ
729# else
730# define wxUSE_HEADERCTRL 0
731# endif
732#endif /* !defined(wxUSE_HEADERCTRL) */
733
3379ed37
VZ
734#ifndef wxUSE_HELP
735# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 736# error "wxUSE_HELP must be defined, please read comment near the top of this file."
3379ed37
VZ
737# else
738# define wxUSE_HELP 0
739# endif
740#endif /* !defined(wxUSE_HELP) */
741
17e91437
VZ
742#ifndef wxUSE_HYPERLINKCTRL
743# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 744# error "wxUSE_HYPERLINKCTRL must be defined, please read comment near the top of this file."
17e91437
VZ
745# else
746# define wxUSE_HYPERLINKCTRL 0
747# endif
748#endif /* !defined(wxUSE_HYPERLINKCTRL) */
749
05dcbb8e
VZ
750#ifndef wxUSE_HTML
751# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 752# error "wxUSE_HTML must be defined, please read comment near the top of this file."
05dcbb8e
VZ
753# else
754# define wxUSE_HTML 0
755# endif
756#endif /* !defined(wxUSE_HTML) */
757
c839485c 758#ifndef wxUSE_LIBMSPACK
bd362275 759# if !defined(__UNIX__)
c839485c
VS
760 /* set to 0 on platforms that don't have libmspack */
761# define wxUSE_LIBMSPACK 0
762# else
763# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 764# error "wxUSE_LIBMSPACK must be defined, please read comment near the top of this file."
c839485c
VS
765# else
766# define wxUSE_LIBMSPACK 0
767# endif
768# endif
769#endif /* !defined(wxUSE_LIBMSPACK) */
770
658974ae
VS
771#ifndef wxUSE_ICO_CUR
772# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 773# error "wxUSE_ICO_CUR must be defined, please read comment near the top of this file."
658974ae
VS
774# else
775# define wxUSE_ICO_CUR 0
776# endif
777#endif /* !defined(wxUSE_ICO_CUR) */
778
1663afc0
VS
779#ifndef wxUSE_IFF
780# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 781# error "wxUSE_IFF must be defined, please read comment near the top of this file."
1663afc0
VS
782# else
783# define wxUSE_IFF 0
784# endif
785#endif /* !defined(wxUSE_IFF) */
786
1e6feb95
VZ
787#ifndef wxUSE_IMAGLIST
788# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 789# error "wxUSE_IMAGLIST must be defined, please read comment near the top of this file."
1e6feb95
VZ
790# else
791# define wxUSE_IMAGLIST 0
792# endif
793#endif /* !defined(wxUSE_IMAGLIST) */
794
a92b5dfe
VZ
795#ifndef wxUSE_INFOBAR
796# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 797# error "wxUSE_INFOBAR must be defined, please read comment near the top of this file."
a92b5dfe
VZ
798# else
799# define wxUSE_INFOBAR 0
800# endif
801#endif /* !defined(wxUSE_INFOBAR) */
802
2131b89d
VZ
803#ifndef wxUSE_JOYSTICK
804# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 805# error "wxUSE_JOYSTICK must be defined, please read comment near the top of this file."
2131b89d
VZ
806# else
807# define wxUSE_JOYSTICK 0
808# endif
809#endif /* !defined(wxUSE_JOYSTICK) */
810
5b5e4f32
VZ
811#ifndef wxUSE_LISTBOOK
812# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 813# error "wxUSE_LISTBOOK must be defined, please read comment near the top of this file."
5b5e4f32
VZ
814# else
815# define wxUSE_LISTBOOK 0
816# endif
817#endif /* !defined(wxUSE_LISTBOOK) */
818
1e6feb95
VZ
819#ifndef wxUSE_LISTBOX
820# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 821# error "wxUSE_LISTBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
822# else
823# define wxUSE_LISTBOX 0
824# endif
825#endif /* !defined(wxUSE_LISTBOX) */
826
827#ifndef wxUSE_LISTCTRL
828# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 829# error "wxUSE_LISTCTRL must be defined, please read comment near the top of this file."
1e6feb95
VZ
830# else
831# define wxUSE_LISTCTRL 0
832# endif
833#endif /* !defined(wxUSE_LISTCTRL) */
834
3379ed37
VZ
835#ifndef wxUSE_LOGGUI
836# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 837# error "wxUSE_LOGGUI must be defined, please read comment near the top of this file."
3379ed37
VZ
838# else
839# define wxUSE_LOGGUI 0
840# endif
841#endif /* !defined(wxUSE_LOGGUI) */
842
843#ifndef wxUSE_LOGWINDOW
844# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 845# error "wxUSE_LOGWINDOW must be defined, please read comment near the top of this file."
3379ed37
VZ
846# else
847# define wxUSE_LOGWINDOW 0
848# endif
849#endif /* !defined(wxUSE_LOGWINDOW) */
e421922f 850
3e6e2754
JS
851#ifndef wxUSE_LOG_DIALOG
852# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 853# error "wxUSE_LOG_DIALOG must be defined, please read comment near the top of this file."
3e6e2754
JS
854# else
855# define wxUSE_LOG_DIALOG 0
856# endif
71908213 857#endif /* !defined(wxUSE_LOG_DIALOG) */
3e6e2754 858
f5bdfc69
VZ
859#ifndef wxUSE_MARKUP
860# ifdef wxABORT_ON_CONFIG_ERROR
861# error "wxUSE_MARKUP must be defined, please read comment near the top of this file."
862# else
863# define wxUSE_MARKUP 0
864# endif
865#endif /* !defined(wxUSE_MARKUP) */
866
efd17a1d
VZ
867#ifndef wxUSE_MDI
868# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 869# error "wxUSE_MDI must be defined, please read comment near the top of this file."
efd17a1d
VZ
870# else
871# define wxUSE_MDI 0
872# endif
873#endif /* !defined(wxUSE_MDI) */
874
1e6feb95
VZ
875#ifndef wxUSE_MDI_ARCHITECTURE
876# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 877# error "wxUSE_MDI_ARCHITECTURE must be defined, please read comment near the top of this file."
1e6feb95
VZ
878# else
879# define wxUSE_MDI_ARCHITECTURE 0
880# endif
881#endif /* !defined(wxUSE_MDI_ARCHITECTURE) */
882
883#ifndef wxUSE_MENUS
884# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 885# error "wxUSE_MENUS must be defined, please read comment near the top of this file."
1e6feb95
VZ
886# else
887# define wxUSE_MENUS 0
888# endif
889#endif /* !defined(wxUSE_MENUS) */
890
3379ed37
VZ
891#ifndef wxUSE_MSGDLG
892# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 893# error "wxUSE_MSGDLG must be defined, please read comment near the top of this file."
3379ed37
VZ
894# else
895# define wxUSE_MSGDLG 0
896# endif
897#endif /* !defined(wxUSE_MSGDLG) */
898
1e6feb95
VZ
899#ifndef wxUSE_NOTEBOOK
900# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 901# error "wxUSE_NOTEBOOK must be defined, please read comment near the top of this file."
1e6feb95
VZ
902# else
903# define wxUSE_NOTEBOOK 0
904# endif
905#endif /* !defined(wxUSE_NOTEBOOK) */
906
e36a1739
VZ
907#ifndef wxUSE_NOTIFICATION_MESSAGE
908# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 909# error "wxUSE_NOTIFICATION_MESSAGE must be defined, please read comment near the top of this file."
e36a1739
VZ
910# else
911# define wxUSE_NOTIFICATION_MESSAGE 0
912# endif
913#endif /* !defined(wxUSE_NOTIFICATION_MESSAGE) */
914
a57d600f 915#ifndef wxUSE_ODCOMBOBOX
481e2766 916# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 917# error "wxUSE_ODCOMBOBOX must be defined, please read comment near the top of this file."
481e2766 918# else
a57d600f 919# define wxUSE_ODCOMBOBOX 0
481e2766 920# endif
a57d600f 921#endif /* !defined(wxUSE_ODCOMBOBOX) */
481e2766 922
d275c7eb
VZ
923#ifndef wxUSE_PALETTE
924# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 925# error "wxUSE_PALETTE must be defined, please read comment near the top of this file."
d275c7eb
VZ
926# else
927# define wxUSE_PALETTE 0
928# endif
929#endif /* !defined(wxUSE_PALETTE) */
930
1e6feb95
VZ
931#ifndef wxUSE_POPUPWIN
932# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 933# error "wxUSE_POPUPWIN must be defined, please read comment near the top of this file."
1e6feb95
VZ
934# else
935# define wxUSE_POPUPWIN 0
936# endif
937#endif /* !defined(wxUSE_POPUPWIN) */
938
3379ed37
VZ
939#ifndef wxUSE_PRINTING_ARCHITECTURE
940# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 941# error "wxUSE_PRINTING_ARCHITECTURE must be defined, please read comment near the top of this file."
3379ed37
VZ
942# else
943# define wxUSE_PRINTING_ARCHITECTURE 0
944# endif
945#endif /* !defined(wxUSE_PRINTING_ARCHITECTURE) */
946
1e6feb95
VZ
947#ifndef wxUSE_RADIOBOX
948# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 949# error "wxUSE_RADIOBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
950# else
951# define wxUSE_RADIOBOX 0
952# endif
953#endif /* !defined(wxUSE_RADIOBOX) */
954
955#ifndef wxUSE_RADIOBTN
956# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 957# error "wxUSE_RADIOBTN must be defined, please read comment near the top of this file."
1e6feb95
VZ
958# else
959# define wxUSE_RADIOBTN 0
960# endif
961#endif /* !defined(wxUSE_RADIOBTN) */
962
65ead230
VZ
963#ifndef wxUSE_REARRANGECTRL
964# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 965# error "wxUSE_REARRANGECTRL must be defined, please read comment near the top of this file."
65ead230
VZ
966# else
967# define wxUSE_REARRANGECTRL 0
968# endif
969#endif /* !defined(wxUSE_REARRANGECTRL) */
970
11c2b041
VZ
971#ifndef wxUSE_RIBBON
972# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 973# error "wxUSE_RIBBON must be defined, please read comment near the top of this file."
11c2b041
VZ
974# else
975# define wxUSE_RIBBON 0
976# endif
977#endif /* !defined(wxUSE_RIBBON) */
978
a1bdd4ab
VZ
979#ifndef wxUSE_RICHMSGDLG
980# ifdef wxABORT_ON_CONFIG_ERROR
981# error "wxUSE_RICHMSGDLG must be defined, please read comment near the top of this file."
982# else
983# define wxUSE_RICHMSGDLG 0
984# endif
b9ca72aa 985#endif /* !defined(wxUSE_RICHMSGDLG) */
a1bdd4ab 986
e520c3f7
VZ
987#ifndef wxUSE_RICHTOOLTIP
988# ifdef wxABORT_ON_CONFIG_ERROR
989# error "wxUSE_RICHTOOLTIP must be defined, please read comment near the top of this file."
990# else
991# define wxUSE_RICHTOOLTIP 0
992# endif
993#endif /* !defined(wxUSE_RICHTOOLTIP) */
994
1e6feb95
VZ
995#ifndef wxUSE_SASH
996# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 997# error "wxUSE_SASH must be defined, please read comment near the top of this file."
1e6feb95
VZ
998# else
999# define wxUSE_SASH 0
1000# endif
1001#endif /* !defined(wxUSE_SASH) */
1002
1003#ifndef wxUSE_SCROLLBAR
1004# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1005# error "wxUSE_SCROLLBAR must be defined, please read comment near the top of this file."
1e6feb95
VZ
1006# else
1007# define wxUSE_SCROLLBAR 0
1008# endif
1009#endif /* !defined(wxUSE_SCROLLBAR) */
1010
1011#ifndef wxUSE_SLIDER
1012# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1013# error "wxUSE_SLIDER must be defined, please read comment near the top of this file."
1e6feb95
VZ
1014# else
1015# define wxUSE_SLIDER 0
1016# endif
1017#endif /* !defined(wxUSE_SLIDER) */
1018
cad1a197
VS
1019#ifndef wxUSE_SOUND
1020# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1021# error "wxUSE_SOUND must be defined, please read comment near the top of this file."
cad1a197
VS
1022# else
1023# define wxUSE_SOUND 0
1024# endif
1025#endif /* !defined(wxUSE_SOUND) */
1026
1e6feb95
VZ
1027#ifndef wxUSE_SPINBTN
1028# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1029# error "wxUSE_SPINBTN must be defined, please read comment near the top of this file."
1e6feb95
VZ
1030# else
1031# define wxUSE_SPINBTN 0
1032# endif
1033#endif /* !defined(wxUSE_SPINBTN) */
1034
1035#ifndef wxUSE_SPINCTRL
1036# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1037# error "wxUSE_SPINCTRL must be defined, please read comment near the top of this file."
1e6feb95
VZ
1038# else
1039# define wxUSE_SPINCTRL 0
1040# endif
1041#endif /* !defined(wxUSE_SPINCTRL) */
1042
2654a046
MB
1043#ifndef wxUSE_SPLASH
1044# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1045# error "wxUSE_SPLASH must be defined, please read comment near the top of this file."
2654a046
MB
1046# else
1047# define wxUSE_SPLASH 0
1048# endif
1049#endif /* !defined(wxUSE_SPLASH) */
1050
1e6feb95
VZ
1051#ifndef wxUSE_SPLITTER
1052# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1053# error "wxUSE_SPLITTER must be defined, please read comment near the top of this file."
1e6feb95
VZ
1054# else
1055# define wxUSE_SPLITTER 0
1056# endif
1057#endif /* !defined(wxUSE_SPLITTER) */
1058
1059#ifndef wxUSE_STATBMP
1060# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1061# error "wxUSE_STATBMP must be defined, please read comment near the top of this file."
1e6feb95
VZ
1062# else
1063# define wxUSE_STATBMP 0
1064# endif
1065#endif /* !defined(wxUSE_STATBMP) */
1066
1067#ifndef wxUSE_STATBOX
1068# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1069# error "wxUSE_STATBOX must be defined, please read comment near the top of this file."
1e6feb95
VZ
1070# else
1071# define wxUSE_STATBOX 0
1072# endif
1073#endif /* !defined(wxUSE_STATBOX) */
1074
1075#ifndef wxUSE_STATLINE
1076# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1077# error "wxUSE_STATLINE must be defined, please read comment near the top of this file."
1e6feb95
VZ
1078# else
1079# define wxUSE_STATLINE 0
1080# endif
1081#endif /* !defined(wxUSE_STATLINE) */
1082
3379ed37
VZ
1083#ifndef wxUSE_STATTEXT
1084# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1085# error "wxUSE_STATTEXT must be defined, please read comment near the top of this file."
3379ed37
VZ
1086# else
1087# define wxUSE_STATTEXT 0
1088# endif
1089#endif /* !defined(wxUSE_STATTEXT) */
1090
1e6feb95
VZ
1091#ifndef wxUSE_STATUSBAR
1092# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1093# error "wxUSE_STATUSBAR must be defined, please read comment near the top of this file."
1e6feb95
VZ
1094# else
1095# define wxUSE_STATUSBAR 0
1096# endif
1097#endif /* !defined(wxUSE_STATUSBAR) */
1098
4f167b46
VZ
1099#ifndef wxUSE_TASKBARICON
1100# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1101# error "wxUSE_TASKBARICON must be defined, please read comment near the top of this file."
4f167b46
VZ
1102# else
1103# define wxUSE_TASKBARICON 0
1104# endif
1105#endif /* !defined(wxUSE_TASKBARICON) */
1106
1e6feb95
VZ
1107#ifndef wxUSE_TEXTCTRL
1108# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1109# error "wxUSE_TEXTCTRL must be defined, please read comment near the top of this file."
1e6feb95
VZ
1110# else
1111# define wxUSE_TEXTCTRL 0
1112# endif
1113#endif /* !defined(wxUSE_TEXTCTRL) */
1114
569c7d8c
VZ
1115#ifndef wxUSE_TIMEPICKCTRL
1116# ifdef wxABORT_ON_CONFIG_ERROR
1117# error "wxUSE_TIMEPICKCTRL must be defined, please read comment near the top of this file."
1118# else
1119# define wxUSE_TIMEPICKCTRL 0
1120# endif
1121#endif /* !defined(wxUSE_TIMEPICKCTRL) */
1122
f38bcae5
VZ
1123#ifndef wxUSE_TIPWINDOW
1124# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1125# error "wxUSE_TIPWINDOW must be defined, please read comment near the top of this file."
f38bcae5
VZ
1126# else
1127# define wxUSE_TIPWINDOW 0
1128# endif
1129#endif /* !defined(wxUSE_TIPWINDOW) */
1130
1e6feb95
VZ
1131#ifndef wxUSE_TOOLBAR
1132# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1133# error "wxUSE_TOOLBAR must be defined, please read comment near the top of this file."
1e6feb95
VZ
1134# else
1135# define wxUSE_TOOLBAR 0
1136# endif
1137#endif /* !defined(wxUSE_TOOLBAR) */
1138
1139#ifndef wxUSE_TOOLTIPS
1140# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1141# error "wxUSE_TOOLTIPS must be defined, please read comment near the top of this file."
1e6feb95
VZ
1142# else
1143# define wxUSE_TOOLTIPS 0
1144# endif
1145#endif /* !defined(wxUSE_TOOLTIPS) */
1146
1147#ifndef wxUSE_TREECTRL
1148# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1149# error "wxUSE_TREECTRL must be defined, please read comment near the top of this file."
1e6feb95
VZ
1150# else
1151# define wxUSE_TREECTRL 0
1152# endif
1153#endif /* !defined(wxUSE_TREECTRL) */
1154
524cb040
VZ
1155#ifndef wxUSE_TREELISTCTRL
1156# ifdef wxABORT_ON_CONFIG_ERROR
1157# error "wxUSE_TREELISTCTRL must be defined, please read comment near the top of this file."
1158# else
1159# define wxUSE_TREELISTCTRL 0
1160# endif
1161#endif /* !defined(wxUSE_TREELISTCTRL) */
1162
9b7e0226
VZ
1163#ifndef wxUSE_UIACTIONSIMULATOR
1164# ifdef wxABORT_ON_CONFIG_ERROR
1165# error "wxUSE_UIACTIONSIMULATOR must be defined, please read comment near the top of this file."
1166# else
1167# define wxUSE_UIACTIONSIMULATOR 0
1168# endif
1169#endif /* !defined(wxUSE_UIACTIONSIMULATOR) */
1170
f8ba082e 1171#ifndef wxUSE_VALIDATORS
12491c1f 1172# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1173# error "wxUSE_VALIDATORS must be defined, please read comment near the top of this file."
12491c1f 1174# else
f8ba082e 1175# define wxUSE_VALIDATORS 0
12491c1f 1176# endif
f8ba082e 1177#endif /* !defined(wxUSE_VALIDATORS) */
12491c1f 1178
32cc8d13
VZ
1179#ifndef wxUSE_WEBVIEW
1180# ifdef wxABORT_ON_CONFIG_ERROR
1181# error "wxUSE_WEBVIEW must be defined, please read comment near the top of this file."
1182# else
1183# define wxUSE_WEBVIEW 0
1184# endif
1185#endif /* !defined(wxUSE_WEBVIEW) */
1186
3379ed37
VZ
1187#ifndef wxUSE_WXHTML_HELP
1188# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1189# error "wxUSE_WXHTML_HELP must be defined, please read comment near the top of this file."
3379ed37
VZ
1190# else
1191# define wxUSE_WXHTML_HELP 0
1192# endif
1193#endif /* !defined(wxUSE_WXHTML_HELP) */
1194
e16514bf
VZ
1195#ifndef wxUSE_XRC
1196# ifdef wxABORT_ON_CONFIG_ERROR
aa62256a 1197# error "wxUSE_XRC must be defined, please read comment near the top of this file."
e16514bf
VZ
1198# else
1199# define wxUSE_XRC 0
1200# endif
1201#endif /* !defined(wxUSE_XRC) */
1202
a5d46b73 1203#endif /* wxUSE_GUI */
c4d596ea 1204
1e6feb95 1205/*
6619edf0
VZ
1206 Section 2: platform-specific checks.
1207
1208 This must be done after checking that everything is defined as the platform
1209 checks use wxUSE_XXX symbols in #if tests.
1210 */
1211
bd362275 1212#if defined(__WXWINCE__)
6619edf0
VZ
1213# include "wx/msw/wince/chkconf.h"
1214#elif defined(__WXMSW__)
1215# include "wx/msw/chkconf.h"
1216#elif defined(__WXGTK__)
1217# include "wx/gtk/chkconf.h"
d30ef769
VZ
1218#elif defined(__WXCOCOA__)
1219# include "wx/cocoa/chkconf.h"
6619edf0 1220#elif defined(__WXMAC__)
ef0e9220 1221# include "wx/osx/chkconf.h"
6619edf0
VZ
1222#elif defined(__OS2__)
1223# include "wx/os2/chkconf.h"
6619edf0
VZ
1224#elif defined(__WXDFB__)
1225# include "wx/dfb/chkconf.h"
1226#elif defined(__WXMOTIF__)
1227# include "wx/motif/chkconf.h"
1228#elif defined(__WXX11__)
1229# include "wx/x11/chkconf.h"
1b4bff82
VZ
1230#elif defined(__WXANDROID__)
1231# include "wx/android/chkconf.h"
6619edf0
VZ
1232#endif
1233
149e70e1
VZ
1234/*
1235 __UNIX__ is also defined under Cygwin but we shouldn't perform these checks
1236 there if we're building wxMSW.
1237 */
1238#if defined(__UNIX__) && !defined(__WXMSW__)
6619edf0
VZ
1239# include "wx/unix/chkconf.h"
1240#endif
1241
1242#ifdef __WXUNIVERSAL__
1243# include "wx/univ/chkconf.h"
1244#endif
1245
1246/*
1247 Section 3a: check consistency of the non-GUI settings.
1e6feb95 1248 */
a5d46b73 1249
c1dc9f83
VZ
1250#if WXWIN_COMPATIBILITY_2_6
1251# if !WXWIN_COMPATIBILITY_2_8
f7c3b945 1252# ifdef wxABORT_ON_CONFIG_ERROR
c1dc9f83 1253# error "2.6.X compatibility requires 2.8.X compatibility"
f7c3b945 1254# else
c1dc9f83
VZ
1255# undef WXWIN_COMPATIBILITY_2_8
1256# define WXWIN_COMPATIBILITY_2_8 1
f7c3b945
WS
1257# endif
1258# endif
c1dc9f83 1259#endif /* WXWIN_COMPATIBILITY_2_6 */
f7c3b945 1260
5d36ad18
VZ
1261#if wxUSE_ARCHIVE_STREAMS
1262# if !wxUSE_DATETIME
1263# ifdef wxABORT_ON_CONFIG_ERROR
1264# error "wxArchive requires wxUSE_DATETIME"
1265# else
1266# undef wxUSE_ARCHIVE_STREAMS
1267# define wxUSE_ARCHIVE_STREAMS 0
1268# endif
1269# endif
1270#endif /* wxUSE_ARCHIVE_STREAMS */
1271
a5d46b73
VZ
1272#if wxUSE_PROTOCOL_FILE || wxUSE_PROTOCOL_FTP || wxUSE_PROTOCOL_HTTP
1273# if !wxUSE_PROTOCOL
1274# ifdef wxABORT_ON_CONFIG_ERROR
1275# error "wxUSE_PROTOCOL_XXX requires wxUSE_PROTOCOL"
1276# else
1277# undef wxUSE_PROTOCOL
1278# define wxUSE_PROTOCOL 1
1279# endif
1280# endif
1281#endif /* wxUSE_PROTOCOL_XXX */
1282
1283#if wxUSE_URL
1284# if !wxUSE_PROTOCOL
1285# ifdef wxABORT_ON_CONFIG_ERROR
1286# error "wxUSE_URL requires wxUSE_PROTOCOL"
1287# else
1288# undef wxUSE_PROTOCOL
1289# define wxUSE_PROTOCOL 1
1290# endif
1291# endif
1292#endif /* wxUSE_URL */
1293
1294#if wxUSE_PROTOCOL
1295# if !wxUSE_SOCKETS
1296# if wxUSE_PROTOCOL_HTTP || wxUSE_PROTOCOL_FTP
1297# ifdef wxABORT_ON_CONFIG_ERROR
1298# error "wxUSE_PROTOCOL_FTP/HTTP requires wxUSE_SOCKETS"
1299# else
1300# undef wxUSE_SOCKETS
1301# define wxUSE_SOCKETS 1
1302# endif
1303# endif
1304# endif
1305
1306# if !wxUSE_STREAMS
1307# ifdef wxABORT_ON_CONFIG_ERROR
1308# error "wxUSE_PROTOCOL requires wxUSE_STREAMS"
1309# else
1310# undef wxUSE_STREAMS
1311# define wxUSE_STREAMS 1
1312# endif
1313# endif
1314#endif /* wxUSE_PROTOCOL */
1315
c7f3eecc
VZ
1316/* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
1317#if wxUSE_HTML
1318# if !wxUSE_FILESYSTEM
1319# ifdef wxABORT_ON_CONFIG_ERROR
1320# error "wxHTML requires wxFileSystem"
1321# else
1322# undef wxUSE_FILESYSTEM
1323# define wxUSE_FILESYSTEM 1
1324# endif
1325# endif
1326#endif /* wxUSE_HTML */
1327
916af76f
MW
1328#if wxUSE_FS_ARCHIVE
1329# if !wxUSE_FILESYSTEM
1330# ifdef wxABORT_ON_CONFIG_ERROR
1331# error "wxArchiveFSHandler requires wxFileSystem"
1332# else
1333# undef wxUSE_FILESYSTEM
1334# define wxUSE_FILESYSTEM 1
1335# endif
1336# endif
1337# if !wxUSE_ARCHIVE_STREAMS
1338# ifdef wxABORT_ON_CONFIG_ERROR
1339# error "wxArchiveFSHandler requires wxArchive"
1340# else
1341# undef wxUSE_ARCHIVE_STREAMS
1342# define wxUSE_ARCHIVE_STREAMS 1
1343# endif
1344# endif
1345#endif /* wxUSE_FS_ARCHIVE */
1346
c7f3eecc
VZ
1347#if wxUSE_FILESYSTEM
1348# if !wxUSE_STREAMS
1349# ifdef wxABORT_ON_CONFIG_ERROR
1350# error "wxUSE_FILESYSTEM requires wxUSE_STREAMS"
1351# else
1352# undef wxUSE_STREAMS
1353# define wxUSE_STREAMS 1
1354# endif
1355# endif
d9b0ee1e
VZ
1356# if !wxUSE_FILE && !wxUSE_FFILE
1357# ifdef wxABORT_ON_CONFIG_ERROR
1358# error "wxUSE_FILESYSTEM requires either wxUSE_FILE or wxUSE_FFILE"
1359# else
916af76f
MW
1360# undef wxUSE_FILE
1361# define wxUSE_FILE 1
1362# undef wxUSE_FFILE
1363# define wxUSE_FFILE 1
d9b0ee1e
VZ
1364# endif
1365# endif
c7f3eecc
VZ
1366#endif /* wxUSE_FILESYSTEM */
1367
ce73e654
VS
1368#if wxUSE_FS_INET
1369# if !wxUSE_PROTOCOL
1370# ifdef wxABORT_ON_CONFIG_ERROR
1371# error "wxUSE_FS_INET requires wxUSE_PROTOCOL"
1372# else
1373# undef wxUSE_PROTOCOL
1374# define wxUSE_PROTOCOL 1
1375# endif
1376# endif
1377#endif /* wxUSE_FS_INET */
1378
c7f3eecc 1379#if wxUSE_STOPWATCH || wxUSE_DATETIME
a5d46b73
VZ
1380# if !wxUSE_LONGLONG
1381# ifdef wxABORT_ON_CONFIG_ERROR
c7f3eecc 1382# error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG"
a5d46b73
VZ
1383# else
1384# undef wxUSE_LONGLONG
1385# define wxUSE_LONGLONG 1
1386# endif
1387# endif
1388#endif /* wxUSE_STOPWATCH */
1389
1390#if wxUSE_MIMETYPE && !wxUSE_TEXTFILE
1391# ifdef wxABORT_ON_CONFIG_ERROR
1392# error "wxUSE_MIMETYPE requires wxUSE_TEXTFILE"
1393# else
1394# undef wxUSE_TEXTFILE
1395# define wxUSE_TEXTFILE 1
1396# endif
1397#endif /* wxUSE_MIMETYPE */
1398
1399#if wxUSE_TEXTFILE && !wxUSE_TEXTBUFFER
1400# ifdef wxABORT_ON_CONFIG_ERROR
1401# error "wxUSE_TEXTFILE requires wxUSE_TEXTBUFFER"
1402# else
1403# undef wxUSE_TEXTBUFFER
1404# define wxUSE_TEXTBUFFER 1
1405# endif
1406#endif /* wxUSE_TEXTFILE */
1407
1408#if wxUSE_TEXTFILE && !wxUSE_FILE
1409# ifdef wxABORT_ON_CONFIG_ERROR
1410# error "wxUSE_TEXTFILE requires wxUSE_FILE"
1411# else
1412# undef wxUSE_FILE
1413# define wxUSE_FILE 1
1414# endif
1415#endif /* wxUSE_TEXTFILE */
1416
1948bb32
VS
1417#if !wxUSE_DYNLIB_CLASS
1418# if wxUSE_DYNAMIC_LOADER
1419# ifdef wxABORT_ON_CONFIG_ERROR
1420# error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS."
1421# else
1422# define wxUSE_DYNLIB_CLASS 1
1423# endif
1424# endif
1425#endif /* wxUSE_DYNLIB_CLASS */
1426
81f90336
MW
1427#if wxUSE_ZIPSTREAM
1428# if !wxUSE_ZLIB
1429# ifdef wxABORT_ON_CONFIG_ERROR
1430# error "wxZip requires wxZlib"
1431# else
1432# undef wxUSE_ZLIB
1433# define wxUSE_ZLIB 1
1434# endif
1435# endif
9e8e867f 1436# if !wxUSE_ARCHIVE_STREAMS
81f90336
MW
1437# ifdef wxABORT_ON_CONFIG_ERROR
1438# error "wxZip requires wxArchive"
1439# else
9e8e867f
MW
1440# undef wxUSE_ARCHIVE_STREAMS
1441# define wxUSE_ARCHIVE_STREAMS 1
81f90336
MW
1442# endif
1443# endif
1444#endif /* wxUSE_ZIPSTREAM */
1445
26e422a9
MW
1446#if wxUSE_TARSTREAM
1447# if !wxUSE_ARCHIVE_STREAMS
1448# ifdef wxABORT_ON_CONFIG_ERROR
1449# error "wxTar requires wxArchive"
1450# else
1451# undef wxUSE_ARCHIVE_STREAMS
1452# define wxUSE_ARCHIVE_STREAMS 1
1453# endif
1454# endif
1455#endif /* wxUSE_TARSTREAM */
1456
6619edf0
VZ
1457/*
1458 Section 3b: the tests for the GUI settings only.
1459 */
a5d46b73
VZ
1460#if wxUSE_GUI
1461
79ebe32e 1462#if wxUSE_ACCESSIBILITY && !defined(__WXMSW__)
a9c64a1b
VZ
1463# ifdef wxABORT_ON_CONFIG_ERROR
1464# error "wxUSE_ACCESSIBILITY is currently only supported under wxMSW"
1465# else
1466# undef wxUSE_ACCESSIBILITY
1467# define wxUSE_ACCESSIBILITY 0
1468# endif
1469#endif /* wxUSE_ACCESSIBILITY */
1470
1e6feb95
VZ
1471#if wxUSE_BUTTON || \
1472 wxUSE_CALENDARCTRL || \
1473 wxUSE_CARET || \
1474 wxUSE_COMBOBOX || \
1475 wxUSE_BMPBUTTON || \
1476 wxUSE_CHECKBOX || \
1477 wxUSE_CHECKLISTBOX || \
1478 wxUSE_CHOICE || \
1479 wxUSE_GAUGE || \
1480 wxUSE_GRID || \
e721a2a2 1481 wxUSE_HEADERCTRL || \
1e6feb95
VZ
1482 wxUSE_LISTBOX || \
1483 wxUSE_LISTCTRL || \
1484 wxUSE_NOTEBOOK || \
1485 wxUSE_RADIOBOX || \
1486 wxUSE_RADIOBTN || \
e721a2a2 1487 wxUSE_REARRANGECTRL || \
1e6feb95
VZ
1488 wxUSE_SCROLLBAR || \
1489 wxUSE_SLIDER || \
1490 wxUSE_SPINBTN || \
1491 wxUSE_SPINCTRL || \
1492 wxUSE_STATBMP || \
1493 wxUSE_STATBOX || \
1494 wxUSE_STATLINE || \
3379ed37 1495 wxUSE_STATTEXT || \
1e6feb95
VZ
1496 wxUSE_STATUSBAR || \
1497 wxUSE_TEXTCTRL || \
1498 wxUSE_TOOLBAR || \
524cb040
VZ
1499 wxUSE_TREECTRL || \
1500 wxUSE_TREELISTCTRL
1e6feb95
VZ
1501# if !wxUSE_CONTROLS
1502# ifdef wxABORT_ON_CONFIG_ERROR
1503# error "wxUSE_CONTROLS unset but some controls used"
1504# else
1505# undef wxUSE_CONTROLS
1506# define wxUSE_CONTROLS 1
1507# endif
1508# endif
1509#endif /* controls */
1510
0b4f47a3
DS
1511#if wxUSE_BMPBUTTON
1512# if !wxUSE_BUTTON
1513# ifdef wxABORT_ON_CONFIG_ERROR
1514# error "wxUSE_BMPBUTTON requires wxUSE_BUTTON"
1515# else
1516# undef wxUSE_BUTTON
1517# define wxUSE_BUTTON 1
1518# endif
1519# endif
1520#endif /* wxUSE_BMPBUTTON */
1521
3571e1ad
VZ
1522#if wxUSE_COMMANDLINKBUTTON
1523# if !wxUSE_BUTTON
1524# ifdef wxABORT_ON_CONFIG_ERROR
1525# error "wxUSE_COMMANDLINKBUTTON requires wxUSE_BUTTON"
1526# else
1527# undef wxUSE_BUTTON
1528# define wxUSE_BUTTON 1
1529# endif
1530# endif
1531#endif /* wxUSE_COMMANDLINKBUTTON */
1532
aa017eab
VZ
1533/*
1534 wxUSE_BOOKCTRL should be only used if any of the controls deriving from it
1535 are used
1536 */
1537#ifdef wxUSE_BOOKCTRL
1538# ifdef wxABORT_ON_CONFIG_ERROR
1539# error "wxUSE_BOOKCTRL is defined automatically, don't define it"
1540# else
1541# undef wxUSE_BOOKCTRL
15aad3b9 1542# endif
aa017eab 1543#endif
15aad3b9 1544
aa017eab
VZ
1545#define wxUSE_BOOKCTRL (wxUSE_NOTEBOOK || \
1546 wxUSE_LISTBOOK || \
1547 wxUSE_CHOICEBOOK || \
8d206c07 1548 wxUSE_TOOLBOOK || \
aa017eab 1549 wxUSE_TREEBOOK)
15aad3b9 1550
0917b10c
VZ
1551#if wxUSE_COLLPANE
1552# if !wxUSE_BUTTON || !wxUSE_STATLINE
1553# ifdef wxABORT_ON_CONFIG_ERROR
1554# error "wxUSE_COLLPANE requires wxUSE_BUTTON and wxUSE_STATLINE"
1555# else
1556# undef wxUSE_COLLPANE
1557# define wxUSE_COLLPANE 0
1558# endif
1559# endif
1560#endif /* wxUSE_COLLPANE */
1561
5b5e4f32
VZ
1562#if wxUSE_LISTBOOK
1563# if !wxUSE_LISTCTRL
1564# ifdef wxABORT_ON_CONFIG_ERROR
1565# error "wxListbook requires wxListCtrl"
1566# else
1567# undef wxUSE_LISTCTRL
1568# define wxUSE_LISTCTRL 1
1569# endif
1570# endif
1571#endif /* wxUSE_LISTBOOK */
1572
f5e0b4bc
WS
1573#if wxUSE_CHOICEBOOK
1574# if !wxUSE_CHOICE
1575# ifdef wxABORT_ON_CONFIG_ERROR
1576# error "wxChoicebook requires wxChoice"
1577# else
1578# undef wxUSE_CHOICE
1579# define wxUSE_CHOICE 1
1580# endif
1581# endif
1582#endif /* wxUSE_CHOICEBOOK */
1583
8d206c07
PC
1584#if wxUSE_TOOLBOOK
1585# if !wxUSE_TOOLBAR
1586# ifdef wxABORT_ON_CONFIG_ERROR
1587# error "wxToolbook requires wxToolBar"
1588# else
1589# undef wxUSE_TOOLBAR
1590# define wxUSE_TOOLBAR 1
1591# endif
1592# endif
1593#endif /* wxUSE_TOOLBOOK */
1594
8d37334f
VZ
1595#if !wxUSE_ODCOMBOBOX
1596# if wxUSE_BITMAPCOMBOBOX
e721a2a2
VZ
1597# ifdef wxABORT_ON_CONFIG_ERROR
1598# error "wxBitmapComboBox requires wxOwnerDrawnComboBox"
1599# else
1600# undef wxUSE_BITMAPCOMBOBOX
1601# define wxUSE_BITMAPCOMBOBOX 0
1602# endif
8d37334f
VZ
1603# endif
1604#endif /* !wxUSE_ODCOMBOBOX */
1605
e721a2a2
VZ
1606#if !wxUSE_HEADERCTRL
1607# if wxUSE_DATAVIEWCTRL || wxUSE_GRID
1608# ifdef wxABORT_ON_CONFIG_ERROR
1609# error "wxDataViewCtrl and wxGrid require wxHeaderCtrl"
1610# else
1611# undef wxUSE_HEADERCTRL
1612# define wxUSE_HEADERCTRL 1
1613# endif
1614# endif
1615#endif /* !wxUSE_HEADERCTRL */
1616
75545930
VZ
1617#if wxUSE_REARRANGECTRL
1618# if !wxUSE_CHECKLISTBOX
1619# ifdef wxABORT_ON_CONFIG_ERROR
1620# error "wxRearrangeCtrl requires wxCheckListBox"
1621# else
1622# undef wxUSE_REARRANGECTRL
1623# define wxUSE_REARRANGECTRL 0
1624# endif
1625# endif
1626#endif /* wxUSE_REARRANGECTRL */
1627
a1bdd4ab
VZ
1628#if wxUSE_RICHMSGDLG
1629# if !wxUSE_MSGDLG
1630# ifdef wxABORT_ON_CONFIG_ERROR
1631# error "wxUSE_RICHMSGDLG requires wxUSE_MSGDLG"
1632# else
1633# undef wxUSE_MSGDLG
1634# define wxUSE_MSGDLG 1
1635# endif
1636# endif
1637#endif /* wxUSE_RICHMSGDLG */
1638
da4486fb
VZ
1639/* don't attempt to use native status bar on the platforms not having it */
1640#ifndef wxUSE_NATIVE_STATUSBAR
1641# define wxUSE_NATIVE_STATUSBAR 0
1642#elif wxUSE_NATIVE_STATUSBAR
bd362275 1643# if defined(__WXUNIVERSAL__) || !(defined(__WXMSW__) || defined(__WXMAC__))
da4486fb
VZ
1644# undef wxUSE_NATIVE_STATUSBAR
1645# define wxUSE_NATIVE_STATUSBAR 0
1646# endif
1647#endif
1648
f43426c1
RD
1649#if wxUSE_GRAPHICS_CONTEXT && !wxUSE_GEOMETRY
1650# ifdef wxABORT_ON_CONFIG_ERROR
1651# error "wxUSE_GRAPHICS_CONTEXT requires wxUSE_GEOMETRY"
1652# else
1653# undef wxUSE_GRAPHICS_CONTEXT
1654# define wxUSE_GRAPHICS_CONTEXT 0
1655# endif
1656#endif /* wxUSE_GRAPHICS_CONTEXT */
1657
1658
3379ed37
VZ
1659/* generic controls dependencies */
1660#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
1661# if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
1662 /* all common controls are needed by these dialogs */
1663# if !defined(wxUSE_CHOICE) || \
1664 !defined(wxUSE_TEXTCTRL) || \
1665 !defined(wxUSE_BUTTON) || \
1666 !defined(wxUSE_CHECKBOX) || \
1667 !defined(wxUSE_STATTEXT)
1668# ifdef wxABORT_ON_CONFIG_ERROR
1669# error "These common controls are needed by common dialogs"
1670# else
1671# undef wxUSE_CHOICE
1672# define wxUSE_CHOICE 1
1673# undef wxUSE_TEXTCTRL
1674# define wxUSE_TEXTCTRL 1
1675# undef wxUSE_BUTTON
1676# define wxUSE_BUTTON 1
1677# undef wxUSE_CHECKBOX
1678# define wxUSE_CHECKBOX 1
1679# undef wxUSE_STATTEXT
1680# define wxUSE_STATTEXT 1
1681# endif
1682# endif
1683# endif
1684#endif /* !wxMSW || wxUniv */
1685
0cf3e587
VZ
1686/* generic file dialog depends on (generic) file control */
1687#if wxUSE_FILEDLG && !wxUSE_FILECTRL && \
1688 (defined(__WXUNIVERSAL__) || defined(__WXGTK__))
1689# ifdef wxABORT_ON_CONFIG_ERROR
1690# error "Generic wxFileDialog requires wxFileCtrl"
1691# else
1692# undef wxUSE_FILECTRL
1693# define wxUSE_FILECTRL 1
1694# endif
1695#endif /* wxUSE_FILEDLG */
1696
3379ed37 1697/* common dependencies */
c1d2466a
VZ
1698#if wxUSE_ARTPROVIDER_TANGO
1699# if !(wxUSE_STREAMS && wxUSE_IMAGE && wxUSE_LIBPNG)
1700# ifdef wxABORT_ON_CONFIG_ERROR
1701# error "Tango art provider requires wxImage with streams and PNG support"
1702# else
1703# undef wxUSE_ARTPROVIDER_TANGO
1704# define wxUSE_ARTPROVIDER_TANGO 0
1705# endif
1706# endif
1707#endif /* wxUSE_ARTPROVIDER_TANGO */
1708
1e6feb95
VZ
1709#if wxUSE_CALENDARCTRL
1710# if !(wxUSE_SPINBTN && wxUSE_COMBOBOX)
1711# ifdef wxABORT_ON_CONFIG_ERROR
1712# error "wxCalendarCtrl requires wxSpinButton and wxComboBox"
1713# else
1714# undef wxUSE_SPINBTN
1715# undef wxUSE_COMBOBOX
1716# define wxUSE_SPINBTN 1
1717# define wxUSE_COMBOBOX 1
1718# endif
1719# endif
e2b87f38
VZ
1720
1721# if !wxUSE_DATETIME
1722# ifdef wxABORT_ON_CONFIG_ERROR
1723# error "wxCalendarCtrl requires wxUSE_DATETIME"
1724# else
1725# undef wxUSE_DATETIME
1726# define wxUSE_DATETIME 1
1727# endif
1728# endif
1e6feb95
VZ
1729#endif /* wxUSE_CALENDARCTRL */
1730
569c7d8c 1731#if wxUSE_DATEPICKCTRL || wxUSE_TIMEPICKCTRL
324eeecb
WS
1732# if !wxUSE_DATETIME
1733# ifdef wxABORT_ON_CONFIG_ERROR
569c7d8c 1734# error "wxDatePickerCtrl and wxTimePickerCtrl requires wxUSE_DATETIME"
324eeecb
WS
1735# else
1736# undef wxUSE_DATETIME
1737# define wxUSE_DATETIME 1
1738# endif
1739# endif
569c7d8c 1740#endif /* wxUSE_DATEPICKCTRL || wxUSE_TIMEPICKCTRL */
324eeecb 1741
1e6feb95
VZ
1742#if wxUSE_CHECKLISTBOX
1743# if !wxUSE_LISTBOX
1744# ifdef wxABORT_ON_CONFIG_ERROR
1745# error "wxCheckListBox requires wxListBox"
1746# else
1747# undef wxUSE_LISTBOX
1748# define wxUSE_LISTBOX 1
1749# endif
1750# endif
97e4cf6d
WS
1751#endif /* wxUSE_CHECKLISTBOX */
1752
1753#if wxUSE_CHOICEDLG
1754# if !wxUSE_LISTBOX
1755# ifdef wxABORT_ON_CONFIG_ERROR
1756# error "Choice dialogs requires wxListBox"
1757# else
1758# undef wxUSE_LISTBOX
1759# define wxUSE_LISTBOX 1
1760# endif
1761# endif
1762#endif /* wxUSE_CHOICEDLG */
1e6feb95 1763
8ca4b822
VZ
1764#if wxUSE_FILECTRL
1765# if !wxUSE_DATETIME
1766# ifdef wxABORT_ON_CONFIG_ERROR
1767# error "wxFileCtrl requires wxDateTime"
1768# else
1769# undef wxUSE_DATETIME
1770# define wxUSE_DATETIME 1
1771# endif
1772# endif
1773#endif /* wxUSE_FILECTRL */
1774
0b4f47a3
DS
1775#if wxUSE_HELP
1776# if !wxUSE_BMPBUTTON
1777# ifdef wxABORT_ON_CONFIG_ERROR
1778# error "wxUSE_HELP requires wxUSE_BMPBUTTON"
1779# else
1780# undef wxUSE_BMPBUTTON
1781# define wxUSE_BMPBUTTON 1
1782# endif
1783# endif
adb799d6
DS
1784
1785# if !wxUSE_CHOICEDLG
1786# ifdef wxABORT_ON_CONFIG_ERROR
1787# error "wxUSE_HELP requires wxUSE_CHOICEDLG"
1788# else
1789# undef wxUSE_CHOICEDLG
1790# define wxUSE_CHOICEDLG 1
1791# endif
1792# endif
0b4f47a3
DS
1793#endif /* wxUSE_HELP */
1794
09f43fd3
VZ
1795#if wxUSE_MS_HTML_HELP
1796 /*
1797 this doesn't make sense for platforms other than MSW but we still
1798 define it in wx/setup_inc.h so don't complain if it happens to be
1799 defined under another platform but just silently fix it.
1800 */
1801# ifndef __WXMSW__
1802# undef wxUSE_MS_HTML_HELP
1803# define wxUSE_MS_HTML_HELP 0
1804# endif
1805#endif /* wxUSE_MS_HTML_HELP */
1806
3379ed37 1807#if wxUSE_WXHTML_HELP
0e871ad0 1808# if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK || !wxUSE_SPINCTRL
3379ed37
VZ
1809# ifdef wxABORT_ON_CONFIG_ERROR
1810# error "Built in help controller can't be compiled"
1811# else
1812# undef wxUSE_HELP
1813# define wxUSE_HELP 1
1814# undef wxUSE_HTML
1815# define wxUSE_HTML 1
1816# undef wxUSE_COMBOBOX
1817# define wxUSE_COMBOBOX 1
730dfeb4
VS
1818# undef wxUSE_NOTEBOOK
1819# define wxUSE_NOTEBOOK 1
0e871ad0
WS
1820# undef wxUSE_SPINCTRL
1821# define wxUSE_SPINCTRL 1
3379ed37
VZ
1822# endif
1823# endif
1824#endif /* wxUSE_WXHTML_HELP */
1825
05e4fd64
DS
1826#if !wxUSE_IMAGE
1827/*
1828 The default wxUSE_IMAGE setting is 1, so if it's set to 0 we assume the
1829 user explicitly wants this and disable all other features that require
1830 wxUSE_IMAGE.
1831 */
1832# if wxUSE_DRAGIMAGE
1833# ifdef wxABORT_ON_CONFIG_ERROR
1834# error "wxUSE_DRAGIMAGE requires wxUSE_IMAGE"
1835# else
1836# undef wxUSE_DRAGIMAGE
1837# define wxUSE_DRAGIMAGE 0
1838# endif
1839# endif
1840
1841# if wxUSE_LIBPNG
1842# ifdef wxABORT_ON_CONFIG_ERROR
1843# error "wxUSE_LIBPNG requires wxUSE_IMAGE"
1844# else
1845# undef wxUSE_LIBPNG
1846# define wxUSE_LIBPNG 0
1847# endif
1848# endif
1849
1850# if wxUSE_LIBJPEG
1851# ifdef wxABORT_ON_CONFIG_ERROR
1852# error "wxUSE_LIBJPEG requires wxUSE_IMAGE"
1853# else
1854# undef wxUSE_LIBJPEG
1855# define wxUSE_LIBJPEG 0
1856# endif
1857# endif
1858
1859# if wxUSE_LIBTIFF
1860# ifdef wxABORT_ON_CONFIG_ERROR
1861# error "wxUSE_LIBTIFF requires wxUSE_IMAGE"
1862# else
1863# undef wxUSE_LIBTIFF
1864# define wxUSE_LIBTIFF 0
1865# endif
1866# endif
1867
1868# if wxUSE_GIF
1869# ifdef wxABORT_ON_CONFIG_ERROR
1870# error "wxUSE_GIF requires wxUSE_IMAGE"
1871# else
1872# undef wxUSE_GIF
1873# define wxUSE_GIF 0
1874# endif
1875# endif
1876
1877# if wxUSE_PNM
1878# ifdef wxABORT_ON_CONFIG_ERROR
1879# error "wxUSE_PNM requires wxUSE_IMAGE"
1880# else
1881# undef wxUSE_PNM
1882# define wxUSE_PNM 0
1883# endif
1884# endif
1885
1886# if wxUSE_PCX
1887# ifdef wxABORT_ON_CONFIG_ERROR
1888# error "wxUSE_PCX requires wxUSE_IMAGE"
1889# else
1890# undef wxUSE_PCX
1891# define wxUSE_PCX 0
1892# endif
1893# endif
1894
1895# if wxUSE_IFF
1896# ifdef wxABORT_ON_CONFIG_ERROR
1897# error "wxUSE_IFF requires wxUSE_IMAGE"
1898# else
1899# undef wxUSE_IFF
1900# define wxUSE_IFF 0
1901# endif
1902# endif
1903
1904# if wxUSE_TOOLBAR
1905# ifdef wxABORT_ON_CONFIG_ERROR
1906# error "wxUSE_TOOLBAR requires wxUSE_IMAGE"
1907# else
1908# undef wxUSE_TOOLBAR
1909# define wxUSE_TOOLBAR 0
1910# endif
1911# endif
1912
1913# if wxUSE_XPM
1914# ifdef wxABORT_ON_CONFIG_ERROR
1915# error "wxUSE_XPM requires wxUSE_IMAGE"
1916# else
1917# undef wxUSE_XPM
1918# define wxUSE_XPM 0
1919# endif
1920# endif
1921
1922#endif /* !wxUSE_IMAGE */
1923
e30285ab
VZ
1924#if wxUSE_DOC_VIEW_ARCHITECTURE
1925# if !wxUSE_MENUS
1926# ifdef wxABORT_ON_CONFIG_ERROR
1927# error "DocView requires wxUSE_MENUS"
1928# else
1929# undef wxUSE_MENUS
1930# define wxUSE_MENUS 1
1931# endif
1932# endif
1933
adb799d6
DS
1934# if !wxUSE_CHOICEDLG
1935# ifdef wxABORT_ON_CONFIG_ERROR
1936# error "DocView requires wxUSE_CHOICEDLG"
1937# else
1938# undef wxUSE_CHOICEDLG
1939# define wxUSE_CHOICEDLG 1
1940# endif
1941# endif
1942
e30285ab
VZ
1943# if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM
1944# ifdef wxABORT_ON_CONFIG_ERROR
1945# error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM"
1946# else
1947# undef wxUSE_STREAMS
1948# define wxUSE_STREAMS 1
1949# endif
1950# endif
a0219e45
VS
1951
1952# if !wxUSE_FILE_HISTORY
1953# ifdef wxABORT_ON_CONFIG_ERROR
1954# error "DocView requires wxUSE_FILE_HISTORY"
1955# else
1956# undef wxUSE_FILE_HISTORY
1957# define wxUSE_FILE_HISTORY 1
1958# endif
1959# endif
e30285ab
VZ
1960#endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
1961
3379ed37
VZ
1962#if wxUSE_PRINTING_ARCHITECTURE
1963# if !wxUSE_COMBOBOX
1964# ifdef wxABORT_ON_CONFIG_ERROR
1965# error "Print dialog requires wxUSE_COMBOBOX"
1966# else
1967# undef wxUSE_COMBOBOX
1968# define wxUSE_COMBOBOX 1
1969# endif
1970# endif
1971#endif /* wxUSE_PRINTING_ARCHITECTURE */
1972
e30285ab 1973#if wxUSE_MDI_ARCHITECTURE
efd17a1d
VZ
1974# if !wxUSE_MDI
1975# ifdef wxABORT_ON_CONFIG_ERROR
1976# error "MDI requires wxUSE_MDI"
1977# else
1978# undef wxUSE_MDI
1979# define wxUSE_MDI 1
1980# endif
1981# endif
1982
e30285ab 1983# if !wxUSE_DOC_VIEW_ARCHITECTURE
1e6feb95 1984# ifdef wxABORT_ON_CONFIG_ERROR
0872eaf9 1985# error "wxUSE_MDI_ARCHITECTURE requires wxUSE_DOC_VIEW_ARCHITECTURE"
1e6feb95 1986# else
e30285ab
VZ
1987# undef wxUSE_DOC_VIEW_ARCHITECTURE
1988# define wxUSE_DOC_VIEW_ARCHITECTURE 1
1e6feb95
VZ
1989# endif
1990# endif
e30285ab 1991#endif /* wxUSE_MDI_ARCHITECTURE */
1e6feb95
VZ
1992
1993#if !wxUSE_FILEDLG
2119e280 1994# if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP
1e6feb95 1995# ifdef wxABORT_ON_CONFIG_ERROR
0872eaf9 1996# error "wxUSE_FILEDLG is required by wxUSE_DOC_VIEW_ARCHITECTURE and wxUSE_WXHTML_HELP!"
1e6feb95
VZ
1997# else
1998# undef wxUSE_FILEDLG
1999# define wxUSE_FILEDLG 1
2000# endif
2001# endif
e421922f 2002#endif /* wxUSE_FILEDLG */
1e6feb95 2003
555f645a 2004#if !wxUSE_GAUGE || !wxUSE_BUTTON
bd362275 2005# if wxUSE_PROGRESSDLG
063b752e 2006# ifdef wxABORT_ON_CONFIG_ERROR
555f645a 2007# error "Generic progress dialog requires wxUSE_GAUGE and wxUSE_BUTTON"
063b752e
WS
2008# else
2009# undef wxUSE_GAUGE
555f645a 2010# undef wxUSE_BUTTON
063b752e 2011# define wxUSE_GAUGE 1
555f645a 2012# define wxUSE_BUTTON 1
063b752e
WS
2013# endif
2014# endif
2015#endif /* !wxUSE_GAUGE */
2016
0b4f47a3 2017#if !wxUSE_BUTTON
555f645a 2018# if wxUSE_FONTDLG || \
0b4f47a3
DS
2019 wxUSE_FILEDLG || \
2020 wxUSE_CHOICEDLG || \
2021 wxUSE_NUMBERDLG || \
2022 wxUSE_TEXTDLG || \
2023 wxUSE_DIRDLG || \
2024 wxUSE_STARTUP_TIPS || \
2025 wxUSE_WIZARDDLG
2026# ifdef wxABORT_ON_CONFIG_ERROR
2027# error "Common and generic dialogs require wxUSE_BUTTON"
2028# else
2029# undef wxUSE_BUTTON
2030# define wxUSE_BUTTON 1
2031# endif
2032# endif
063b752e 2033#endif /* !wxUSE_BUTTON */
0b4f47a3 2034
12491c1f
JS
2035#if !wxUSE_TOOLBAR
2036# if wxUSE_TOOLBAR_NATIVE
2037# ifdef wxABORT_ON_CONFIG_ERROR
2038# error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_NATIVE is set to 1"
2039# else
2040# undef wxUSE_TOOLBAR_NATIVE
2041# define wxUSE_TOOLBAR_NATIVE 0
2042# endif
2043# endif
12491c1f
JS
2044#endif
2045
1e6feb95 2046#if !wxUSE_IMAGLIST
524cb040 2047# if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL || wxUSE_TREELISTCTRL
1e6feb95
VZ
2048# ifdef wxABORT_ON_CONFIG_ERROR
2049# error "wxImageList must be compiled as well"
2050# else
2051# undef wxUSE_IMAGLIST
2052# define wxUSE_IMAGLIST 1
2053# endif
2054# endif
2055#endif /* !wxUSE_IMAGLIST */
2056
1e6feb95 2057#if wxUSE_RADIOBOX
9a727a3b 2058# if !wxUSE_RADIOBTN
1e6feb95 2059# ifdef wxABORT_ON_CONFIG_ERROR
9a727a3b 2060# error "wxUSE_RADIOBOX requires wxUSE_RADIOBTN"
1e6feb95
VZ
2061# else
2062# undef wxUSE_RADIOBTN
1e6feb95 2063# define wxUSE_RADIOBTN 1
9a727a3b
WS
2064# endif
2065# endif
bd362275 2066# if !wxUSE_STATBOX
9a727a3b
WS
2067# ifdef wxABORT_ON_CONFIG_ERROR
2068# error "wxUSE_RADIOBOX requires wxUSE_STATBOX"
2069# else
2070# undef wxUSE_STATBOX
1e6feb95
VZ
2071# define wxUSE_STATBOX 1
2072# endif
2073# endif
2074#endif /* wxUSE_RADIOBOX */
2075
3379ed37
VZ
2076#if wxUSE_LOGWINDOW
2077# if !wxUSE_TEXTCTRL
2078# ifdef wxABORT_ON_CONFIG_ERROR
2079# error "wxUSE_LOGWINDOW requires wxUSE_TEXTCTRL"
2080# else
2081# undef wxUSE_TEXTCTRL
2082# define wxUSE_TEXTCTRL 1
2083# endif
2084# endif
2085#endif /* wxUSE_LOGWINDOW */
1e6feb95 2086
3e6e2754 2087#if wxUSE_LOG_DIALOG
0b4f47a3 2088# if !wxUSE_LISTCTRL || !wxUSE_BUTTON
3e6e2754 2089# ifdef wxABORT_ON_CONFIG_ERROR
0b4f47a3 2090# error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL and wxUSE_BUTTON"
3e6e2754
JS
2091# else
2092# undef wxUSE_LISTCTRL
2093# define wxUSE_LISTCTRL 1
0b4f47a3
DS
2094# undef wxUSE_BUTTON
2095# define wxUSE_BUTTON 1
3e6e2754
JS
2096# endif
2097# endif
2098#endif /* wxUSE_LOG_DIALOG */
2099
1e6feb95 2100#if wxUSE_CLIPBOARD && !wxUSE_DATAOBJ
3379ed37 2101# ifdef wxABORT_ON_CONFIG_ERROR
1e6feb95
VZ
2102# error "wxClipboard requires wxDataObject"
2103# else
2104# undef wxUSE_DATAOBJ
2105# define wxUSE_DATAOBJ 1
2106# endif
2107#endif /* wxUSE_CLIPBOARD */
2108
d2ebf0b7
VS
2109#if wxUSE_XRC && !wxUSE_XML
2110# ifdef wxABORT_ON_CONFIG_ERROR
2111# error "wxUSE_XRC requires wxUSE_XML"
2112# else
2113# undef wxUSE_XRC
2114# define wxUSE_XRC 0
2115# endif
5a017695 2116#endif /* wxUSE_XRC */
d2ebf0b7 2117
4669dcb2
RN
2118#if wxUSE_SOCKETS && !wxUSE_STOPWATCH
2119# ifdef wxABORT_ON_CONFIG_ERROR
2120# error "wxUSE_SOCKETS requires wxUSE_STOPWATCH"
2121# else
2122# undef wxUSE_SOCKETS
2123# define wxUSE_SOCKETS 0
2124# endif
2125#endif /* wxUSE_SOCKETS */
2126
b0fc907f
VZ
2127#if wxUSE_SVG && !wxUSE_STREAMS
2128# ifdef wxABORT_ON_CONFIG_ERROR
2129# error "wxUSE_SVG requires wxUSE_STREAMS"
2130# else
2131# undef wxUSE_SVG
2132# define wxUSE_SVG 0
2133# endif
2134#endif /* wxUSE_SVG */
2135
d5cbee17
VS
2136#if wxUSE_SVG && !wxUSE_IMAGE
2137# ifdef wxABORT_ON_CONFIG_ERROR
2138# error "wxUSE_SVG requires wxUSE_IMAGE"
2139# else
2140# undef wxUSE_SVG
2141# define wxUSE_SVG 0
2142# endif
2143#endif /* wxUSE_SVG */
2144
2145#if wxUSE_SVG && !wxUSE_LIBPNG
2146# ifdef wxABORT_ON_CONFIG_ERROR
2147# error "wxUSE_SVG requires wxUSE_LIBPNG"
2148# else
2149# undef wxUSE_SVG
2150# define wxUSE_SVG 0
2151# endif
2152#endif /* wxUSE_SVG */
2153
dc90b8d4
VZ
2154#if wxUSE_TASKBARICON && !wxUSE_MENUS
2155# ifdef wxABORT_ON_CONFIG_ERROR
2156# error "wxUSE_TASKBARICON requires wxUSE_MENUS"
2157# else
2158# undef wxUSE_TASKBARICON
2159# define wxUSE_TASKBARICON 0
2160# endif
2161#endif /* wxUSE_TASKBARICON */
2162
ca5c6ac3
VZ
2163#if !wxUSE_VARIANT
2164# if wxUSE_DATAVIEWCTRL
2165# ifdef wxABORT_ON_CONFIG_ERROR
2166# error "wxDataViewCtrl requires wxVariant"
2167# else
2168# undef wxUSE_DATAVIEWCTRL
2169# define wxUSE_DATAVIEWCTRL 0
2170# endif
2171# endif
ca5c6ac3
VZ
2172#endif /* wxUSE_VARIANT */
2173
524cb040
VZ
2174#if wxUSE_TREELISTCTRL && !wxUSE_DATAVIEWCTRL
2175# ifdef wxABORT_ON_CONFIG_ERROR
2176# error "wxUSE_TREELISTCTRL requires wxDataViewCtrl"
2177# else
2178# undef wxUSE_TREELISTCTRL
2179# define wxUSE_TREELISTCTRL 0
2180# endif
2181#endif /* wxUSE_TREELISTCTRL */
2182
88cc66f7
VZ
2183#if wxUSE_WEBVIEW && !(wxUSE_WEBVIEW_WEBKIT || wxUSE_WEBVIEW_IE)
2184# ifdef wxABORT_ON_CONFIG_ERROR
2185# error "wxUSE_WEBVIEW requires at least one backend"
2186# else
2187# undef wxUSE_WEBVIEW
2188# define wxUSE_WEBVIEW 0
2189# endif
2190#endif /* wxUSE_WEBVIEW && !any web view backend */
2191
1e6feb95 2192#endif /* wxUSE_GUI */
8ba16443
VZ
2193
2194#endif /* _WX_CHKCONF_H_ */