]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/platform.h
Fixed bug #1022383: 'several ComboBoxes appear selected'
[wxWidgets.git] / include / wx / platform.h
index 03ae2586795055cb41940436af69e0c4a9c9a409..2b4a0a274f0f3dc31f7e427729d5651c24f874e4 100644 (file)
@@ -34,6 +34,7 @@
 #        define __WXMAC_OSX__
 #        define __WXMAC_CARBON__
 #        ifdef __WXMAC_XCODE__
+#            include <unistd.h>
 #            include "wx/mac/carbon/config_xcode.h"
 #        endif
 #    else
 #    endif
 #endif
 
+#if defined(__PALMOS__)
+#   ifndef __WXPALMOS__
+#       define __WXPALMOS__
+#   endif
+#   ifdef __WXMSW__
+#       undef __WXMSW__
+#   endif
+#   ifdef __WINDOWS__
+#       undef __WINDOWS__
+#   endif
+#   ifdef __WIN32__
+#       undef __WIN32__
+#   endif
+#   ifdef WIN32
+#       undef WIN32
+#   endif
+#   ifdef _WIN32
+#       undef _WIN32
+#   endif
+#endif
+
 #if defined(_WIN64)
 #    ifndef _WIN32
         /*
 #   endif
 #endif
 
+/*
+   Hardware platform detection.
+
+   VC++ defines _M_xxx symbols.
+ */
+#if defined(_M_IX86) || defined(i386) || defined(__i386) || defined(__i386__)
+    #ifndef __INTEL__
+        #define __INTEL__
+    #endif
+#endif /* x86 */
+
+#if defined(_M_IA64)
+    #ifndef __IA64__
+        #define __IA64__
+    #endif
+#endif /* ia64 */
+
+#if defined(_M_MPPC) || defined(__PPC__)
+    #ifndef __POWERPC__
+        #define __POWERPC__
+    #endif
+#endif /* alpha */
+
+#if defined(_M_ALPHA) || defined(__AXP__)
+    #ifndef __ALPHA__
+        #define __ALPHA__
+    #endif
+#endif /* alpha */
+
 /*
    Include wx/setup.h for the Unix platform defines generated by configure and
    the library compilation options
 #    endif
 #    define wxSIZE_T_IS_UINT
 
+#elif defined(__PALMOS__)
+#    ifdef __WIN32__
+#        error "__WIN32__ should not be defined for PalmOS"
+#    endif
+#    ifdef __WINDOWS__
+#        error "__WINDOWS__ should not be defined for PalmOS"
+#    endif
+#    ifdef __WXMSW__
+#        error "__WXMSW__ should not be defined for PalmOS"
+#    endif
+
 #else   /* Windows */
 #    ifndef __WINDOWS__
 #        define __WINDOWS__
 #   include "wx/msw/wince/libraries.h"
 #endif
 
+/* Force inclusion of main PalmOS header: */
+#ifdef __WXPALMOS__
+#   include <PalmOS.h>
+#   undef Abs
+#endif
+
 /*
    This macro can be used to test the gcc version and can be used like this:
 
    This macro can be used to check that the version of mingw32 compiler is
    at least maj.min
  */
-#if defined(__PALMOS__)
-#    include "wx/palmos/gccpriv.h"
-#elif ( defined( __GNUWIN32__ ) || defined( __MINGW32__ ) || \
+#if ( defined( __GNUWIN32__ ) || defined( __MINGW32__ ) || \
     defined( __CYGWIN__ ) || \
       (defined(__WATCOMC__) && __WATCOMC__ >= 1200) ) && \
-    !defined(__DOS__) && !defined(__WXMOTIF__) && !defined(__WXGTK__) && !defined(__WXX11__)
+    !defined(__DOS__) && \
+    !defined(__WXMOTIF__) && \
+    !defined(__WXGTK__) && \
+    !defined(__WXX11__) && \
+    !defined(__WXPALMOS__)
 #    include "wx/msw/gccpriv.h"
 #else
 #    undef wxCHECK_W32API_VERSION
 #endif
 
 /*
-    We need AvailabilityMacros.h for ifdefing out things that don't exist on 
+    We need AvailabilityMacros.h for ifdefing out things that don't exist on
     OSX 10.2 and lower
     FIXME:  We need a better way to detect for 10.3 then including a system header
 */