#define OS2EMX_PLAIN_CHAR
#endif
-#elif defined(applec) || defined(THINK_C) || ( defined( __MWERKS__ ) && !defined(__INTEL__) )
- // MacOS
+ #if defined(__APPLE__)
+ // MacOS X
+ #ifndef __WXMAC__
+ #define __WXMAC__
+ #endif
+ #ifndef __WXMAC_X__
+ // This define really should not be necessary since __WXMAC__
+ // combined with __UNIX__ is sufficient to differentiate
+ // Classic Mac OS from Mac OS X. However, some code has been
+ // added to workaround defects(?) in the bundled gcc compiler
+ // and these corrections are identified by __WXMAC_X__
+ #define __WXMAC_X__
+ #endif
+
+ #define PM_USE_SESSION_APIS 0
+ #include <Carbon/Carbon.h>
+ #endif
+#elif defined(applec) || \
+ defined(THINK_C) || \
+ (defined(__MWERKS__) && !defined(__INTEL__))
+ // MacOS
+#elif defined(__WXMAC__) && defined(__APPLE__)
+ // MacOS X
+ #define __UNIX_LIKE__
+
+ #ifndef __WXMAC__
+ #define __WXMAC__
+ #endif
+ #ifndef __WXMAC_X__
+ // This define really should not be necessary since __WXMAC__
+ // combined with __UNIX__ is sufficient to differentiate
+ // Classic Mac OS from Mac OS X. However, some code has been
+ // added to workaround defects(?) in the bundled gcc compiler
+ // and these corrections are identified by __WXMAC_X__
+ #define __WXMAC_X__
+ #endif
+
+ #define PM_USE_SESSION_APIS 0
+ #include <Carbon/Carbon.h>
#elif defined(__OS2__)
#if defined(__IBMCPP__)
#define __VISAGEAVER__ __IBMCPP__
#elif defined(__BCPLUSPLUS__) && !defined(__BORLANDC__)
#define __BORLANDC__
#elif defined(__WATCOMC__)
- //#define __WATCOMC__
#elif defined(__SC__)
#define __SYMANTECC__
#endif // compiler
#endif
#endif // __VISUALC__
+// suppress some Watcom C++ warnings
+#ifdef __WATCOMC__
+# pragma warning 849 9 // Disable 'virtual function hidden'
+# pragma warning 549 9 // Disable 'operand contains compiler generated information'
+#endif // __VISUALC__
+
// suppress some Salford C++ warnings
#ifdef __SALFORDC__
# pragma suppress 353 // Possible nested comments
#define va_list __gnuc_va_list
#endif // HP-UX
-// Cygwin / Mingw32 with gcc >= 2.95 use new windows headers which
-// are more ms-like (header author is Anders Norlander, hence the name)
-#if (defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95)))
- #ifndef wxUSE_NORLANDER_HEADERS
- #define wxUSE_NORLANDER_HEADERS 1
- #endif
+#if defined( __GNUWIN32__ ) || defined( __MINGW32__ ) || defined( __CYGWIN__ )
+ #include "wx/msw/gccpriv.h"
#else
- #ifndef wxUSE_NORLANDER_HEADERS
- #define wxUSE_NORLANDER_HEADERS 0
- #endif
-#endif
-
-// "old" GNUWIN32 is the one without Norlander's headers: it lacks the
-// standard Win32 headers and we define the used stuff ourselves for it
-// in wx/msw/gnuwin32/extra.h
-#if defined(__GNUC__) && !wxUSE_NORLANDER_HEADERS
- #define __GNUWIN32_OLD__
+ #undef wxCHECK_W32API_VERSION
+ #define wxCHECK_W32API_VERSION(maj, min) (0)
#endif
//////////////////////////////////////////////////////////////////////////////////
#if defined(__WXMSW__)
-// __declspec works in BC++ 5 and later, as well as VC++ and gcc
-#if defined(__VISUALC__) || defined(__BORLANDC__) || defined(__GNUC__)
+// __declspec works in BC++ 5 and later, Watcom C++ 11.0 and later as well as VC++ and gcc
+#if defined(__VISUALC__) || defined(__BORLANDC__) || defined(__GNUC__) || defined(__WATCOMC__)
# ifdef WXMAKINGDLL
# define WXDLLEXPORT __declspec( dllexport )
# define WXDLLEXPORT_DATA(type) __declspec( dllexport ) type
# define WXDLLIMPORT
#endif
+#ifdef __cplusplus
class WXDLLEXPORT wxObject;
class WXDLLEXPORT wxEvent;
+#endif
/** symbolic constant used by all Find()-like functions returning positive
integer on success as failure indicator */
// ----------------------------------------------------------------------------
// everybody gets the assert and other debug macros
+#ifdef __cplusplus
#include "wx/debug.h"
+#endif
//@{
/// delete pointer if it is not NULL and NULL it afterwards
#endif
// Callback function type definition
+#ifdef __cplusplus
typedef void (*wxFunction) (wxObject&, wxEvent&);
+#endif
// ----------------------------------------------------------------------------
// OS mnemonics -- Identify the running OS (useful for Windows)
wxSHRINK = 0x1000,
wxGROW = 0x2000,
wxEXPAND = wxGROW,
- wxSHAPED = 0x4000
+ wxSHAPED = 0x4000,
+ wxADJUST_MINSIZE = 0x8000
};
// ----------------------------------------------------------------------------
#define wxTINY_CAPTION_VERT 0x0080
#define wxRESIZE_BORDER 0x0040
+#define wxDIALOG_NO_PARENT 0x0001 // Don't make owned by apps top window
+#define wxFRAME_NO_TASKBAR 0x0002 // No taskbar button (MSW only)
+#define wxFRAME_TOOL_WINDOW 0x0004 // No taskbar button, no system menu
+
// deprecated versions defined for compatibility reasons
#define wxRESIZE_BOX wxMAXIMIZE_BOX
#define wxTHICK_FRAME wxRESIZE_BORDER
+// obsolete styles, unused any more
#define wxDIALOG_MODAL 0x0020
#define wxDIALOG_MODELESS 0x0000
#define wxSP_FULLSASH 0x0400
#define wxSP_3D (wxSP_3DBORDER | wxSP_3DSASH)
-/*
- * wxFrame extra flags
- */
-// No title on taskbar
-#define wxFRAME_TOOL_WINDOW 0x0004
-
/*
* wxTabCtrl flags
*/
wxPRINT_MODE_PRINTER = 3 // Send to printer
} wxPrintMode;
-// ---------------------------------------------------------------------------
-// Macro to specify "All Files" on different platforms
-// ---------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
+// miscellaneous
+// ----------------------------------------------------------------------------
+
+// define this macro if font handling is done using the X font names
+#if defined(__WXGTK__) || defined(__X__)
+ #define _WX_X_FONTLIKE
+#endif
+
+// macro to specify "All Files" on different platforms
#if defined(__WXMSW__)
# define wxALL_FILES_PATTERN "*.*"
# define wxALL_FILES gettext_noop("All files (*.*)|*.*")
# define wxALL_FILES_PATTERN "*"
# define wxALL_FILES gettext_noop("All files (*)|*")
#endif
+
// ---------------------------------------------------------------------------
// macros that enable wxWindows apps to be compiled in absence of the
// sytem headers, although some platform specific types are used in the
// WIN32 graphics types for OS/2 GPI
// RGB under OS2 is more like a PALETTEENTRY struct under Windows so we need a real RGB def
-#define OS2RGB(r,g,b) ((DWORD ((BYTE) (r) | ((WORD) (g) << 8)) | (((DWORD)(BYTE)(b)) << 16)))
+#define OS2RGB(r,g,b) ((DWORD ((BYTE) (b) | ((WORD) (g) << 8)) | (((DWORD)(BYTE)(r)) << 16)))
typedef unsigned long COLORREF;
#define GetBValue(rgb) ((BYTE)((rgb) >> 16))