X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1bfb7cc63fa325ab58d069267da7feaae0056280..544229d1069a20ca4c81fac6059aa4d92d8559ef:/include/wx/platform.h?ds=sidebyside diff --git a/include/wx/platform.h b/include/wx/platform.h index c7ec886496..38415f572e 100644 --- a/include/wx/platform.h +++ b/include/wx/platform.h @@ -24,29 +24,29 @@ #endif /* - WXMAC variants - __WXMAC_CLASSIC__ means ppc non-carbon builds, __WXMAC_CARBON__ means - carbon API available (mach or cfm builds) , __WXMAC_OSX__ means mach-o - builds, running under 10.2 + only + WXMAC variants + __WXMAC_CLASSIC__ means ppc non-carbon builds, __WXMAC_CARBON__ means + carbon API available (mach or cfm builds) , __WXMAC_OSX__ means mach-o + builds, running under 10.2 + only */ #ifdef __WXMAC__ - #if defined(__MACH__) - #define __WXMAC_OSX__ 1 - #define __WXMAC_CARBON__ 1 - #define __WXMAC_CLASSIC__ 0 + #if defined(__MACH__) + #define __WXMAC_OSX__ 1 + #define __WXMAC_CARBON__ 1 + #define __WXMAC_CLASSIC__ 0 #ifdef __WXMAC_XCODE__ #include "wx/mac/carbon/config_xcode.h" #endif - #else - #define __WXMAC_OSX__ 0 - #if TARGET_CARBON - #define __WXMAC_CARBON__ 1 - #define __WXMAC_CLASSIC__ 0 - #else - #define __WXMAC_CARBON__ 0 - #define __WXMAC_CLASSIC__ 1 - #endif - #endif + #else + #define __WXMAC_OSX__ 0 + #if TARGET_CARBON + #define __WXMAC_CARBON__ 1 + #define __WXMAC_CLASSIC__ 0 + #else + #define __WXMAC_CARBON__ 0 + #define __WXMAC_CLASSIC__ 1 + #endif + #endif #endif /* @@ -95,13 +95,46 @@ # endif /* - see MSDN for the description of possible WINVER values, this one is a - good default and, anyhow, we check for most of the features we use - during run-time. - */ -# ifndef WINVER -# define WINVER 0x0400 -# endif + The library user may override the default setting of WINVER by defining + it in his own makefile or project file -- if it is defined, we don't + touch it at all. + + It makes sense to define WINVER as: + - either some lowish value (e.g. 0x0302) to not even compile in the + features not available in Windows version lower than some given + one + - or to a higher value than the one used by default for the given + compiler if you updated its headers to newer version of Platform + SDK, e.g. VC6 ships with 0x0400 headers by default but may also + work with 0x0500 headers and beyond + */ +# ifndef WINVER +# if defined(_MSC_VER) && _MSC_VER < 1300 + /* + VC6 defines some stuff in its default headers which is normally + only present if WINVER >= 0x0500 (FLASHW_XXX constants) which + means that our usual tests not involving WINVER sometimes fail + with it, hence explicitly define a lower WINVER value for it. + */ +# define WINVER 0x0400 +# elif defined(__DMC__) + /* + Digital Mars is distributed with a little outdated headers. + */ +# define WINVER 0x0400 +# else /* !VC++ 6 */ + /* + see MSDN for the description of possible WINVER values, this one + is the highest one defined right now (Windows Server 2003) and + we use it unless it was explicitly overridden by the user to + disable recent features support as we check for all of the + features we use which could be not available on earlier Windows + systems during run-time anyhow, so there is almost no + disadvantage in using it. + */ +# define WINVER 0x0502 +# endif /* VC++ 6/!VC++6 */ +# endif /* Win95 means Win95-style UI, i.e. Win9x/NT 4+ */ # if !defined(__WIN95__) && (WINVER >= 0x0400) @@ -147,7 +180,7 @@ # ifndef __WINCE_NET__ # define __WINCE_NET__ # endif -# elif (_WIN32_WCE >= 200) +# elif (_WIN32_WCE >= 200) # ifndef __HANDHELDPC__ # define __HANDHELDPC__ # endif @@ -382,12 +415,6 @@ # define __UNIX__ #endif /* Unix */ -#if defined(__HPUX__) && !defined(__WXGTK__) -# ifndef __WXMOTIF__ -# define __WXMOTIF__ -# endif /* __WXMOTIF__ */ -#endif - #if defined(__WXMOTIF__) || defined(__WXX11__) # define __X__ #endif