]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/wxprec.h
support SDK < 10.6, fixes #14902
[wxWidgets.git] / include / wx / wxprec.h
index 045787256ea23c94aa79b06714381cd6705b21e0..340404407ed149afd9998e2509d19938e9dd3d35 100644 (file)
@@ -1,70 +1,59 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wxprec.h
+// Name:        wx/wxprec.h
 // Purpose:     Includes the appropriate files for precompiled headers
 // Author:      Julian Smart
 // Modified by:
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // Purpose:     Includes the appropriate files for precompiled headers
 // Author:      Julian Smart
 // Modified by:
 // Created:     01/02/97
 // RCS-ID:      $Id$
-// Copyright:   (c)
+// Copyright:   (c) Julian Smart
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#include "wx/setup.h"   // always include this file (under Unix it's generated by configure)
-#include "wx/defs.h"    // compiler definitions
+// compiler detection; includes setup.h
+#include "wx/defs.h"
 
 
-// check if to use precompiled headers
-#if (defined(__BORLANDC__) || defined(__VISUALC__) || defined(__WATCOMC__)) && defined(__WXMSW__)
-    #if !defined(NOPCH)
+// check if to use precompiled headers: do it for most Windows compilers unless
+// explicitly disabled by defining NOPCH
+#if defined(__VISUALC__)   || \
+    defined(__DMC__)       || \
+    defined(__VISAGECPP__) || \
+    defined(__WATCOMC__)   || \
+    defined(__BORLANDC__)
+
+
+    // If user did not request NOCPH and we're not building using configure
+    // then assume user wants precompiled headers.
+    #if !defined(NOPCH) && !defined(__WX_SETUP_H__)
         #define WX_PRECOMP
     #endif
 #endif
 
 // For some reason, this must be defined for common dialogs to work.
 #ifdef __WATCOMC__
         #define WX_PRECOMP
     #endif
 #endif
 
 // For some reason, this must be defined for common dialogs to work.
 #ifdef __WATCOMC__
-#define INCLUDE_COMMDLG_H  1
+    #define INCLUDE_COMMDLG_H  1
 #endif
 
 #endif
 
-// include the wx definitions
 #ifdef WX_PRECOMP
 #ifdef WX_PRECOMP
-#include "wx/wx.h"
 
 
-// Comment this out if you don't mind slower compilation of the wxWindows
-// library
-#if !defined(__WXMAC__) && !defined(__SALFORDC__)
-#include <windows.h>
-#endif
+// include "wx/chartype.h" first to ensure that UNICODE macro is correctly set
+// _before_ including <windows.h>
+#include "wx/chartype.h"
 
 
-#ifdef GetClassInfo
-#undef GetClassInfo
+// include standard Windows headers
+#if defined(__WXMSW__)
+    #include "wx/msw/wrapwin.h"
+    #include "wx/msw/wrapcctl.h"
+    #include "wx/msw/wrapcdlg.h"
+    #include "wx/msw/private.h"
+    #include "wx/msw/missing.h"
 #endif
 
 #endif
 
-#ifdef GetClassName
-#undef GetClassName
+// include <os2.h>
+#ifdef __OS2__
+#   include "wx/os2/private.h"
 #endif
 
 #endif
 
-#ifdef DrawText
-#undef DrawText
-#endif
-
-#ifdef GetCharWidth
-#undef GetCharWidth
-#endif
-
-#ifdef StartDoc
-#undef StartDoc
-#endif
-
-#ifdef FindWindow
-#undef FindWindow
-#endif
-
-#ifdef FindResource
-#undef FindResource
-#endif
-
-#ifdef LoadAccelerators
-#undef LoadAccelerators
-#endif
+// include the most common wx headers
+#include "wx/wx.h"
 
 #endif // WX_PRECOMP
 
 #endif // WX_PRECOMP
-