X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4652511f90ff770a99195d1d0fe016684fcf03af..2d55af1dfa7fd1cc2df13a6593fd51591cfcfcb1:/include/wx/chkconf.h diff --git a/include/wx/chkconf.h b/include/wx/chkconf.h index 1de81cba3d..e71915d016 100644 --- a/include/wx/chkconf.h +++ b/include/wx/chkconf.h @@ -1,35 +1,55 @@ -/** -* Name: wx/chkconf.h -* Purpose: check the config settings for consistency -* Author: Vadim Zeitlin -* Modified by: -* Created: 09.08.00 -* RCS-ID: $Id$ -* Copyright: (c) 2000 Vadim Zeitlin -* Licence: wxWindows licence -*/ +/* + * Name: wx/chkconf.h + * Purpose: check the config settings for consistency + * Author: Vadim Zeitlin + * Modified by: + * Created: 09.08.00 + * RCS-ID: $Id$ + * Copyright: (c) 2000 Vadim Zeitlin + * Licence: wxWindows licence + */ /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ +#ifndef _WX_CHKCONF_H_ +#define _WX_CHKCONF_H_ /* - Compiler-specific checking. + ************************************************** + PLEASE READ THIS IF YOU GET AN ERROR IN THIS FILE! + ************************************************** + + If you get an error saying "wxUSE_FOO must be defined", it means that you + are not using the correct up-to-date version of setup.h. This happens most + often when using svn or daily snapshots and a new symbol was added to + setup0.h and you haven't updated your local setup.h to to reflect it. If + this is the case, you need to propagate the changes from setup0.h to your + setup.h and, if using makefiles under MSW, also remove setup.h under the + build directory (lib/$(COMPILER)_{lib,dll}/msw[u][d][dll]/wx) so that it + the new setup.h is copied there. + + If you get an error of the form "wxFoo requires wxBar", then the settings + in your setup.h are inconsistent. You have the choice between correcting + them manually or commenting out #define wxABORT_ON_CONFIG_ERROR below to + try to correct the problems automatically (not really recommended but + might work). */ -#if defined(__WXPALMOS__) -# include "wx/palmos/chkconf.h" -#elif defined(__WXWINCE__) -# include "wx/msw/wince/chkconf.h" -#elif defined(__WXMSW__) -# include "wx/msw/chkconf.h" -#elif defined(__WXMAC__) -# include "wx/mac/chkconf.h" -#endif +/* + This file has the following sections: + 1. checks that all wxUSE_XXX symbols we use are defined + a) first the non-GUI ones + b) then the GUI-only ones + 2. platform-specific checks done in the platform headers + 3. generic consistency checks + a) first the non-GUI ones + b) then the GUI-only ones + */ /* this global setting determines what should we do if the setting FOO - requires BAR and BAR is not set: we can either silently define BAR - (default, recommended) or give an error and abort (mainly useful for - developers only) + requires BAR and BAR is not set: we can either silently unset FOO as well + (do this if you're trying to build the smallest possible library) or give an + error and abort (default as leads to least surprising behaviour) */ #define wxABORT_ON_CONFIG_ERROR @@ -64,12 +84,30 @@ /* - tests for non GUI features + Section 1a: tests for non GUI features. + + please keep the options in alphabetical order! */ +#ifndef wxUSE_ANY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ANY must be defined, please read comment near the top of this file." +# else +# define wxUSE_ANY 0 +# endif +#endif /* wxUSE_ANY */ + +#ifndef wxUSE_CONSOLE_EVENTLOOP +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_CONSOLE_EVENTLOOP must be defined, please read comment near the top of this file." +# else +# define wxUSE_CONSOLE_EVENTLOOP 0 +# endif +#endif /* !defined(wxUSE_CONSOLE_EVENTLOOP) */ + #ifndef wxUSE_DYNLIB_CLASS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DYNLIB_CLASS must be defined." +# error "wxUSE_DYNLIB_CLASS must be defined, please read comment near the top of this file." # else # define wxUSE_DYNLIB_CLASS 0 # endif @@ -77,36 +115,79 @@ #ifndef wxUSE_EXCEPTIONS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_EXCEPTIONS must be defined." +# error "wxUSE_EXCEPTIONS must be defined, please read comment near the top of this file." # else # define wxUSE_EXCEPTIONS 0 # endif #endif /* !defined(wxUSE_EXCEPTIONS) */ +#ifndef wxUSE_FILE_HISTORY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FILE_HISTORY must be defined, please read comment near the top of this file." +# else +# define wxUSE_FILE_HISTORY 0 +# endif +#endif /* !defined(wxUSE_FILE_HISTORY) */ + #ifndef wxUSE_FILESYSTEM # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_FILESYSTEM must be defined." +# error "wxUSE_FILESYSTEM must be defined, please read comment near the top of this file." # else # define wxUSE_FILESYSTEM 0 # endif #endif /* !defined(wxUSE_FILESYSTEM) */ -/* don't give an error about this one yet, it's not fully implemented */ +#ifndef wxUSE_FS_ARCHIVE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FS_ARCHIVE must be defined, please read comment near the top of this file." +# else +# define wxUSE_FS_ARCHIVE 0 +# endif +#endif /* !defined(wxUSE_FS_ARCHIVE) */ + #ifndef wxUSE_FSVOLUME -# define wxUSE_FSVOLUME 0 +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FSVOLUME must be defined, please read comment near the top of this file." +# else +# define wxUSE_FSVOLUME 0 +# endif #endif /* !defined(wxUSE_FSVOLUME) */ +#ifndef wxUSE_FSWATCHER +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FSWATCHER must be defined, please read comment near the top of this file." +# else +# define wxUSE_FSWATCHER 0 +# endif +#endif /* !defined(wxUSE_FSWATCHER) */ + #ifndef wxUSE_DYNAMIC_LOADER # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DYNAMIC_LOADER must be defined." +# error "wxUSE_DYNAMIC_LOADER must be defined, please read comment near the top of this file." # else # define wxUSE_DYNAMIC_LOADER 0 # endif #endif /* !defined(wxUSE_DYNAMIC_LOADER) */ +#ifndef wxUSE_INTL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_INTL must be defined, please read comment near the top of this file." +# else +# define wxUSE_INTL 0 +# endif +#endif /* !defined(wxUSE_INTL) */ + +#ifndef wxUSE_IPV6 +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_IPV6 must be defined, please read comment near the top of this file." +# else +# define wxUSE_IPV6 0 +# endif +#endif /* !defined(wxUSE_IPV6) */ + #ifndef wxUSE_LOG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LOG must be defined." +# error "wxUSE_LOG must be defined, please read comment near the top of this file." # else # define wxUSE_LOG 0 # endif @@ -114,7 +195,7 @@ #ifndef wxUSE_LONGLONG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LONGLONG must be defined." +# error "wxUSE_LONGLONG must be defined, please read comment near the top of this file." # else # define wxUSE_LONGLONG 0 # endif @@ -122,15 +203,31 @@ #ifndef wxUSE_MIMETYPE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MIMETYPE must be defined." +# error "wxUSE_MIMETYPE must be defined, please read comment near the top of this file." # else # define wxUSE_MIMETYPE 0 # endif #endif /* !defined(wxUSE_MIMETYPE) */ +#ifndef wxUSE_ON_FATAL_EXCEPTION +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ON_FATAL_EXCEPTION must be defined, please read comment near the top of this file." +# else +# define wxUSE_ON_FATAL_EXCEPTION 0 +# endif +#endif /* !defined(wxUSE_ON_FATAL_EXCEPTION) */ + +#ifndef wxUSE_PRINTF_POS_PARAMS +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_PRINTF_POS_PARAMS must be defined, please read comment near the top of this file." +# else +# define wxUSE_PRINTF_POS_PARAMS 0 +# endif +#endif /* !defined(wxUSE_PRINTF_POS_PARAMS) */ + #ifndef wxUSE_PROTOCOL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PROTOCOL must be defined." +# error "wxUSE_PROTOCOL must be defined, please read comment near the top of this file." # else # define wxUSE_PROTOCOL 0 # endif @@ -148,7 +245,7 @@ #ifndef wxUSE_PROTOCOL_HTTP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PROTOCOL_HTTP must be defined." +# error "wxUSE_PROTOCOL_HTTP must be defined, please read comment near the top of this file." # else # define wxUSE_PROTOCOL_HTTP 0 # endif @@ -156,7 +253,7 @@ #ifndef wxUSE_PROTOCOL_FTP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PROTOCOL_FTP must be defined." +# error "wxUSE_PROTOCOL_FTP must be defined, please read comment near the top of this file." # else # define wxUSE_PROTOCOL_FTP 0 # endif @@ -164,7 +261,7 @@ #ifndef wxUSE_PROTOCOL_FILE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PROTOCOL_FILE must be defined." +# error "wxUSE_PROTOCOL_FILE must be defined, please read comment near the top of this file." # else # define wxUSE_PROTOCOL_FILE 0 # endif @@ -172,7 +269,7 @@ #ifndef wxUSE_REGEX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_REGEX must be defined." +# error "wxUSE_REGEX must be defined, please read comment near the top of this file." # else # define wxUSE_REGEX 0 # endif @@ -180,7 +277,7 @@ #ifndef wxUSE_STDPATHS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STDPATHS must be defined." +# error "wxUSE_STDPATHS must be defined, please read comment near the top of this file." # else # define wxUSE_STDPATHS 1 # endif @@ -188,7 +285,7 @@ #ifndef wxUSE_XML # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_XML must be defined." +# error "wxUSE_XML must be defined, please read comment near the top of this file." # else # define wxUSE_XML 0 # endif @@ -196,7 +293,7 @@ #ifndef wxUSE_SOCKETS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SOCKETS must be defined." +# error "wxUSE_SOCKETS must be defined, please read comment near the top of this file." # else # define wxUSE_SOCKETS 0 # endif @@ -204,7 +301,7 @@ #ifndef wxUSE_STREAMS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STREAMS must be defined." +# error "wxUSE_STREAMS must be defined, please read comment near the top of this file." # else # define wxUSE_STREAMS 0 # endif @@ -212,7 +309,7 @@ #ifndef wxUSE_STOPWATCH # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STOPWATCH must be defined." +# error "wxUSE_STOPWATCH must be defined, please read comment near the top of this file." # else # define wxUSE_STOPWATCH 0 # endif @@ -220,7 +317,7 @@ #ifndef wxUSE_TEXTBUFFER # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TEXTBUFFER must be defined." +# error "wxUSE_TEXTBUFFER must be defined, please read comment near the top of this file." # else # define wxUSE_TEXTBUFFER 0 # endif @@ -228,7 +325,7 @@ #ifndef wxUSE_TEXTFILE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TEXTFILE must be defined." +# error "wxUSE_TEXTFILE must be defined, please read comment near the top of this file." # else # define wxUSE_TEXTFILE 0 # endif @@ -236,7 +333,7 @@ #ifndef wxUSE_UNICODE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UNICODE must be defined." +# error "wxUSE_UNICODE must be defined, please read comment near the top of this file." # else # define wxUSE_UNICODE 0 # endif @@ -244,14 +341,32 @@ #ifndef wxUSE_URL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_URL must be defined." +# error "wxUSE_URL must be defined, please read comment near the top of this file." # else # define wxUSE_URL 0 # endif #endif /* !defined(wxUSE_URL) */ +#ifndef wxUSE_VARIANT +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_VARIANT must be defined, please read comment near the top of this file." +# else +# define wxUSE_VARIANT 0 +# endif +#endif /* wxUSE_VARIANT */ + +#ifndef wxUSE_XLOCALE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_XLOCALE must be defined, please read comment near the top of this file." +# else +# define wxUSE_XLOCALE 0 +# endif +#endif /* !defined(wxUSE_XLOCALE) */ + /* - all these tests are for GUI only + Section 1b: all these tests are for GUI only. + + please keep the options in alphabetical order! */ #if wxUSE_GUI @@ -260,17 +375,57 @@ preprocessor about invalid integer expression */ +#ifndef wxUSE_ABOUTDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ABOUTDLG must be defined, please read comment near the top of this file." +# else +# define wxUSE_ABOUTDLG 0 +# endif +#endif /* !defined(wxUSE_ABOUTDLG) */ + #ifndef wxUSE_ACCEL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_ACCEL must be defined." +# error "wxUSE_ACCEL must be defined, please read comment near the top of this file." # else # define wxUSE_ACCEL 0 # endif #endif /* !defined(wxUSE_ACCEL) */ +#ifndef wxUSE_ACCESSIBILITY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ACCESSIBILITY must be defined, please read comment near the top of this file." +# else +# define wxUSE_ACCESSIBILITY 0 +# endif +#endif /* !defined(wxUSE_ACCESSIBILITY) */ + +#ifndef wxUSE_ANIMATIONCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ANIMATIONCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_ANIMATIONCTRL 0 +# endif +#endif /* !defined(wxUSE_ANIMATIONCTRL) */ + +#ifndef wxUSE_AUTOID_MANAGEMENT +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_AUTOID_MANAGEMENT must be defined, please read comment near the top of this file." +# else +# define wxUSE_AUTOID_MANAGEMENT 0 +# endif +#endif /* !defined(wxUSE_AUTOID_MANAGEMENT) */ + +#ifndef wxUSE_BITMAPCOMBOBOX +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_BITMAPCOMBOBOX must be defined, please read comment near the top of this file." +# else +# define wxUSE_BITMAPCOMBOBOX 0 +# endif +#endif /* !defined(wxUSE_BITMAPCOMBOBOX) */ + #ifndef wxUSE_BMPBUTTON # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_BMPBUTTON must be defined." +# error "wxUSE_BMPBUTTON must be defined, please read comment near the top of this file." # else # define wxUSE_BMPBUTTON 0 # endif @@ -278,15 +433,27 @@ #ifndef wxUSE_BUTTON # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_BUTTON must be defined." +# error "wxUSE_BUTTON must be defined, please read comment near the top of this file." # else # define wxUSE_BUTTON 0 # endif #endif /* !defined(wxUSE_BUTTON) */ +/* + This one is special, it's only used under wxGTK currently so don't require + pre-defining it. + */ +#ifndef wxUSE_CAIRO +# ifdef __WXGTK210__ +# define wxUSE_CAIRO 1 +# else +# define wxUSE_CAIRO 0 +# endif +#endif + #ifndef wxUSE_CALENDARCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CALENDARCTRL must be defined." +# error "wxUSE_CALENDARCTRL must be defined, please read comment near the top of this file." # else # define wxUSE_CALENDARCTRL 0 # endif @@ -294,7 +461,7 @@ #ifndef wxUSE_CARET # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CARET must be defined." +# error "wxUSE_CARET must be defined, please read comment near the top of this file." # else # define wxUSE_CARET 0 # endif @@ -302,7 +469,7 @@ #ifndef wxUSE_CHECKBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CHECKBOX must be defined." +# error "wxUSE_CHECKBOX must be defined, please read comment near the top of this file." # else # define wxUSE_CHECKBOX 0 # endif @@ -310,7 +477,7 @@ #ifndef wxUSE_CHECKLISTBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CHECKLISTBOX must be defined." +# error "wxUSE_CHECKLISTBOX must be defined, please read comment near the top of this file." # else # define wxUSE_CHECKLISTBOX 0 # endif @@ -318,7 +485,7 @@ #ifndef wxUSE_CHOICE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CHOICE must be defined." +# error "wxUSE_CHOICE must be defined, please read comment near the top of this file." # else # define wxUSE_CHOICE 0 # endif @@ -326,7 +493,7 @@ #ifndef wxUSE_CHOICEBOOK # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CHOICEBOOK must be defined." +# error "wxUSE_CHOICEBOOK must be defined, please read comment near the top of this file." # else # define wxUSE_CHOICEBOOK 0 # endif @@ -334,7 +501,7 @@ #ifndef wxUSE_CHOICEDLG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CHOICEDLG must be defined." +# error "wxUSE_CHOICEDLG must be defined, please read comment near the top of this file." # else # define wxUSE_CHOICEDLG 0 # endif @@ -342,47 +509,95 @@ #ifndef wxUSE_CLIPBOARD # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_CLIPBOARD must be defined." +# error "wxUSE_CLIPBOARD must be defined, please read comment near the top of this file." # else # define wxUSE_CLIPBOARD 0 # endif #endif /* !defined(wxUSE_CLIPBOARD) */ +#ifndef wxUSE_COLLPANE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_COLLPANE must be defined, please read comment near the top of this file." +# else +# define wxUSE_COLLPANE 0 +# endif +#endif /* !defined(wxUSE_COLLPANE) */ + #ifndef wxUSE_COLOURDLG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_COLOURDLG must be defined." +# error "wxUSE_COLOURDLG must be defined, please read comment near the top of this file." # else # define wxUSE_COLOURDLG 0 # endif #endif /* !defined(wxUSE_COLOURDLG) */ +#ifndef wxUSE_COLOURPICKERCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_COLOURPICKERCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_COLOURPICKERCTRL 0 +# endif +#endif /* !defined(wxUSE_COLOURPICKERCTRL) */ + #ifndef wxUSE_COMBOBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_COMBOBOX must be defined." +# error "wxUSE_COMBOBOX must be defined, please read comment near the top of this file." # else # define wxUSE_COMBOBOX 0 # endif #endif /* !defined(wxUSE_COMBOBOX) */ +#ifndef wxUSE_COMMANDLINKBUTTON +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_COMMANDLINKBUTTON must be defined, please read comment near the top of this file." +# else +# define wxUSE_COMMANDLINKBUTTON 0 +# endif +#endif /* !defined(wxUSE_COMMANDLINKBUTTON) */ + +#ifndef wxUSE_COMBOCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_COMBOCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_COMBOCTRL 0 +# endif +#endif /* !defined(wxUSE_COMBOCTRL) */ + #ifndef wxUSE_DATAOBJ # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DATAOBJ must be defined." +# error "wxUSE_DATAOBJ must be defined, please read comment near the top of this file." # else # define wxUSE_DATAOBJ 0 # endif #endif /* !defined(wxUSE_DATAOBJ) */ +#ifndef wxUSE_DATAVIEWCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_DATAVIEWCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_DATAVIEWCTRL 0 +# endif +#endif /* !defined(wxUSE_DATAVIEWCTRL) */ + #ifndef wxUSE_DATEPICKCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DATEPICKCTRL must be defined." +# error "wxUSE_DATEPICKCTRL must be defined, please read comment near the top of this file." # else # define wxUSE_DATEPICKCTRL 0 # endif #endif /* !defined(wxUSE_DATEPICKCTRL) */ +#ifndef wxUSE_DIRPICKERCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_DIRPICKERCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_DIRPICKERCTRL 0 +# endif +#endif /* !defined(wxUSE_DIRPICKERCTRL) */ + #ifndef wxUSE_DISPLAY # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DISPLAY must be defined." +# error "wxUSE_DISPLAY must be defined, please read comment near the top of this file." # else # define wxUSE_DISPLAY 0 # endif @@ -390,23 +605,39 @@ #ifndef wxUSE_DOC_VIEW_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined." +# error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined, please read comment near the top of this file." # else # define wxUSE_DOC_VIEW_ARCHITECTURE 0 # endif #endif /* !defined(wxUSE_DOC_VIEW_ARCHITECTURE) */ +#ifndef wxUSE_FILECTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FILECTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_FILECTRL 0 +# endif +#endif /* !defined(wxUSE_FILECTRL) */ + #ifndef wxUSE_FILEDLG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_FILEDLG must be defined." +# error "wxUSE_FILEDLG must be defined, please read comment near the top of this file." # else # define wxUSE_FILEDLG 0 # endif #endif /* !defined(wxUSE_FILEDLG) */ +#ifndef wxUSE_FILEPICKERCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FILEPICKERCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_FILEPICKERCTRL 0 +# endif +#endif /* !defined(wxUSE_FILEPICKERCTRL) */ + #ifndef wxUSE_FONTDLG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_FONTDLG must be defined." +# error "wxUSE_FONTDLG must be defined, please read comment near the top of this file." # else # define wxUSE_FONTDLG 0 # endif @@ -414,59 +645,84 @@ #ifndef wxUSE_FONTMAP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_FONTMAP must be defined." +# error "wxUSE_FONTMAP must be defined, please read comment near the top of this file." # else # define wxUSE_FONTMAP 0 # endif #endif /* !defined(wxUSE_FONTMAP) */ +#ifndef wxUSE_FONTPICKERCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FONTPICKERCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_FONTPICKERCTRL 0 +# endif +#endif /* !defined(wxUSE_FONTPICKERCTRL) */ + #ifndef wxUSE_GAUGE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_GAUGE must be defined." +# error "wxUSE_GAUGE must be defined, please read comment near the top of this file." # else # define wxUSE_GAUGE 0 # endif #endif /* !defined(wxUSE_GAUGE) */ +#ifndef wxUSE_GRAPHICS_CONTEXT +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_GRAPHICS_CONTEXT must be defined, please read comment near the top of this file." +# else +# define wxUSE_GRAPHICS_CONTEXT 0 +# endif +#endif /* !defined(wxUSE_GRAPHICS_CONTEXT) */ + + #ifndef wxUSE_GRID # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_GRID must be defined." +# error "wxUSE_GRID must be defined, please read comment near the top of this file." # else # define wxUSE_GRID 0 # endif #endif /* !defined(wxUSE_GRID) */ +#ifndef wxUSE_HEADERCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_HEADERCTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_HEADERCTRL 0 +# endif +#endif /* !defined(wxUSE_HEADERCTRL) */ + #ifndef wxUSE_HELP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_HELP must be defined." +# error "wxUSE_HELP must be defined, please read comment near the top of this file." # else # define wxUSE_HELP 0 # endif #endif /* !defined(wxUSE_HELP) */ -#ifndef wxUSE_HTML +#ifndef wxUSE_HYPERLINKCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_HTML must be defined." +# error "wxUSE_HYPERLINKCTRL must be defined, please read comment near the top of this file." # else -# define wxUSE_HTML 0 +# define wxUSE_HYPERLINKCTRL 0 # endif -#endif /* !defined(wxUSE_HTML) */ +#endif /* !defined(wxUSE_HYPERLINKCTRL) */ -#ifndef wxUSE_XRC +#ifndef wxUSE_HTML # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_XRC must be defined." +# error "wxUSE_HTML must be defined, please read comment near the top of this file." # else -# define wxUSE_XRC 0 +# define wxUSE_HTML 0 # endif -#endif /* !defined(wxUSE_XRC) */ +#endif /* !defined(wxUSE_HTML) */ #ifndef wxUSE_LIBMSPACK -# ifndef __UNIX__ +# if !defined(__UNIX__) || defined(__WXPALMOS__) /* set to 0 on platforms that don't have libmspack */ # define wxUSE_LIBMSPACK 0 # else # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LIBMSPACK must be defined." +# error "wxUSE_LIBMSPACK must be defined, please read comment near the top of this file." # else # define wxUSE_LIBMSPACK 0 # endif @@ -475,7 +731,7 @@ #ifndef wxUSE_ICO_CUR # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_ICO_CUR must be defined." +# error "wxUSE_ICO_CUR must be defined, please read comment near the top of this file." # else # define wxUSE_ICO_CUR 0 # endif @@ -483,7 +739,7 @@ #ifndef wxUSE_IFF # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_IFF must be defined." +# error "wxUSE_IFF must be defined, please read comment near the top of this file." # else # define wxUSE_IFF 0 # endif @@ -491,15 +747,23 @@ #ifndef wxUSE_IMAGLIST # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_IMAGLIST must be defined." +# error "wxUSE_IMAGLIST must be defined, please read comment near the top of this file." # else # define wxUSE_IMAGLIST 0 # endif #endif /* !defined(wxUSE_IMAGLIST) */ +#ifndef wxUSE_INFOBAR +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_INFOBAR must be defined, please read comment near the top of this file." +# else +# define wxUSE_INFOBAR 0 +# endif +#endif /* !defined(wxUSE_INFOBAR) */ + #ifndef wxUSE_JOYSTICK # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_JOYSTICK must be defined." +# error "wxUSE_JOYSTICK must be defined, please read comment near the top of this file." # else # define wxUSE_JOYSTICK 0 # endif @@ -507,7 +771,7 @@ #ifndef wxUSE_LISTBOOK # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LISTBOOK must be defined." +# error "wxUSE_LISTBOOK must be defined, please read comment near the top of this file." # else # define wxUSE_LISTBOOK 0 # endif @@ -515,7 +779,7 @@ #ifndef wxUSE_LISTBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LISTBOX must be defined." +# error "wxUSE_LISTBOX must be defined, please read comment near the top of this file." # else # define wxUSE_LISTBOX 0 # endif @@ -523,7 +787,7 @@ #ifndef wxUSE_LISTCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LISTCTRL must be defined." +# error "wxUSE_LISTCTRL must be defined, please read comment near the top of this file." # else # define wxUSE_LISTCTRL 0 # endif @@ -531,7 +795,7 @@ #ifndef wxUSE_LOGGUI # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LOGGUI must be defined." +# error "wxUSE_LOGGUI must be defined, please read comment near the top of this file." # else # define wxUSE_LOGGUI 0 # endif @@ -539,7 +803,7 @@ #ifndef wxUSE_LOGWINDOW # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LOGWINDOW must be defined." +# error "wxUSE_LOGWINDOW must be defined, please read comment near the top of this file." # else # define wxUSE_LOGWINDOW 0 # endif @@ -547,7 +811,7 @@ #ifndef wxUSE_LOG_DIALOG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LOG_DIALOG must be defined." +# error "wxUSE_LOG_DIALOG must be defined, please read comment near the top of this file." # else # define wxUSE_LOG_DIALOG 0 # endif @@ -555,7 +819,7 @@ #ifndef wxUSE_MDI # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MDI must be defined." +# error "wxUSE_MDI must be defined, please read comment near the top of this file." # else # define wxUSE_MDI 0 # endif @@ -563,7 +827,7 @@ #ifndef wxUSE_MDI_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MDI_ARCHITECTURE must be defined." +# error "wxUSE_MDI_ARCHITECTURE must be defined, please read comment near the top of this file." # else # define wxUSE_MDI_ARCHITECTURE 0 # endif @@ -571,7 +835,7 @@ #ifndef wxUSE_MENUS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MENUS must be defined." +# error "wxUSE_MENUS must be defined, please read comment near the top of this file." # else # define wxUSE_MENUS 0 # endif @@ -579,7 +843,7 @@ #ifndef wxUSE_MSGDLG # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MSGDLG must be defined." +# error "wxUSE_MSGDLG must be defined, please read comment near the top of this file." # else # define wxUSE_MSGDLG 0 # endif @@ -587,15 +851,31 @@ #ifndef wxUSE_NOTEBOOK # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_NOTEBOOK must be defined." +# error "wxUSE_NOTEBOOK must be defined, please read comment near the top of this file." # else # define wxUSE_NOTEBOOK 0 # endif #endif /* !defined(wxUSE_NOTEBOOK) */ +#ifndef wxUSE_NOTIFICATION_MESSAGE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_NOTIFICATION_MESSAGE must be defined, please read comment near the top of this file." +# else +# define wxUSE_NOTIFICATION_MESSAGE 0 +# endif +#endif /* !defined(wxUSE_NOTIFICATION_MESSAGE) */ + +#ifndef wxUSE_ODCOMBOBOX +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ODCOMBOBOX must be defined, please read comment near the top of this file." +# else +# define wxUSE_ODCOMBOBOX 0 +# endif +#endif /* !defined(wxUSE_ODCOMBOBOX) */ + #ifndef wxUSE_PALETTE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PALETTE must be defined." +# error "wxUSE_PALETTE must be defined, please read comment near the top of this file." # else # define wxUSE_PALETTE 0 # endif @@ -603,7 +883,7 @@ #ifndef wxUSE_POPUPWIN # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_POPUPWIN must be defined." +# error "wxUSE_POPUPWIN must be defined, please read comment near the top of this file." # else # define wxUSE_POPUPWIN 0 # endif @@ -611,7 +891,7 @@ #ifndef wxUSE_PRINTING_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PRINTING_ARCHITECTURE must be defined." +# error "wxUSE_PRINTING_ARCHITECTURE must be defined, please read comment near the top of this file." # else # define wxUSE_PRINTING_ARCHITECTURE 0 # endif @@ -619,7 +899,7 @@ #ifndef wxUSE_RADIOBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_RADIOBOX must be defined." +# error "wxUSE_RADIOBOX must be defined, please read comment near the top of this file." # else # define wxUSE_RADIOBOX 0 # endif @@ -627,15 +907,39 @@ #ifndef wxUSE_RADIOBTN # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_RADIOBTN must be defined." +# error "wxUSE_RADIOBTN must be defined, please read comment near the top of this file." # else # define wxUSE_RADIOBTN 0 # endif #endif /* !defined(wxUSE_RADIOBTN) */ +#ifndef wxUSE_REARRANGECTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_REARRANGECTRL must be defined, please read comment near the top of this file." +# else +# define wxUSE_REARRANGECTRL 0 +# endif +#endif /* !defined(wxUSE_REARRANGECTRL) */ + +#ifndef wxUSE_RIBBON +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_RIBBON must be defined, please read comment near the top of this file." +# else +# define wxUSE_RIBBON 0 +# endif +#endif /* !defined(wxUSE_RIBBON) */ + +#ifndef wxUSE_RICHMSGDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_RICHMSGDLG must be defined, please read comment near the top of this file." +# else +# define wxUSE_RICHMSGDLG 0 +# endif +#endif /* !defined(wxUSE_RIBBON) */ + #ifndef wxUSE_SASH # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SASH must be defined." +# error "wxUSE_SASH must be defined, please read comment near the top of this file." # else # define wxUSE_SASH 0 # endif @@ -643,7 +947,7 @@ #ifndef wxUSE_SCROLLBAR # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SCROLLBAR must be defined." +# error "wxUSE_SCROLLBAR must be defined, please read comment near the top of this file." # else # define wxUSE_SCROLLBAR 0 # endif @@ -651,7 +955,7 @@ #ifndef wxUSE_SLIDER # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SLIDER must be defined." +# error "wxUSE_SLIDER must be defined, please read comment near the top of this file." # else # define wxUSE_SLIDER 0 # endif @@ -659,7 +963,7 @@ #ifndef wxUSE_SOUND # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SOUND must be defined." +# error "wxUSE_SOUND must be defined, please read comment near the top of this file." # else # define wxUSE_SOUND 0 # endif @@ -667,7 +971,7 @@ #ifndef wxUSE_SPINBTN # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SPINBTN must be defined." +# error "wxUSE_SPINBTN must be defined, please read comment near the top of this file." # else # define wxUSE_SPINBTN 0 # endif @@ -675,7 +979,7 @@ #ifndef wxUSE_SPINCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SPINCTRL must be defined." +# error "wxUSE_SPINCTRL must be defined, please read comment near the top of this file." # else # define wxUSE_SPINCTRL 0 # endif @@ -683,7 +987,7 @@ #ifndef wxUSE_SPLASH # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SPLASH must be defined." +# error "wxUSE_SPLASH must be defined, please read comment near the top of this file." # else # define wxUSE_SPLASH 0 # endif @@ -691,7 +995,7 @@ #ifndef wxUSE_SPLITTER # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_SPLITTER must be defined." +# error "wxUSE_SPLITTER must be defined, please read comment near the top of this file." # else # define wxUSE_SPLITTER 0 # endif @@ -699,7 +1003,7 @@ #ifndef wxUSE_STATBMP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STATBMP must be defined." +# error "wxUSE_STATBMP must be defined, please read comment near the top of this file." # else # define wxUSE_STATBMP 0 # endif @@ -707,7 +1011,7 @@ #ifndef wxUSE_STATBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STATBOX must be defined." +# error "wxUSE_STATBOX must be defined, please read comment near the top of this file." # else # define wxUSE_STATBOX 0 # endif @@ -715,7 +1019,7 @@ #ifndef wxUSE_STATLINE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STATLINE must be defined." +# error "wxUSE_STATLINE must be defined, please read comment near the top of this file." # else # define wxUSE_STATLINE 0 # endif @@ -723,7 +1027,7 @@ #ifndef wxUSE_STATTEXT # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STATTEXT must be defined." +# error "wxUSE_STATTEXT must be defined, please read comment near the top of this file." # else # define wxUSE_STATTEXT 0 # endif @@ -731,23 +1035,23 @@ #ifndef wxUSE_STATUSBAR # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_STATUSBAR must be defined." +# error "wxUSE_STATUSBAR must be defined, please read comment near the top of this file." # else # define wxUSE_STATUSBAR 0 # endif #endif /* !defined(wxUSE_STATUSBAR) */ -#ifndef wxUSE_TAB_DIALOG +#ifndef wxUSE_TASKBARICON # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TAB_DIALOG must be defined." +# error "wxUSE_TASKBARICON must be defined, please read comment near the top of this file." # else -# define wxUSE_TAB_DIALOG 0 +# define wxUSE_TASKBARICON 0 # endif -#endif /* !defined(wxUSE_TAB_DIALOG) */ +#endif /* !defined(wxUSE_TASKBARICON) */ #ifndef wxUSE_TEXTCTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TEXTCTRL must be defined." +# error "wxUSE_TEXTCTRL must be defined, please read comment near the top of this file." # else # define wxUSE_TEXTCTRL 0 # endif @@ -755,7 +1059,7 @@ #ifndef wxUSE_TIPWINDOW # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TIPWINDOW must be defined." +# error "wxUSE_TIPWINDOW must be defined, please read comment near the top of this file." # else # define wxUSE_TIPWINDOW 0 # endif @@ -763,7 +1067,7 @@ #ifndef wxUSE_TOOLBAR # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TOOLBAR must be defined." +# error "wxUSE_TOOLBAR must be defined, please read comment near the top of this file." # else # define wxUSE_TOOLBAR 0 # endif @@ -771,7 +1075,7 @@ #ifndef wxUSE_TOOLTIPS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TOOLTIPS must be defined." +# error "wxUSE_TOOLTIPS must be defined, please read comment near the top of this file." # else # define wxUSE_TOOLTIPS 0 # endif @@ -779,15 +1083,23 @@ #ifndef wxUSE_TREECTRL # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TREECTRL must be defined." +# error "wxUSE_TREECTRL must be defined, please read comment near the top of this file." # else # define wxUSE_TREECTRL 0 # endif #endif /* !defined(wxUSE_TREECTRL) */ +#ifndef wxUSE_UIACTIONSIMULATOR +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_UIACTIONSIMULATOR must be defined, please read comment near the top of this file." +# else +# define wxUSE_UIACTIONSIMULATOR 0 +# endif +#endif /* !defined(wxUSE_UIACTIONSIMULATOR) */ + #ifndef wxUSE_VALIDATORS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_VALIDATORS must be defined." +# error "wxUSE_VALIDATORS must be defined, please read comment near the top of this file." # else # define wxUSE_VALIDATORS 0 # endif @@ -795,18 +1107,91 @@ #ifndef wxUSE_WXHTML_HELP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_WXHTML_HELP must be defined." +# error "wxUSE_WXHTML_HELP must be defined, please read comment near the top of this file." # else # define wxUSE_WXHTML_HELP 0 # endif #endif /* !defined(wxUSE_WXHTML_HELP) */ +#ifndef wxUSE_XRC +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_XRC must be defined, please read comment near the top of this file." +# else +# define wxUSE_XRC 0 +# endif +#endif /* !defined(wxUSE_XRC) */ + #endif /* wxUSE_GUI */ /* - check consistency of the settings + Section 2: platform-specific checks. + + This must be done after checking that everything is defined as the platform + checks use wxUSE_XXX symbols in #if tests. + */ + +#if defined(__WXPALMOS__) +# include "wx/palmos/chkconf.h" +#elif defined(__WXWINCE__) +# include "wx/msw/wince/chkconf.h" +#elif defined(__WXMSW__) +# include "wx/msw/chkconf.h" +#elif defined(__WXGTK__) +# include "wx/gtk/chkconf.h" +#elif defined(__WXCOCOA__) +# include "wx/cocoa/chkconf.h" +#elif defined(__WXMAC__) +# include "wx/osx/chkconf.h" +#elif defined(__OS2__) +# include "wx/os2/chkconf.h" +#elif defined(__WXMGL__) +# include "wx/mgl/chkconf.h" +#elif defined(__WXDFB__) +# include "wx/dfb/chkconf.h" +#elif defined(__WXMOTIF__) +# include "wx/motif/chkconf.h" +#elif defined(__WXX11__) +# include "wx/x11/chkconf.h" +#endif + +/* + __UNIX__ is also defined under Cygwin but we shouldn't perform these checks + there if we're building wxMSW. + */ +#if defined(__UNIX__) && !defined(__WXMSW__) +# include "wx/unix/chkconf.h" +#endif + +#ifdef __WXUNIVERSAL__ +# include "wx/univ/chkconf.h" +#endif + +/* + Section 3a: check consistency of the non-GUI settings. */ +#if WXWIN_COMPATIBILITY_2_6 +# if !WXWIN_COMPATIBILITY_2_8 +# ifdef wxABORT_ON_CONFIG_ERROR +# error "2.6.X compatibility requires 2.8.X compatibility" +# else +# undef WXWIN_COMPATIBILITY_2_8 +# define WXWIN_COMPATIBILITY_2_8 1 +# endif +# endif +#endif /* WXWIN_COMPATIBILITY_2_6 */ + +#if wxUSE_ARCHIVE_STREAMS +# if !wxUSE_DATETIME +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxArchive requires wxUSE_DATETIME" +# else +# undef wxUSE_ARCHIVE_STREAMS +# define wxUSE_ARCHIVE_STREAMS 0 +# endif +# endif +#endif /* wxUSE_ARCHIVE_STREAMS */ + #if wxUSE_PROTOCOL_FILE || wxUSE_PROTOCOL_FTP || wxUSE_PROTOCOL_HTTP # if !wxUSE_PROTOCOL # ifdef wxABORT_ON_CONFIG_ERROR @@ -863,6 +1248,25 @@ # endif #endif /* wxUSE_HTML */ +#if wxUSE_FS_ARCHIVE +# if !wxUSE_FILESYSTEM +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxArchiveFSHandler requires wxFileSystem" +# else +# undef wxUSE_FILESYSTEM +# define wxUSE_FILESYSTEM 1 +# endif +# endif +# if !wxUSE_ARCHIVE_STREAMS +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxArchiveFSHandler requires wxArchive" +# else +# undef wxUSE_ARCHIVE_STREAMS +# define wxUSE_ARCHIVE_STREAMS 1 +# endif +# endif +#endif /* wxUSE_FS_ARCHIVE */ + #if wxUSE_FILESYSTEM # if !wxUSE_STREAMS # ifdef wxABORT_ON_CONFIG_ERROR @@ -872,6 +1276,16 @@ # define wxUSE_STREAMS 1 # endif # endif +# if !wxUSE_FILE && !wxUSE_FFILE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FILESYSTEM requires either wxUSE_FILE or wxUSE_FFILE" +# else +# undef wxUSE_FILE +# define wxUSE_FILE 1 +# undef wxUSE_FFILE +# define wxUSE_FFILE 1 +# endif +# endif #endif /* wxUSE_FILESYSTEM */ #if wxUSE_FS_INET @@ -923,36 +1337,6 @@ # endif #endif /* wxUSE_TEXTFILE */ -#if wxUSE_UNICODE_MSLU && !wxUSE_UNICODE -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UNICODE_MSLU requires wxUSE_UNICODE" -# else -# undef wxUSE_UNICODE -# define wxUSE_UNICODE 1 -# endif -#endif /* wxUSE_UNICODE_MSLU */ - -/* ODBC and Unicode are now compatible */ - -#if 0 /* wxUSE_ODBC && wxUSE_UNICODE */ -# ifdef wxABORT_ON_CONFIG_ERROR - /* (ODBC classes aren't Unicode-compatible yet) */ -# error "wxUSE_ODBC can't be used with wxUSE_UNICODE" -# else -# undef wxUSE_ODBC -# define wxUSE_ODBC 0 -# endif -#endif /* wxUSE_ODBC */ - -#if wxUSE_XML && !wxUSE_WCHAR_T -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_XML requires wxUSE_WCHAR_T" -# else -# undef wxUSE_XML -# define wxUSE_XML 0 -# endif -#endif /* wxUSE_UNICODE_MSLU */ - #if !wxUSE_DYNLIB_CLASS # if wxUSE_DYNAMIC_LOADER # ifdef wxABORT_ON_CONFIG_ERROR @@ -982,9 +1366,31 @@ # endif #endif /* wxUSE_ZIPSTREAM */ -/* the rest of the tests is for the GUI settings only */ +#if wxUSE_TARSTREAM +# if !wxUSE_ARCHIVE_STREAMS +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxTar requires wxArchive" +# else +# undef wxUSE_ARCHIVE_STREAMS +# define wxUSE_ARCHIVE_STREAMS 1 +# endif +# endif +#endif /* wxUSE_TARSTREAM */ + +/* + Section 3b: the tests for the GUI settings only. + */ #if wxUSE_GUI +#if wxUSE_ACCESSIBILITY && !defined(__WXMSW__) && !defined(__GCCXML__) +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ACCESSIBILITY is currently only supported under wxMSW" +# else +# undef wxUSE_ACCESSIBILITY +# define wxUSE_ACCESSIBILITY 0 +# endif +#endif /* wxUSE_ACCESSIBILITY */ + #if wxUSE_BUTTON || \ wxUSE_CALENDARCTRL || \ wxUSE_CARET || \ @@ -995,11 +1401,13 @@ wxUSE_CHOICE || \ wxUSE_GAUGE || \ wxUSE_GRID || \ + wxUSE_HEADERCTRL || \ wxUSE_LISTBOX || \ wxUSE_LISTCTRL || \ wxUSE_NOTEBOOK || \ wxUSE_RADIOBOX || \ wxUSE_RADIOBTN || \ + wxUSE_REARRANGECTRL || \ wxUSE_SCROLLBAR || \ wxUSE_SLIDER || \ wxUSE_SPINBTN || \ @@ -1033,19 +1441,45 @@ # endif #endif /* wxUSE_BMPBUTTON */ -#if wxUSE_NOTEBOOK || wxUSE_LISTBOOK || wxUSE_CHOICEBOOK -# if defined(wxUSE_BOOKCTRL) && !wxUSE_BOOKCTRL +#if wxUSE_COMMANDLINKBUTTON +# if !wxUSE_BUTTON +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_COMMANDLINKBUTTON requires wxUSE_BUTTON" +# else +# undef wxUSE_BUTTON +# define wxUSE_BUTTON 1 +# endif +# endif +#endif /* wxUSE_COMMANDLINKBUTTON */ + +/* + wxUSE_BOOKCTRL should be only used if any of the controls deriving from it + are used + */ +#ifdef wxUSE_BOOKCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_BOOKCTRL is defined automatically, don't define it" +# else +# undef wxUSE_BOOKCTRL +# endif +#endif + +#define wxUSE_BOOKCTRL (wxUSE_NOTEBOOK || \ + wxUSE_LISTBOOK || \ + wxUSE_CHOICEBOOK || \ + wxUSE_TOOLBOOK || \ + wxUSE_TREEBOOK) + +#if wxUSE_COLLPANE +# if !wxUSE_BUTTON || !wxUSE_STATLINE # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_BOOKCTRL must be set." +# error "wxUSE_COLLPANE requires wxUSE_BUTTON and wxUSE_STATLINE" # else -# undef wxUSE_BOOKCTRL +# undef wxUSE_COLLPANE +# define wxUSE_COLLPANE 0 # endif # endif - -# ifndef wxUSE_BOOKCTRL -# define wxUSE_BOOKCTRL 1 -# endif -#endif /* wxUSE_NOTEBOOK */ +#endif /* wxUSE_COLLPANE */ #if wxUSE_LISTBOOK # if !wxUSE_LISTCTRL @@ -1069,186 +1503,81 @@ # endif #endif /* wxUSE_CHOICEBOOK */ -/* don't attempt to use native status bar on the platforms not having it */ -#ifndef wxUSE_NATIVE_STATUSBAR -# define wxUSE_NATIVE_STATUSBAR 0 -#elif wxUSE_NATIVE_STATUSBAR -# if defined(__WXUNIVERSAL__) || !( defined(__WXMSW__) || \ - defined(__WXMAC__) || \ - defined(__WXPALMOS__) ) -# undef wxUSE_NATIVE_STATUSBAR -# define wxUSE_NATIVE_STATUSBAR 0 -# endif -#endif - -/* wxUniv-specific dependencies */ -#if defined(__WXUNIVERSAL__) -# if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN +#if wxUSE_TOOLBOOK +# if !wxUSE_TOOLBAR # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_POPUPWIN must be defined to use comboboxes/menus" +# error "wxToolbook requires wxToolBar" # else -# undef wxUSE_POPUPWIN -# define wxUSE_POPUPWIN 1 -# endif -# endif - -# if wxUSE_COMBOBOX -# if !wxUSE_LISTBOX -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxComboBox requires wxListBox in wxUniversal" -# else -# undef wxUSE_LISTBOX -# define wxUSE_LISTBOX 1 -# endif -# endif -# endif /* wxUSE_COMBOBOX */ - -# if wxUSE_RADIOBTN -# if !wxUSE_CHECKBOX -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_RADIOBTN requires wxUSE_CHECKBOX in wxUniversal" -# else -# undef wxUSE_CHECKBOX -# define wxUSE_CHECKBOX 1 -# endif -# endif -# endif /* wxUSE_RADIOBTN */ - -# if wxUSE_TEXTCTRL -# if !wxUSE_CARET -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxTextCtrl requires wxCaret in wxUniversal" -# else -# undef wxUSE_CARET -# define wxUSE_CARET 1 -# endif -# endif /* wxUSE_CARET */ - -# if !wxUSE_SCROLLBAR -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxTextCtrl requires wxScrollBar in wxUniversal" -# else -# undef wxUSE_SCROLLBAR -# define wxUSE_SCROLLBAR 1 -# endif -# endif /* wxUSE_SCROLLBAR */ -# endif /* wxUSE_TEXTCTRL */ -#endif /* __WXUNIVERSAL__ */ - -/* wxGTK-specific dependencies */ -#ifdef __WXGTK__ -# ifndef __WXUNIVERSAL__ -# if wxUSE_MDI_ARCHITECTURE && !wxUSE_MENUS -# ifdef wxABORT_ON_CONFIG_ERROR -# error "MDI requires wxUSE_MENUS in wxGTK" -# else -# undef wxUSE_MENUS -# define wxUSE_MENUS 1 -# endif -# endif -# endif /* !__WXUNIVERSAL__ */ - -# if wxUSE_JOYSTICK -# if !wxUSE_THREADS -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxJoystick requires threads in wxGTK" -# else -# undef wxUSE_JOYSTICK -# define wxUSE_JOYSTICK 0 -# endif +# undef wxUSE_TOOLBAR +# define wxUSE_TOOLBAR 1 # endif # endif -#endif /* wxGTK && !wxUniv */ +#endif /* wxUSE_TOOLBOOK */ -/* wxMSW-specific dependencies */ -#ifdef __WXMSW__ -# ifndef wxUSE_UNICODE_MSLU -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UNICODE_MSLU must be defined." -# else -# define wxUSE_UNICODE_MSLU 0 -# endif -# endif /* wxUSE_UNICODE_MSLU */ -# ifndef wxUSE_UXTHEME -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UXTHEME must be defined." -# else -# define wxUSE_UXTHEME 0 -# endif -# endif /* wxUSE_UXTHEME */ -# ifndef wxUSE_UXTHEME_AUTO +#if !wxUSE_ODCOMBOBOX +# if wxUSE_BITMAPCOMBOBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UXTHEME_AUTO must be defined." +# error "wxBitmapComboBox requires wxOwnerDrawnComboBox" # else -# define wxUSE_UXTHEME_AUTO 0 +# undef wxUSE_BITMAPCOMBOBOX +# define wxUSE_BITMAPCOMBOBOX 0 # endif -# endif /* wxUSE_UXTHEME_AUTO */ -# ifndef wxUSE_MS_HTML_HELP +# endif +#endif /* !wxUSE_ODCOMBOBOX */ + +#if !wxUSE_HEADERCTRL +# if wxUSE_DATAVIEWCTRL || wxUSE_GRID # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MS_HTML_HELP must be defined." +# error "wxDataViewCtrl and wxGrid require wxHeaderCtrl" # else -# define wxUSE_MS_HTML_HELP 0 +# undef wxUSE_HEADERCTRL +# define wxUSE_HEADERCTRL 1 # endif -# endif /* !defined(wxUSE_MS_HTML_HELP) */ -# ifndef wxUSE_DIALUP_MANAGER +# endif +#endif /* !wxUSE_HEADERCTRL */ + +#if wxUSE_REARRANGECTRL +# if !wxUSE_CHECKLISTBOX # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DIALUP_MANAGER must be defined." +# error "wxRearrangeCtrl requires wxCheckListBox" # else -# define wxUSE_DIALUP_MANAGER 0 -# endif -# endif /* !defined(wxUSE_DIALUP_MANAGER) */ - -# if !wxUSE_DYNAMIC_LOADER -# if wxUSE_MS_HTML_HELP -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_MS_HTML_HELP requires wxUSE_DYNAMIC_LOADER." -# else -# define wxUSE_DYNAMIC_LOADER 1 -# endif +# undef wxUSE_REARRANGECTRL +# define wxUSE_REARRANGECTRL 0 # endif -# if wxUSE_DIALUP_MANAGER -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_DIALUP_MANAGER requires wxUSE_DYNAMIC_LOADER." -# else -# define wxUSE_DYNAMIC_LOADER 1 -# endif -# endif -# endif /* wxUSE_DYNAMIC_LOADER */ +# endif +#endif /* wxUSE_REARRANGECTRL */ -#endif /* wxMSW */ +#if wxUSE_RICHMSGDLG +# if !wxUSE_MSGDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_RICHMSGDLG requires wxUSE_MSGDLG" +# else +# undef wxUSE_MSGDLG +# define wxUSE_MSGDLG 1 +# endif +# endif +#endif /* wxUSE_RICHMSGDLG */ -/* wxMAC-specific dependencies */ -#ifdef __WXMAC__ -# if wxUSE_UNICODE -# if !TARGET_CARBON -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_UNICODE is only supported for Carbon Targets." -# else -# define wxUSE_UNICODE 0 -# endif -# endif +/* don't attempt to use native status bar on the platforms not having it */ +#ifndef wxUSE_NATIVE_STATUSBAR +# define wxUSE_NATIVE_STATUSBAR 0 +#elif wxUSE_NATIVE_STATUSBAR +# if defined(__WXUNIVERSAL__) || !( defined(__WXMSW__) || \ + defined(__WXMAC__) || \ + defined(__WXPALMOS__) ) +# undef wxUSE_NATIVE_STATUSBAR +# define wxUSE_NATIVE_STATUSBAR 0 # endif -#endif /* wxMAC */ -/* wxMotif-specific dependencies */ -#if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG -# undef wxUSE_TAB_DIALOG -# define wxUSE_TAB_DIALOG 1 #endif -/* wxMGL-specific dependencies */ -#ifdef __WXMGL__ -# if !wxUSE_PALETTE -# error "wxMGL requires wxUSE_PALETTE=1" -# endif -#endif /* wxMGL */ - -/* Hopefully we can emulate these dialogs in due course */ -#if defined(__SMARTPHONE__) && defined(__WXWINCE__) -# ifdef wxUSE_COLOURDLG -# undef wxUSE_COLOURDLG -# define wxUSE_COLOURDLG 0 +#if wxUSE_GRAPHICS_CONTEXT && !wxUSE_GEOMETRY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_GRAPHICS_CONTEXT requires wxUSE_GEOMETRY" +# else +# undef wxUSE_GRAPHICS_CONTEXT +# define wxUSE_GRAPHICS_CONTEXT 0 # endif -#endif /* __SMARTPHONE__ && __WXWINCE__ */ +#endif /* wxUSE_GRAPHICS_CONTEXT */ /* generic controls dependencies */ @@ -1278,6 +1607,17 @@ # endif #endif /* !wxMSW || wxUniv */ +/* generic file dialog depends on (generic) file control */ +#if wxUSE_FILEDLG && !wxUSE_FILECTRL && \ + (defined(__WXUNIVERSAL__) || defined(__WXGTK__)) +# ifdef wxABORT_ON_CONFIG_ERROR +# error "Generic wxFileDialog requires wxFileCtrl" +# else +# undef wxUSE_FILECTRL +# define wxUSE_FILECTRL 1 +# endif +#endif /* wxUSE_FILEDLG */ + /* common dependencies */ #if wxUSE_CALENDARCTRL # if !(wxUSE_SPINBTN && wxUSE_COMBOBOX) @@ -1354,6 +1694,18 @@ # endif #endif /* wxUSE_HELP */ +#if wxUSE_MS_HTML_HELP + /* + this doesn't make sense for platforms other than MSW but we still + define it in wx/setup_inc.h so don't complain if it happens to be + defined under another platform but just silently fix it. + */ +# ifndef __WXMSW__ +# undef wxUSE_MS_HTML_HELP +# define wxUSE_MS_HTML_HELP 0 +# endif +#endif /* wxUSE_MS_HTML_HELP */ + #if wxUSE_WXHTML_HELP # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK || !wxUSE_SPINCTRL # ifdef wxABORT_ON_CONFIG_ERROR @@ -1498,6 +1850,15 @@ # define wxUSE_STREAMS 1 # endif # endif + +# if !wxUSE_FILE_HISTORY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "DocView requires wxUSE_FILE_HISTORY" +# else +# undef wxUSE_FILE_HISTORY +# define wxUSE_FILE_HISTORY 1 +# endif +# endif #endif /* wxUSE_DOC_VIEW_ARCHITECTURE */ #if wxUSE_PRINTING_ARCHITECTURE @@ -1523,7 +1884,7 @@ # if !wxUSE_DOC_VIEW_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR -# error "MDI requires wxUSE_DOC_VIEW_ARCHITECTURE" +# error "wxUSE_MDI_ARCHITECTURE requires wxUSE_DOC_VIEW_ARCHITECTURE" # else # undef wxUSE_DOC_VIEW_ARCHITECTURE # define wxUSE_DOC_VIEW_ARCHITECTURE 1 @@ -1534,7 +1895,7 @@ #if !wxUSE_FILEDLG # if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxFileDialog must be compiled as well" +# error "wxUSE_FILEDLG is required by wxUSE_DOC_VIEW_ARCHITECTURE and wxUSE_WXHTML_HELP!" # else # undef wxUSE_FILEDLG # define wxUSE_FILEDLG 1 @@ -1582,15 +1943,6 @@ # define wxUSE_TOOLBAR_NATIVE 0 # endif # endif - -# if wxUSE_TOOLBAR_SIMPLE -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_SIMPLE is set to 1" -# else -# undef wxUSE_TOOLBAR_SIMPLE -# define wxUSE_TOOLBAR_SIMPLE 0 -# endif -# endif #endif #if !wxUSE_IMAGLIST @@ -1604,16 +1956,6 @@ # endif #endif /* !wxUSE_IMAGLIST */ -#if !wxUSE_MSGDLG -# ifdef wxABORT_ON_CONFIG_ERROR - /* FIXME: should compile without it, of course, but doesn't */ -# error "wxMessageBox is always needed" -# else -# undef wxUSE_MSGDLG -# define wxUSE_MSGDLG 1 -# endif -#endif - #if wxUSE_RADIOBOX # if !wxUSE_RADIOBTN # ifdef wxABORT_ON_CONFIG_ERROR @@ -1666,15 +2008,6 @@ # endif #endif /* wxUSE_CLIPBOARD */ -#if wxUSE_WX_RESOURCES && !wxUSE_PROLOGIO -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxr resources require PrologIO" -# else -# undef wxUSE_PROLOGIO -# define wxUSE_PROLOGIO 1 -# endif -#endif /* wxUSE_WX_RESOURCES */ - #if wxUSE_XRC && !wxUSE_XML # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_XRC requires wxUSE_XML" @@ -1693,5 +2026,44 @@ # endif #endif /* wxUSE_SOCKETS */ +#if wxUSE_SVG && !wxUSE_STREAMS +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_SVG requires wxUSE_STREAMS" +# else +# undef wxUSE_SVG +# define wxUSE_SVG 0 +# endif +#endif /* wxUSE_SVG */ + +#if wxUSE_SVG && !wxUSE_IMAGE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_SVG requires wxUSE_IMAGE" +# else +# undef wxUSE_SVG +# define wxUSE_SVG 0 +# endif +#endif /* wxUSE_SVG */ + +#if wxUSE_SVG && !wxUSE_LIBPNG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_SVG requires wxUSE_LIBPNG" +# else +# undef wxUSE_SVG +# define wxUSE_SVG 0 +# endif +#endif /* wxUSE_SVG */ + +#if !wxUSE_VARIANT +# if wxUSE_DATAVIEWCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxDataViewCtrl requires wxVariant" +# else +# undef wxUSE_DATAVIEWCTRL +# define wxUSE_DATAVIEWCTRL 0 +# endif +# endif +#endif /* wxUSE_VARIANT */ + #endif /* wxUSE_GUI */ +#endif /* _WX_CHKCONF_H_ */