X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3694bb76c11d1ed1518f20a42f8907c948e190bd..60dd3c0916772e3e64fde7c83d359daae02b40a6:/include/wx/defs.h?ds=sidebyside diff --git a/include/wx/defs.h b/include/wx/defs.h index 2b2b5fec49..11c305c7a3 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -71,6 +71,12 @@ # pragma warning(disable:4512) /* operator=() couldn't be generated */ # pragma warning(disable:4710) /* function not inlined */ + /* There are too many false positivies for this one, particularly when + using templates like wxVector */ + /* class 'foo' needs to have dll-interface to be used by clients of + class 'bar'" */ +# pragma warning(disable:4251) + /* For VC++ 5.0 for release mode, the warning 'C4702: unreachable code */ /* is buggy, and occurs for code that does actually get executed */ # if !defined __WXDEBUG__ && __VISUALC__ <= 1100 @@ -443,6 +449,13 @@ typedef int wxWindowID; #endif /* HAVE_VARIADIC_MACROS */ +#ifndef HAVE_WOSTREAM + // Mingw <=3.4 doesn't have std::wostream + #if !defined(__MINGW32__) || wxCHECK_GCC_VERSION(4,0) + #define HAVE_WOSTREAM + #endif +#endif /* HAVE_WOSTREAM */ + /* ---------------------------------------------------------------------------- */ /* portable calling conventions macros */ /* ---------------------------------------------------------------------------- */ @@ -516,16 +529,23 @@ typedef int wxWindowID; /* Macro to issue warning when using deprecated functions with gcc3 or MSVC7: */ #if wxCHECK_GCC_VERSION(3, 1) - #define wxDEPRECATED(x) x __attribute__ ((deprecated)) - #define wxDEPRECATED_INLINE(func, body) x { body } __attribute__ ((deprecated)) + #define wxDEPRECATED(x) __attribute__((deprecated)) x #elif defined(__VISUALC__) && (__VISUALC__ >= 1300) #define wxDEPRECATED(x) __declspec(deprecated) x - #define wxDEPRECATED_INLINE(func, body) __declspec(deprecated) x { body } #else #define wxDEPRECATED(x) x - #define wxDEPRECATED_INLINE(func, body) func { body } #endif +/* + Macro which marks the function as being deprecated but also defines it + inline. + + Currently it's defined in the same trivial way in all cases but it could + need a special definition with some other compilers in the future which + explains why do we have it. + */ +#define wxDEPRECATED_INLINE(func, body) wxDEPRECATED(func) { body } + /* Special variant of the macro above which should be used for the functions which are deprecated but called by wx itself: this often happens with @@ -1731,7 +1751,8 @@ enum wxBackgroundStyle { wxBG_STYLE_SYSTEM, wxBG_STYLE_COLOUR, - wxBG_STYLE_CUSTOM + wxBG_STYLE_CUSTOM, + wxBG_STYLE_TRANSPARENT }; /* @@ -2531,7 +2552,7 @@ typedef void* WXDisplay; #endif -#ifdef __WXCOCOA__ +#if defined( __WXCOCOA__ ) || ( defined(__WXMAC__) && defined(__DARWIN__) ) /* Definitions of 32-bit/64-bit types * These are typedef'd exactly the same way in newer OS X headers so @@ -2626,8 +2647,14 @@ DECLARE_WXCOCOA_OBJC_CLASS(NSTextStorage); DECLARE_WXCOCOA_OBJC_CLASS(NSThread); DECLARE_WXCOCOA_OBJC_CLASS(NSWindow); DECLARE_WXCOCOA_OBJC_CLASS(NSView); +#ifdef __WXMAC__ +// things added for __WXMAC__ +DECLARE_WXCOCOA_OBJC_CLASS(NSString); +#else +// things only for __WXCOCOA__ typedef WX_NSView WXWidget; /* wxWidgets BASE definition */ -#endif /* __WXCOCOA__ */ +#endif +#endif /* __WXCOCOA__ || ( __WXMAC__ &__DARWIN__)*/ #if defined(__WXPALMOS__)