X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fc7a2a602b4bd9308be21bc07e40a680f483438e..5b87f8bf2ea3b9ae7ac0ae812a311d31cce13bb7:/include/wx/defs.h diff --git a/include/wx/defs.h b/include/wx/defs.h index 59a096dad6..e1b625bfe4 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -60,6 +60,8 @@ # pragma warning(disable:4244) // conversion from double to float # pragma warning(disable:4710) // function not inlined # pragma warning(disable:4097) // typedef used as class +# pragma warning(disable:4511) // copy ctor couldn't be generated +# pragma warning(disable:4512) // operator=() couldn't be generated #ifndef WIN32 # pragma warning(disable:4135) // conversion between different integral types # pragma warning(disable:4769) // assignment of near pointer to long integer @@ -230,7 +232,7 @@ typedef int wxWindowID; // check for explicit keyword support #ifndef HAVE_EXPLICIT #if defined(__VISUALC__) && (__VISUALC__ >= 1100) - // VC++ 6.0 and 5.0 have explicit (what about the earlier versions?) + // VC++ 6.0 and 5.0 have explicit (what about earlier versions?) #define HAVE_EXPLICIT #elif ( defined(__MINGW32__) || defined(__CYGWIN32__) ) \ && wxCHECK_GCC_VERSION(2, 95) @@ -256,7 +258,7 @@ typedef int wxWindowID; // check for static/const/reinterpret_cast<>() #ifndef HAVE_STATIC_CAST #if defined(__VISUALC__) && (__VISUALC__ >= 1100) - // VC++ 6.0 and 5.0 have C++ casts (what about the earlier versions?) + // VC++ 6.0 and 5.0 have C++ casts (what about earlier versions?) #define HAVE_CXX_CASTS #elif ( defined(__MINGW32__) || defined(__CYGWIN32__) ) \ && wxCHECK_GCC_VERSION(2, 95) @@ -271,6 +273,30 @@ typedef int wxWindowID; #endif #endif // HAVE_CXX_CASTS +#ifndef HAVE_STD_WSTRING + #if defined(__VISUALC__) && (__VISUALC__ >= 1100) + // VC++ 6.0 and 5.0 have std::wstring (what about earlier versions?) + #define HAVE_STD_WSTRING + #elif ( defined(__MINGW32__) || defined(__CYGWIN32__) ) \ + && wxCHECK_GCC_VERSION(3, 1) + // GCC 3.1 has std::wstring; 3.0 never was in MinGW, 2.95 hasn't it + #define HAVE_STD_WSTRING + #endif +#endif + +#ifndef HAVE_STD_STRING_COMPARE + #if defined(__VISUALC__) && (__VISUALC__ >= 1100) + // VC++ 6.0 and 5.0 have std::string::compare + // (what about earlier versions?) + #define HAVE_STD_STRING_COMPARE + #elif ( defined(__MINGW32__) || defined(__CYGWIN32__) ) \ + && wxCHECK_GCC_VERSION(3, 1) + // GCC 3.1 has std::string::compare; + // 3.0 never was in MinGW, 2.95 hasn't it + #define HAVE_STD_STRING_COMPARE + #endif +#endif + // ---------------------------------------------------------------------------- // portable calling conventions macros // ---------------------------------------------------------------------------- @@ -371,7 +397,11 @@ typedef int wxWindowID; #define WXMAKINGDLL_BASE #endif + #define WXMAKINGDLL_NET #define WXMAKINGDLL_CORE + #define WXMAKINGDLL_ADV + #define WXMAKINGDLL_ODBC + #define WXMAKINGDLL_DBGRID #define WXMAKINGDLL_HTML #define WXMAKINGDLL_XML #endif // WXMAKINGDLL @@ -389,6 +419,17 @@ typedef int wxWindowID; #define WXDLLIMPEXP_DATA_BASE(type) type #endif +#ifdef WXMAKINGDLL_NET + #define WXDLLIMPEXP_NET WXEXPORT + #define WXDLLIMPEXP_DATA_NET(type) WXEXPORT type +#elif defined(WXUSINGDLL) + #define WXDLLIMPEXP_NET WXIMPORT + #define WXDLLIMPEXP_DATA_NET(type) WXIMPORT type +#else // not making nor using DLL + #define WXDLLIMPEXP_NET + #define WXDLLIMPEXP_DATA_NET(type) type +#endif + #ifdef WXMAKINGDLL_CORE #define WXDLLIMPEXP_CORE WXEXPORT #define WXDLLIMPEXP_DATA_CORE(type) WXEXPORT type @@ -400,6 +441,39 @@ typedef int wxWindowID; #define WXDLLIMPEXP_DATA_CORE(type) type #endif +#ifdef WXMAKINGDLL_ADV + #define WXDLLIMPEXP_ADV WXEXPORT + #define WXDLLIMPEXP_DATA_ADV(type) WXEXPORT type +#elif defined(WXUSINGDLL) + #define WXDLLIMPEXP_ADV WXIMPORT + #define WXDLLIMPEXP_DATA_ADV(type) WXIMPORT type +#else // not making nor using DLL + #define WXDLLIMPEXP_ADV + #define WXDLLIMPEXP_DATA_ADV(type) type +#endif + +#ifdef WXMAKINGDLL_ODBC + #define WXDLLIMPEXP_ODBC WXEXPORT + #define WXDLLIMPEXP_DATA_ODBC(type) WXEXPORT type +#elif defined(WXUSINGDLL) + #define WXDLLIMPEXP_ODBC WXIMPORT + #define WXDLLIMPEXP_DATA_ODBC(type) WXIMPORT type +#else // not making nor using DLL + #define WXDLLIMPEXP_ODBC + #define WXDLLIMPEXP_DATA_ODBC(type) type +#endif + +#ifdef WXMAKINGDLL_DBGRID + #define WXDLLIMPEXP_DBGRID WXEXPORT + #define WXDLLIMPEXP_DATA_DBGRID(type) WXEXPORT type +#elif defined(WXUSINGDLL) + #define WXDLLIMPEXP_DBGRID WXIMPORT + #define WXDLLIMPEXP_DATA_DBGRID(type) WXIMPORT type +#else // not making nor using DLL + #define WXDLLIMPEXP_DBGRID + #define WXDLLIMPEXP_DATA_DBGRID(type) type +#endif + #ifdef WXMAKINGDLL_HTML #define WXDLLIMPEXP_HTML WXEXPORT #define WXDLLIMPEXP_DATA_HTML(type) WXEXPORT type @@ -2014,6 +2088,7 @@ DECLARE_WXCOCOA_OBJC_CLASS(NSButton); DECLARE_WXCOCOA_OBJC_CLASS(NSColor); DECLARE_WXCOCOA_OBJC_CLASS(NSControl); DECLARE_WXCOCOA_OBJC_CLASS(NSEvent); +DECLARE_WXCOCOA_OBJC_CLASS(NSImage); DECLARE_WXCOCOA_OBJC_CLASS(NSLayoutManager); DECLARE_WXCOCOA_OBJC_CLASS(NSMenu); DECLARE_WXCOCOA_OBJC_CLASS(NSMenuItem); @@ -2022,6 +2097,7 @@ DECLARE_WXCOCOA_OBJC_CLASS(NSTableView); DECLARE_WXCOCOA_OBJC_CLASS(NSTextContainer); DECLARE_WXCOCOA_OBJC_CLASS(NSTextField); DECLARE_WXCOCOA_OBJC_CLASS(NSTextStorage); +DECLARE_WXCOCOA_OBJC_CLASS(NSThread); DECLARE_WXCOCOA_OBJC_CLASS(NSWindow); DECLARE_WXCOCOA_OBJC_CLASS(NSView); typedef WX_NSView WXWidget; // wxWindows BASE definition @@ -2319,5 +2395,9 @@ typedef struct window_t *WXWidget; classname(const classname&); \ classname& operator=(const classname&); +#define DECLARE_NO_ASSIGN_CLASS(classname) \ + private: \ + classname& operator=(const classname&); + #endif // _WX_DEFS_H_