X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e2b87f38d9092b56591728558f2cc13cac6a58af..7a5e53abb3f9ea13eba2880972306446e4e21e83:/include/wx/chkconf.h?ds=sidebyside diff --git a/include/wx/chkconf.h b/include/wx/chkconf.h index 433ff10f7a..438a6a373e 100644 --- a/include/wx/chkconf.h +++ b/include/wx/chkconf.h @@ -1,15 +1,25 @@ +/** +* 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 */ + /* - * 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 license + Compiler-specific checking. */ -/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ +#if defined(__WXMSW__) +# include "wx/msw/chkconf.h" +#elif defined(__WXMAC__) +# include "wx/mac/chkconf.h" +#endif /* this global setting determines what should we do if the setting FOO @@ -28,16 +38,6 @@ # define wxUSE_GUI 1 #endif /* !defined(wxUSE_GUI) */ -/* wxBase doesn't need compatibility settings as it's a new port */ -#if !wxUSE_GUI -# undef WXWIN_COMPATIBILITY -# undef WXWIN_COMPATIBILITY_2 -# undef WXWIN_COMPATIBILITY_2_2 -# define WXWIN_COMPATIBILITY 0 -# define WXWIN_COMPATIBILITY_2 0 -# define WXWIN_COMPATIBILITY_2_2 0 -#endif /* !wxUSE_GUI */ - /* tests for non GUI features */ @@ -50,6 +50,14 @@ # endif #endif /* !defined(wxUSE_DYNLIB_CLASS) */ +#ifndef wxUSE_EXCEPTIONS +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_EXCEPTIONS must be defined." +# else +# define wxUSE_EXCEPTIONS 0 +# endif +#endif /* !defined(wxUSE_EXCEPTIONS) */ + #ifndef wxUSE_FILESYSTEM # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_FILESYSTEM must be defined." @@ -95,14 +103,6 @@ # endif #endif /* !defined(wxUSE_MIMETYPE) */ -#ifndef wxUSE_PROLOGIO -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_PROLOGIO must be defined." -# else -# define wxUSE_PROLOGIO 0 -# endif -#endif /* !defined(wxUSE_PROLOGIO) */ - #ifndef wxUSE_PROTOCOL # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_PROTOCOL must be defined." @@ -153,6 +153,14 @@ # endif #endif /* !defined(wxUSE_REGEX) */ +#ifndef wxUSE_XML +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_XML must be defined." +# else +# define wxUSE_XML 0 +# endif +#endif /* !defined(wxUSE_XML) */ + #ifndef wxUSE_SOCKETS # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_SOCKETS must be defined." @@ -323,6 +331,14 @@ # endif #endif /* !defined(wxUSE_DATAOBJ) */ +#ifndef wxUSE_DISPLAY +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_DISPLAY must be defined." +# else +# define wxUSE_DISPLAY 0 +# endif +#endif /* !defined(wxUSE_DISPLAY) */ + #ifndef wxUSE_DOC_VIEW_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined." @@ -387,6 +403,19 @@ # endif #endif /* !defined(wxUSE_HTML) */ +#ifndef wxUSE_LIBMSPACK +# ifndef __UNIX__ + /* 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." +# else +# define wxUSE_LIBMSPACK 0 +# endif +# endif +#endif /* !defined(wxUSE_LIBMSPACK) */ + #ifndef wxUSE_ICO_CUR # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_ICO_CUR must be defined." @@ -419,6 +448,14 @@ # endif #endif /* !defined(wxUSE_JOYSTICK) */ +#ifndef wxUSE_LISTBOOK +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_LISTBOOK must be defined." +# else +# define wxUSE_LISTBOOK 0 +# endif +#endif /* !defined(wxUSE_LISTBOOK) */ + #ifndef wxUSE_LISTBOX # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_LISTBOX must be defined." @@ -459,6 +496,14 @@ # endif #endif /* !defined(wxUSE_LOG_DIALOG) */ +#ifndef wxUSE_MDI +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_MDI must be defined." +# else +# define wxUSE_MDI 0 +# endif +#endif /* !defined(wxUSE_MDI) */ + #ifndef wxUSE_MDI_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_MDI_ARCHITECTURE must be defined." @@ -483,14 +528,6 @@ # endif #endif /* !defined(wxUSE_MSGDLG) */ -#ifndef wxUSE_NEW_GRID -# ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_NEW_GRID must be defined." -# else -# define wxUSE_NEW_GRID 0 -# endif -#endif /* !defined(wxUSE_NEW_GRID) */ - #ifndef wxUSE_NOTEBOOK # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_NOTEBOOK must be defined." @@ -563,6 +600,14 @@ # endif #endif /* !defined(wxUSE_SLIDER) */ +#ifndef wxUSE_SOUND +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_SOUND must be defined." +# else +# define wxUSE_SOUND 0 +# endif +#endif /* !defined(wxUSE_SOUND) */ + #ifndef wxUSE_SPINBTN # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_SPINBTN must be defined." @@ -683,13 +728,13 @@ # endif #endif /* !defined(wxUSE_TREECTRL) */ -#ifndef wxUSE_WX_RESOURCES +#ifndef wxUSE_VALIDATORS # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_WX_RESOURCES must be defined." +# error "wxUSE_VALIDATORS must be defined." # else -# define wxUSE_WX_RESOURCES 0 +# define wxUSE_VALIDATORS 0 # endif -#endif /* !defined(wxUSE_WX_RESOURCES) */ +#endif /* !defined(wxUSE_VALIDATORS) */ #ifndef wxUSE_WXHTML_HELP # ifdef wxABORT_ON_CONFIG_ERROR @@ -772,6 +817,17 @@ # endif #endif /* wxUSE_FILESYSTEM */ +#if wxUSE_FS_INET +# if !wxUSE_PROTOCOL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_FS_INET requires wxUSE_PROTOCOL" +# else +# undef wxUSE_PROTOCOL +# define wxUSE_PROTOCOL 1 +# endif +# endif +#endif /* wxUSE_FS_INET */ + #if wxUSE_STOPWATCH || wxUSE_DATETIME # if !wxUSE_LONGLONG # ifdef wxABORT_ON_CONFIG_ERROR @@ -819,7 +875,9 @@ # endif #endif /* wxUSE_UNICODE_MSLU */ -#if wxUSE_ODBC && wxUSE_UNICODE +/* 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" @@ -829,6 +887,25 @@ # 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 +# error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS." +# else +# define wxUSE_DYNLIB_CLASS 1 +# endif +# endif +#endif /* wxUSE_DYNLIB_CLASS */ + /* the rest of the tests is for the GUI settings only */ #if wxUSE_GUI @@ -842,7 +919,6 @@ wxUSE_CHOICE || \ wxUSE_GAUGE || \ wxUSE_GRID || \ - wxUSE_NEW_GRID || \ wxUSE_LISTBOX || \ wxUSE_LISTCTRL || \ wxUSE_NOTEBOOK || \ @@ -870,6 +946,42 @@ # endif #endif /* controls */ +#if wxUSE_BMPBUTTON +# if !wxUSE_BUTTON +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_BMPBUTTON requires wxUSE_BUTTON" +# else +# undef wxUSE_BUTTON +# define wxUSE_BUTTON 1 +# endif +# endif +#endif /* wxUSE_BMPBUTTON */ + +#if wxUSE_NOTEBOOK || wxUSE_LISTBOOK +# if defined(wxUSE_BOOKCTRL) && !wxUSE_BOOKCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_BOOKCTRL must be set." +# else +# undef wxUSE_BOOKCTRL +# endif +# endif + +# ifndef wxUSE_BOOKCTRL +# define wxUSE_BOOKCTRL 1 +# endif +#endif /* wxUSE_NOTEBOOK */ + +#if wxUSE_LISTBOOK +# if !wxUSE_LISTCTRL +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxListbook requires wxListCtrl" +# else +# undef wxUSE_LISTCTRL +# define wxUSE_LISTCTRL 1 +# endif +# endif +#endif /* wxUSE_LISTBOOK */ + /* wxUniv-specific dependencies */ #if defined(__WXUNIVERSAL__) # if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN @@ -958,6 +1070,20 @@ # 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 +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_UXTHEME_AUTO must be defined." +# else +# define wxUSE_UXTHEME_AUTO 0 +# endif +# endif /* wxUSE_UXTHEME_AUTO */ # ifndef wxUSE_MS_HTML_HELP # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_MS_HTML_HELP must be defined." @@ -991,15 +1117,23 @@ # endif /* wxUSE_DYNAMIC_LOADER */ #endif /* wxMSW */ +/* 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 +# endif +#endif /* wxMAC */ /* wxMotif-specific dependencies */ #if defined(__WXMOTIF__) && wxUSE_NOTEBOOK && !wxUSE_TAB_DIALOG # undef wxUSE_TAB_DIALOG # define wxUSE_TAB_DIALOG 1 #endif -#if defined(__WXMOTIF__) && wxUSE_TOGGLEBTN -# undef wxUSE_TOGGLEBTN -# define wxUSE_TOGGLEBTN 0 -#endif /* wxMGL-specific dependencies */ #ifdef __WXMGL__ @@ -1008,6 +1142,15 @@ # endif #endif /* wxMGL */ +/* Hopefully we can emulate these dialogs in due course */ +#ifdef __SMARTPHONE__ +# ifdef wxUSE_COLOURDLG +# undef wxUSE_COLOURDLG +# define wxUSE_COLOURDLG 0 +# endif +#endif /* __SMARTPHONE__ */ + + /* generic controls dependencies */ #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) # if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG @@ -1069,6 +1212,26 @@ # endif #endif /* wxUSE_RADIOBTN */ +#if wxUSE_HELP +# if !wxUSE_BMPBUTTON +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_HELP requires wxUSE_BMPBUTTON" +# else +# undef wxUSE_BMPBUTTON +# define wxUSE_BMPBUTTON 1 +# endif +# endif + +# if !wxUSE_CHOICEDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_HELP requires wxUSE_CHOICEDLG" +# else +# undef wxUSE_CHOICEDLG +# define wxUSE_CHOICEDLG 1 +# endif +# endif +#endif /* wxUSE_HELP */ + #if wxUSE_WXHTML_HELP # if !wxUSE_HELP || !wxUSE_HTML || !wxUSE_COMBOBOX || !wxUSE_NOTEBOOK # ifdef wxABORT_ON_CONFIG_ERROR @@ -1086,6 +1249,104 @@ # endif #endif /* wxUSE_WXHTML_HELP */ +#if !wxUSE_IMAGE +/* + The default wxUSE_IMAGE setting is 1, so if it's set to 0 we assume the + user explicitly wants this and disable all other features that require + wxUSE_IMAGE. + */ +# if wxUSE_DRAGIMAGE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_DRAGIMAGE requires wxUSE_IMAGE" +# else +# undef wxUSE_DRAGIMAGE +# define wxUSE_DRAGIMAGE 0 +# endif +# endif + +# if wxUSE_LIBPNG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_LIBPNG requires wxUSE_IMAGE" +# else +# undef wxUSE_LIBPNG +# define wxUSE_LIBPNG 0 +# endif +# endif + +# if wxUSE_LIBJPEG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_LIBJPEG requires wxUSE_IMAGE" +# else +# undef wxUSE_LIBJPEG +# define wxUSE_LIBJPEG 0 +# endif +# endif + +# if wxUSE_LIBTIFF +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_LIBTIFF requires wxUSE_IMAGE" +# else +# undef wxUSE_LIBTIFF +# define wxUSE_LIBTIFF 0 +# endif +# endif + +# if wxUSE_GIF +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_GIF requires wxUSE_IMAGE" +# else +# undef wxUSE_GIF +# define wxUSE_GIF 0 +# endif +# endif + +# if wxUSE_PNM +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_PNM requires wxUSE_IMAGE" +# else +# undef wxUSE_PNM +# define wxUSE_PNM 0 +# endif +# endif + +# if wxUSE_PCX +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_PCX requires wxUSE_IMAGE" +# else +# undef wxUSE_PCX +# define wxUSE_PCX 0 +# endif +# endif + +# if wxUSE_IFF +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_IFF requires wxUSE_IMAGE" +# else +# undef wxUSE_IFF +# define wxUSE_IFF 0 +# endif +# endif + +# if wxUSE_TOOLBAR +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_TOOLBAR requires wxUSE_IMAGE" +# else +# undef wxUSE_TOOLBAR +# define wxUSE_TOOLBAR 0 +# endif +# endif + +# if wxUSE_XPM +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_XPM requires wxUSE_IMAGE" +# else +# undef wxUSE_XPM +# define wxUSE_XPM 0 +# endif +# endif + +#endif /* !wxUSE_IMAGE */ + #if wxUSE_DOC_VIEW_ARCHITECTURE # if !wxUSE_MENUS # ifdef wxABORT_ON_CONFIG_ERROR @@ -1096,6 +1357,15 @@ # endif # endif +# if !wxUSE_CHOICEDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "DocView requires wxUSE_CHOICEDLG" +# else +# undef wxUSE_CHOICEDLG +# define wxUSE_CHOICEDLG 1 +# endif +# endif + # if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM # ifdef wxABORT_ON_CONFIG_ERROR # error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM" @@ -1115,18 +1385,18 @@ # define wxUSE_COMBOBOX 1 # endif # endif - -# if !wxUSE_DOC_VIEW_ARCHITECTURE -# ifdef wxABORT_ON_CONFIG_ERROR -# error "Print architecture requires wxUSE_DOC_VIEW_ARCHITECTURE" -# else -# undef wxUSE_DOC_VIEW_ARCHITECTURE -# define wxUSE_DOC_VIEW_ARCHITECTURE 1 -# endif -# endif #endif /* wxUSE_PRINTING_ARCHITECTURE */ #if wxUSE_MDI_ARCHITECTURE +# if !wxUSE_MDI +# ifdef wxABORT_ON_CONFIG_ERROR +# error "MDI requires wxUSE_MDI" +# else +# undef wxUSE_MDI +# define wxUSE_MDI 1 +# endif +# endif + # if !wxUSE_DOC_VIEW_ARCHITECTURE # ifdef wxABORT_ON_CONFIG_ERROR # error "MDI requires wxUSE_DOC_VIEW_ARCHITECTURE" @@ -1148,6 +1418,45 @@ # endif #endif /* wxUSE_FILEDLG */ +#if !wxUSE_BUTTON +# if wxUSE_PROGRESSDLG || \ + wxUSE_FONTDLG || \ + wxUSE_FILEDLG || \ + wxUSE_CHOICEDLG || \ + wxUSE_NUMBERDLG || \ + wxUSE_TEXTDLG || \ + wxUSE_DIRDLG || \ + wxUSE_STARTUP_TIPS || \ + wxUSE_WIZARDDLG +# ifdef wxABORT_ON_CONFIG_ERROR +# error "Common and generic dialogs require wxUSE_BUTTON" +# else +# undef wxUSE_BUTTON +# define wxUSE_BUTTON 1 +# endif +# endif +#endif /* wxUSE_PROGRESSDLG */ + +#if !wxUSE_TOOLBAR +# if wxUSE_TOOLBAR_NATIVE +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_TOOLBAR is set to 0 but wxUSE_TOOLBAR_NATIVE is set to 1" +# else +# undef wxUSE_TOOLBAR_NATIVE +# 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 # if wxUSE_TREECTRL || wxUSE_NOTEBOOK || wxUSE_LISTCTRL # ifdef wxABORT_ON_CONFIG_ERROR @@ -1194,12 +1503,14 @@ #endif /* wxUSE_LOGWINDOW */ #if wxUSE_LOG_DIALOG -# if !wxUSE_LISTCTRL +# if !wxUSE_LISTCTRL || !wxUSE_BUTTON # ifdef wxABORT_ON_CONFIG_ERROR -# error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL" +# error "wxUSE_LOG_DIALOG requires wxUSE_LISTCTRL and wxUSE_BUTTON" # else # undef wxUSE_LISTCTRL # define wxUSE_LISTCTRL 1 +# undef wxUSE_BUTTON +# define wxUSE_BUTTON 1 # endif # endif #endif /* wxUSE_LOG_DIALOG */