#endif
#endif // Win32
+#if defined(__WXMSW__) || defined(__WIN32__)
+ #if !defined(__WINDOWS__)
+ #define __WINDOWS__
+ #endif
+#endif
+
#ifdef __WXWINE__
#ifndef __WIN32__
#define __WIN32__
#define __HPUX__
#endif // HP-UX
- #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
+ #if defined(__WXMAC__) && defined(__DARWIN__)
+ // Mac OS X
+
+ // Some code has been added to workaround defects(?) in the
+ // bundled gcc compiler. These corrections are identified by:
+ // __DARWIN__ for corrections necessary for Darwin (wxMac, wxMotif)
#include <Carbon/Carbon.h>
- #endif // __APPLE__
+ #endif // __WXMAC__ && __DARWIN__
#elif defined(applec) || \
defined(THINK_C) || \
(defined(__MWERKS__) && !defined(__INTEL__))
// MacOS
-#elif defined(__WXMAC__) && defined(__APPLE__)
- // MacOS X
+#elif defined(__WXMAC__) && defined(__DARWIN__)
+ // Mac OS 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
+ // Some code has been added to workaround defects(?) in the
+ // bundled gcc compiler. These corrections are identified by:
+ // __DARWIN__ for corrections necessary for Darwin (wxMac, wxMotif)
#include <Carbon/Carbon.h>
#elif defined(__OS2__)
#define __SYMANTECC__
#endif // compiler
- // size_t is the same as unsigned int for all Windows compilers we know
- #define wxSIZE_T_IS_UINT
+ // size_t is the same as unsigned int for all Windows compilers we know,
+ // so define it if it hadn't been done by configure yet
+ #if !defined(wxSIZE_T_IS_UINT) && !defined(wxSIZE_T_IS_ULONG)
+ #define wxSIZE_T_IS_UINT
+ #endif
#endif // OS
// if we're on a Unix system but didn't use configure (so that setup.h didn't
#error "Target can't be both X and Windows"
#elif !defined(__WXMOTIF__) && !defined(__WXMSW__) && !defined(__WXGTK__) && \
!defined(__WXPM__) && !defined(__WXMAC__) && !defined(__X__) && \
- !defined(__WXQT__) && !defined(__WXMGL__) && wxUSE_GUI
+ !defined(__WXMGL__) && wxUSE_GUI
#ifdef __UNIX__
#error "No Target! You should use wx-config program for compilation flags!"
#else // !Unix
// compatibility code
#if !wxUSE_GUI
#undef WXWIN_COMPATIBILITY_2
+ #undef WXWIN_COMPATIBILITY_2_2
+
#define WXWIN_COMPATIBILITY_2 0
+ #define WXWIN_COMPATIBILITY_2_2 0
#endif // !GUI
// ============================================================================
// wxCALLBACK should be used for the functions which are called back by
// Windows (such as compare function for wxListCtrl)
-#if defined(__WIN32__)
+#if defined(__WIN32__) && !defined(__WXMICROWIN__)
#define wxCALLBACK wxSTDCALL
#else
// no stdcall under Unix nor Win16
wxGTK_WIN32, // GTK on Win32
wxGTK_OS2, // GTK on OS/2
wxGTK_BEOS, // GTK on BeOS
- wxQT, // Qt
wxGEOS, // GEOS
wxOS2_PM, // OS/2 Workplace
wxWINDOWS, // Windows or WfW
#define wxLB_HSCROLL wxHSCROLL
// always show an entire number of rows
#define wxLB_INT_HEIGHT 0x0800
-/*
- * wxTextCtrl style flags
- */
-// the flag bits 0x0001, 2, 4 and 8 are free but should be used only for the
-// things which don't make sense for a text control used by wxTextEntryDialog
-// because they would otherwise conflict with wxOK, wxCANCEL, wxCENTRE
-#define wxTE_READONLY 0x0010
-#define wxTE_MULTILINE 0x0020
-#define wxTE_PROCESS_TAB 0x0040
-// this style means to use RICHEDIT control and does something only under wxMSW
-// and Win32 and is silently ignored under all other platforms
-#define wxTE_RICH 0x0080
-#define wxTE_NO_VSCROLL 0x0100
-#define wxTE_AUTO_SCROLL 0x0200
-#define wxTE_PROCESS_ENTER 0x0400
-#define wxTE_PASSWORD 0x0800
// use wxHSCROLL to not wrap text at all, wxTE_LINEWRAP to wrap it at any
// position and wxTE_WORDWRAP to wrap at words boundary
#define wxSB_HORIZONTAL wxHORIZONTAL
#define wxSB_VERTICAL wxVERTICAL
-/*
- * wxButton flags (Win32 only)
- */
-#define wxBU_AUTODRAW 0x0004
-#define wxBU_NOAUTODRAW 0x0000
-#define wxBU_LEFT 0x0040
-#define wxBU_TOP 0x0080
-#define wxBU_RIGHT 0x0100
-#define wxBU_BOTTOM 0x0200
-
-/*
- * wxTreeCtrl flags
- */
-#define wxTR_HAS_BUTTONS 0x0004
-#define wxTR_EDIT_LABELS 0x0008
-#define wxTR_LINES_AT_ROOT 0x0010
-
-#define wxTR_SINGLE 0x0000
-#define wxTR_MULTIPLE 0x0020
-#define wxTR_EXTENDED 0x0040
-#define wxTR_HAS_VARIABLE_ROW_HEIGHT 0x0080
-#define wxTR_NO_LINES 0x0100
-#define wxTR_MAC_BUTTONS 0x0200
-#define wxTR_ROW_LINES 0x0400
-
-/*
- * wxListCtrl flags
- */
-#define wxLC_VRULES 0x0001
-#define wxLC_HRULES 0x0002
-#define wxLC_ICON 0x0004
-#define wxLC_SMALL_ICON 0x0008
-#define wxLC_LIST 0x0010
-#define wxLC_REPORT 0x0020
-#define wxLC_ALIGN_TOP 0x0040
-#define wxLC_ALIGN_LEFT 0x0080
-#define wxLC_AUTOARRANGE 0x0100
-#define wxLC_USER_TEXT 0x0200
-#define wxLC_EDIT_LABELS 0x0400
-#define wxLC_NO_HEADER 0x0800
-#define wxLC_NO_SORT_HEADER 0x1000
-#define wxLC_SINGLE_SEL 0x2000
-#define wxLC_SORT_ASCENDING 0x4000
-#define wxLC_SORT_DESCENDING 0x8000
-
-#define wxLC_MASK_TYPE (wxLC_ICON | wxLC_SMALL_ICON | wxLC_LIST | wxLC_REPORT)
-#define wxLC_MASK_ALIGN (wxLC_ALIGN_TOP | wxLC_ALIGN_LEFT)
-#define wxLC_MASK_SORT (wxLC_SORT_ASCENDING | wxLC_SORT_DESCENDING)
-
-// Omitted because (a) too much detail (b) not enough style flags
-// #define wxLC_NO_SCROLL
-// #define wxLC_NO_LABEL_WRAP
-// #define wxLC_OWNERDRAW_FIXED
-// #define wxLC_SHOW_SEL_ALWAYS
-
/*
* wxSpinButton flags.
* Note that a wxSpinCtrl is sometimes defined as
#define wxSP_FULLSASH 0x0400
#define wxSP_3D (wxSP_3DBORDER | wxSP_3DSASH)
-/*
- * wxTabCtrl flags
- */
-#define wxTC_MULTILINE 0x0000
-#define wxTC_RIGHTJUSTIFY 0x0010
-#define wxTC_FIXEDWIDTH 0x0020
-#define wxTC_OWNERDRAW 0x0040
-
/*
* wxNotebook flags
*/
#define wxNB_BOTTOM 0x0080
#define wxNB_MULTILINE 0x0100
+/*
+ * wxTabCtrl flags
+ */
+#define wxTC_RIGHTJUSTIFY 0x0010
+#define wxTC_FIXEDWIDTH 0x0020
+#define wxTC_OWNERDRAW 0x0040
+#define wxTC_MULTILINE wxNB_MULTILINE
+
/*
* wxStatusBar95 flags
*/
} LOGPALETTE;
#endif //__WXPM__
-#if defined(__GNUWIN32__) || defined(__WXWINE__)
+#if defined(__GNUWIN32__) || defined(__WXWINE__) || defined(__WXMICROWIN__)
typedef int (*WXFARPROC)();
#elif defined(__WIN32__)
typedef int (__stdcall *WXFARPROC)();
typedef void* WXRegion;
typedef void* WXFont;
typedef void* WXImage;
-typedef void* WXCursor;
typedef void* WXFontList;
typedef unsigned long Atom; /* this might fail on a few architectures */
#endif // GTK
#ifdef __WXMGL__
-typedef void *WXWidget; // FIXME_MGL - type-safe
+typedef struct window_t *WXWidget;
#endif // MGL
// This is required because of clashing macros in windows.h, which may be