]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/chkconf.h
Derive wxBitmap from wxBitmapBase in wxMotif, with the appropriate
[wxWidgets.git] / include / wx / chkconf.h
index b3620c8eb81281a0b3792203e396d15cc665b2f0..6ce050c80f264104a8e5a3e32872f9a768fd399e 100644 (file)
  */
 #define wxABORT_ON_CONFIG_ERROR
 
+/*
+   global features
+ */
+
+/* GUI build by default */
+#if !defined(wxUSE_GUI)
+#   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
 #   endif
 #endif /* !defined(wxUSE_DYNLIB_CLASS) */
 
+#ifndef wxUSE_FILESYSTEM
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_FILESYSTEM must be defined."
+#   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_FSVOLUME
+#   define wxUSE_FSVOLUME 0
+#endif /* !defined(wxUSE_FSVOLUME) */
+
 #ifndef wxUSE_DYNAMIC_LOADER
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_DYNAMIC_LOADER must be defined."
 #   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."
 #   endif
 #endif /* !defined(wxUSE_TREECTRL) */
 
+#ifndef wxUSE_WX_RESOURCES
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_WX_RESOURCES must be defined."
+#   else
+#       define wxUSE_WX_RESOURCES 0
+#   endif
+#endif /* !defined(wxUSE_WX_RESOURCES) */
+
 #ifndef wxUSE_WXHTML_HELP
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_WXHTML_HELP must be defined."
 #   endif
 #endif /* wxUSE_PROTOCOL */
 
-/* non GUI settings */
-#if wxUSE_STOPWATCH
+/* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
+#if wxUSE_HTML
+#   if !wxUSE_FILESYSTEM
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxHTML requires wxFileSystem"
+#       else
+#           undef wxUSE_FILESYSTEM
+#           define wxUSE_FILESYSTEM 1
+#       endif
+#   endif
+#endif /* wxUSE_HTML */
+
+#if wxUSE_FILESYSTEM
+#   if !wxUSE_STREAMS
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_FILESYSTEM requires wxUSE_STREAMS"
+#       else
+#           undef wxUSE_STREAMS
+#           define wxUSE_STREAMS 1
+#       endif
+#   endif
+#endif /* wxUSE_FILESYSTEM */
+
+#if wxUSE_STOPWATCH || wxUSE_DATETIME
 #    if !wxUSE_LONGLONG
 #        ifdef wxABORT_ON_CONFIG_ERROR
-#            error "wxUSE_STOPWATCH requires wxUSE_LONGLONG"
+#            error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG"
 #        else
 #            undef wxUSE_LONGLONG
 #            define wxUSE_LONGLONG 1
 #   endif
 #endif /* wxUSE_UNICODE_MSLU */
 
+#if 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 */
+
 /* the rest of the tests is for the GUI settings only */
 #if wxUSE_GUI
 
 #  define wxUSE_TOGGLEBTN 0
 #endif
 
+/* wxMGL-specific dependencies */
+#ifdef __WXMGL__
+#   if !wxUSE_PALETTE
+#       error "wxMGL requires wxUSE_PALETTE=1"
+#   endif
+#endif /* wxMGL */
+
 /* generic controls dependencies */
 #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
 #   if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
 #   endif
 #endif /* wxUSE_WXHTML_HELP */
 
+#if wxUSE_DOC_VIEW_ARCHITECTURE
+#   if !wxUSE_MENUS
+#        ifdef wxABORT_ON_CONFIG_ERROR
+#            error "DocView requires wxUSE_MENUS"
+#        else
+#            undef wxUSE_MENUS
+#            define wxUSE_MENUS 1
+#        endif
+#   endif
+
+#   if !wxUSE_STREAMS && !wxUSE_STD_IOSTREAM
+#        ifdef wxABORT_ON_CONFIG_ERROR
+#            error "DocView requires wxUSE_STREAMS or wxUSE_STD_IOSTREAM"
+#        else
+#            undef wxUSE_STREAMS
+#            define wxUSE_STREAMS 1
+#        endif
+#   endif
+#endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
+
 #if wxUSE_PRINTING_ARCHITECTURE
 #   if !wxUSE_COMBOBOX
 #       ifdef wxABORT_ON_CONFIG_ERROR
 #           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_DOC_VIEW_ARCHITECTURE
-#   if !wxUSE_MENUS
+#if wxUSE_MDI_ARCHITECTURE
+#   if !wxUSE_DOC_VIEW_ARCHITECTURE
 #        ifdef wxABORT_ON_CONFIG_ERROR
-#            error "DocView requires wxUSE_MENUS"
+#            error "MDI requires wxUSE_DOC_VIEW_ARCHITECTURE"
 #        else
-#            undef wxUSE_MENUS
-#            define wxUSE_MENUS 1
+#            undef wxUSE_DOC_VIEW_ARCHITECTURE
+#            define wxUSE_DOC_VIEW_ARCHITECTURE 1
 #        endif
 #   endif
-#endif /* wxUSE_DOC_VIEW_ARCHITECTURE */
+#endif /* wxUSE_MDI_ARCHITECTURE */
 
 #if !wxUSE_FILEDLG
 #   if wxUSE_DOC_VIEW_ARCHITECTURE || wxUSE_WXHTML_HELP
 #   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 */
+
 #endif /* wxUSE_GUI */