#ifndef _WX_DEFS_H_
#define _WX_DEFS_H_
-// NOTE: this symbol will be replaced with "WXWIN_COMPATIBILITY_3_0" as soon
-// as the development branch for 3.1 is created
+/*
+ NOTE: this symbol will be replaced with "WXWIN_COMPATIBILITY_3_0" as soon
+ as the development branch for 3.1 is created
+ */
#define FUTURE_WXWIN_COMPATIBILITY_3_0 1
#define wxDEPRECATED_FUTURE( x ) x
# pragma warning(disable:4514) /* unreferenced inline func has been removed */
# pragma warning(disable:4710) /* function not inlined */
- // TODO: this warning should really be enabled as it can be genuinely
- // useful, check where does it occur in wxWidgets
+ /*
+ TODO: this warning should really be enabled as it can be genuinely
+ useful, check where does it occur in wxWidgets
+ */
#pragma warning(disable: 4127) /* conditional expression is constant */
/* There are too many false positivies for this one, particularly when
*/
#if wxUSE_STD_CONTAINERS
# pragma warning(disable:4275)
-#endif /// wxUSE_STD_CONTAINERS
+#endif /* wxUSE_STD_CONTAINERS */
# ifdef __VISUALC5__
/* For VC++ 5.0 for release mode, the warning 'C4702: unreachable code */
*/
#ifdef __VISUALC6__
#pragma warning(disable: 4284)
- #endif // VC6
+ #endif /* VC6 */
/*
When compiling with VC++ 7 /Wp64 option we get thousands of warnings for
#ifndef HAVE_WOSTREAM
- // Mingw <= 3.4 and all versions of Cygwin as well as any gcc version (so
- // far) targeting PalmOS don't have std::wostream
+ /*
+ Mingw <= 3.4 and all versions of Cygwin as well as any gcc version (so
+ far) targeting PalmOS don't have std::wostream
+ */
#if defined(__PALMOS__) || \
(defined(__MINGW32__) && !wxCHECK_GCC_VERSION(4, 0)) || \
defined(__CYGWIN__)
#define wxNO_WOSTREAM
#endif
- // VC++ doesn't have it in the old iostream library
+ /* VC++ doesn't have it in the old iostream library */
#if defined(__VISUALC__) && wxUSE_IOSTREAMH
#define wxNO_WOSTREAM
#endif
#undef wxNO_WOSTREAM
#endif /* HAVE_WOSTREAM */
-// ----------------------------------------------------------------------------
-// other C++ features
-// ----------------------------------------------------------------------------
+/* ---------------------------------------------------------------------------- */
+/* other C++ features */
+/* ---------------------------------------------------------------------------- */
#ifndef HAVE_PARTIAL_SPECIALIZATION
- // be optimistic by default
+ /* be optimistic by default */
#define HAVE_PARTIAL_SPECIALIZATION
#endif
#if __VISUALC__ < 1310
#undef HAVE_PARTIAL_SPECIALIZATION
#endif
-#endif // __VISUALC__
+#endif /* __VISUALC__ */
#ifndef HAVE_TEMPLATE_OVERLOAD_RESOLUTION
- // assume the compiler can use type or const expressions as template
- // arguments if it supports partial specialization -- except if it's a
- // Borland one which can't
+ /* assume the compiler can use type or const expressions as template
+ arguments if it supports partial specialization -- except if it's a
+ Borland one which can't */
#if defined(HAVE_PARTIAL_SPECIALIZATION) && !defined(__BORLANDC__)
#define HAVE_TEMPLATE_OVERLOAD_RESOLUTION
- #endif // __BORLANDC__
-#endif // !defined(HAVE_TEMPLATE_OVERLOAD_RESOLUTION)
+ #endif /* (HAVE_PARTIAL_SPECIALIZATION) && !defined(__BORLANDC__) */
+#endif /* !defined(HAVE_TEMPLATE_OVERLOAD_RESOLUTION) */
/* ---------------------------------------------------------------------------- */
/* portable calling conventions macros */
#define wxLL(x) wxCONCAT(x, wxLongLongSuffix)
#define wxULL(x) wxCONCAT(x, wxCONCAT(u, wxLongLongSuffix))
#else
- // Currently only Borland compiler has broken concatenation operator
- // and this compiler is known to use [u]i64 suffix.
+ /*
+ Currently only Borland compiler has broken concatenation operator
+ and this compiler is known to use [u]i64 suffix.
+ */
#define wxLL(x) wxAPPEND_i64(x)
#define wxULL(x) wxAPPEND_ui64(x)
#endif
#ifdef __UNIX__
#include <sys/types.h>
#endif
-#else // !HAVE_SSIZE_T
+#else /* !HAVE_SSIZE_T */
#if SIZEOF_SIZE_T == 4
typedef wxInt32 ssize_t;
#elif SIZEOF_SIZE_T == 8
#define HAVE_SSIZE_T
#endif
-// we can't rely on Windows _W64 being defined as windows.h may not be included
-// so define our own equivalent: this should be used with types like WXLPARAM
-// or WXWPARAM which are 64 bit under Win64 to avoid warnings each time we cast
-// it to a pointer or a handle (which results in hundreds of warnings as Win32
-// API often passes pointers in them)
+/*
+ We can't rely on Windows _W64 being defined as windows.h may not be
+ included so define our own equivalent: this should be used with types
+ like WXLPARAM or WXWPARAM which are 64 bit under Win64 to avoid warnings
+ each time we cast it to a pointer or a handle (which results in hundreds
+ of warnings as Win32 API often passes pointers in them)
+ */
#if wxCHECK_VISUALC_VERSION(7)
#define wxW64 __w64
#else
Define signed and unsigned integral types big enough to contain all of long,
size_t and void *.
*/
-#if SIZEOF_SIZE_T >= SIZEOF_VOID_P
+#if SIZEOF_LONG >= SIZEOF_VOID_P
+ /*
+ Normal case when long is the largest integral type.
+ */
+ typedef long wxIntPtr;
+ typedef unsigned long wxUIntPtr;
+#elif SIZEOF_SIZE_T >= SIZEOF_VOID_P
/*
Win64 case: size_t is the only integral type big enough for "void *".
*/
typedef wxW64 ssize_t wxIntPtr;
typedef size_t wxUIntPtr;
-#elif SIZEOF_LONG >= SIZEOF_VOID_P
- /*
- Normal case when long is the largest integral type.
- */
- typedef long wxIntPtr;
- typedef unsigned long wxUIntPtr;
#else
/*
This should never happen for the current architectures but if you're
/* ---------------------------------------------------------------------------- */
#if defined(__GNUC__) && !wxCHECK_GCC_VERSION( 3, 4 )
- // GCC <= 3.4 has buggy template support
+ /* GCC <= 3.4 has buggy template support */
# define wxUSE_MEMBER_TEMPLATES 0
#endif
#if defined(_MSC_VER) && _MSC_VER <= 1200
- // MSVC <= 6.0 has buggy template support
+ /* MSVC <= 6.0 has buggy template support */
# define wxUSE_MEMBER_TEMPLATES 0
# define wxUSE_FUNC_TEMPLATE_POINTER 0
#endif
enum wxAlignment
{
- // 0 is a valid wxAlignment value (both wxALIGN_LEFT and wxALIGN_TOP use
- // it) so define a symbolic name for an invalid alignment value which can
- // be assumed to be different from anything else
+ /*
+ 0 is a valid wxAlignment value (both wxALIGN_LEFT and wxALIGN_TOP
+ use it) so define a symbolic name for an invalid alignment value
+ which can be assumed to be different from anything else
+ */
wxALIGN_INVALID = -1,
wxALIGN_NOT = 0x0000,
/* misc. flags for wxSizer items */
enum wxSizerFlagBits
{
- // wxADJUST_MINSIZE doesn't do anything any more but we still define it for
- // compatibility. Notice that it may be also predefined (as 0, hopefully)
- // in the user code in order to use it even in !WXWIN_COMPATIBILITY_2_8
- // builds so don't redefine it in such case.
+ /*
+ wxADJUST_MINSIZE doesn't do anything any more but we still define
+ it for compatibility. Notice that it may be also predefined (as 0,
+ hopefully) in the user code in order to use it even in
+ !WXWIN_COMPATIBILITY_2_8 builds so don't redefine it in such case.
+ */
#if WXWIN_COMPATIBILITY_2_8 && !defined(wxADJUST_MINSIZE)
wxADJUST_MINSIZE = 0,
#endif
*/
enum wxBackgroundStyle
{
- // background is erased in the EVT_ERASE_BACKGROUND handler or using the
- // system default background if no such handler is defined (this is the
- // default style)
+ /*
+ background is erased in the EVT_ERASE_BACKGROUND handler or using
+ the system default background if no such handler is defined (this
+ is the default style)
+ */
wxBG_STYLE_ERASE,
- // background is erased by the system, no EVT_ERASE_BACKGROUND event is
- // generated at all
+ /*
+ background is erased by the system, no EVT_ERASE_BACKGROUND event
+ is generated at all
+ */
wxBG_STYLE_SYSTEM,
- // background is erased in EVT_PAINT handler and not erased at all before
- // it, this should be used if the paint handler paints over the entire
- // window to avoid flicker
+ /*
+ background is erased in EVT_PAINT handler and not erased at all
+ before it, this should be used if the paint handler paints over
+ the entire window to avoid flicker
+ */
wxBG_STYLE_PAINT,
- // this is a Mac-only style, don't use in portable code
+ /* this is a Mac-only style, don't use in portable code */
wxBG_STYLE_TRANSPARENT,
- // this style is deprecated and doesn't do anything, don't use
+ /* this style is deprecated and doesn't do anything, don't use */
wxBG_STYLE_COLOUR,
- // this style is deprecated and is synonymous with wxBG_STYLE_PAINT, use
- // the new name
+ /*
+ this style is deprecated and is synonymous with
+ wxBG_STYLE_PAINT, use the new name
+ */
wxBG_STYLE_CUSTOM = wxBG_STYLE_PAINT
};
wxITEM_MAX
};
+/*
+ * The possible states of a 3-state checkbox (Compatible
+ * with the 2-state checkbox).
+ */
+enum wxCheckBoxState
+{
+ wxCHK_UNCHECKED,
+ wxCHK_CHECKED,
+ wxCHK_UNDETERMINED /* 3-state checkbox only */
+};
+
+
/* hit test results */
enum wxHitTest
{
WXK_CONTROL_Y,
WXK_CONTROL_Z,
- WXK_BACK = 8, // backspace
+ WXK_BACK = 8, /* backspace */
WXK_TAB = 9,
WXK_RETURN = 13,
WXK_ESCAPE = 27,
WXK_WINDOWS_LEFT,
WXK_WINDOWS_RIGHT,
WXK_WINDOWS_MENU ,
- WXK_COMMAND,
+#ifdef __WXOSX__
+ WXK_RAW_CONTROL,
+#else
+ WXK_RAW_CONTROL = WXK_CONTROL,
+#endif
+ WXK_COMMAND = WXK_CONTROL,
/* Hardware-specific buttons */
WXK_SPECIAL1 = 193,
wxMOD_META = 0x0008,
wxMOD_WIN = wxMOD_META,
#if defined(__WXMAC__) || defined(__WXCOCOA__)
- wxMOD_CMD = wxMOD_META,
+ wxMOD_RAW_CONTROL = 0x0010,
#else
- wxMOD_CMD = wxMOD_CONTROL,
+ wxMOD_RAW_CONTROL = wxMOD_CONTROL,
#endif
+ wxMOD_CMD = wxMOD_CONTROL,
wxMOD_ALL = 0xffff
};
typedef const void * CFTypeRef;
-// typedef const struct __CFString * CFStringRef;
+/* typedef const struct __CFString * CFStringRef; */
#define DECLARE_WXOSX_OPAQUE_CFREF( name ) typedef struct __##name* name##Ref;
#define DECLARE_WXOSX_OPAQUE_CONST_CFREF( name ) typedef const struct __##name* name##Ref;
#endif
-#endif // __WXMAC__
+#endif /* __WXMAC__ */
#if defined(__WXPALMOS__)
#ifdef __WXGTK__
/* Stand-ins for GLIB types */
-typedef char gchar;
-typedef signed char gint8;
-typedef int gint;
-typedef unsigned guint;
-typedef unsigned long gulong;
-typedef void* gpointer;
typedef struct _GSList GSList;
/* Stand-ins for GDK types */
typedef struct _GdkColor GdkColor;
-typedef struct _GdkColormap GdkColormap;
-typedef struct _GdkFont GdkFont;
-typedef struct _GdkGC GdkGC;
-typedef struct _GdkVisual GdkVisual;
-
-#ifdef __WXGTK20__
-typedef struct _GdkAtom *GdkAtom;
-typedef struct _GdkDrawable GdkWindow;
-typedef struct _GdkDrawable GdkBitmap;
-typedef struct _GdkDrawable GdkPixmap;
-#else /* GTK+ 1.2 */
-typedef gulong GdkAtom;
-typedef struct _GdkWindow GdkWindow;
-typedef struct _GdkWindow GdkBitmap;
-typedef struct _GdkWindow GdkPixmap;
-#endif /* GTK+ 1.2/2.0 */
-
typedef struct _GdkCursor GdkCursor;
-typedef struct _GdkRegion GdkRegion;
typedef struct _GdkDragContext GdkDragContext;
-#ifdef HAVE_XIM
-typedef struct _GdkIC GdkIC;
-typedef struct _GdkICAttr GdkICAttr;
+#if defined(__WXGTK20__)
+ typedef struct _GdkAtom* GdkAtom;
+#else
+ typedef unsigned long GdkAtom;
+#endif
+
+#if !defined(__WXGTK30__)
+ typedef struct _GdkColormap GdkColormap;
+ typedef struct _GdkFont GdkFont;
+ typedef struct _GdkGC GdkGC;
+ typedef struct _GdkRegion GdkRegion;
+#endif
+
+#if defined(__WXGTK30__)
+ typedef struct _GdkWindow GdkWindow;
+#elif defined(__WXGTK20__)
+ typedef struct _GdkDrawable GdkWindow;
+ typedef struct _GdkDrawable GdkPixmap;
+#else
+ typedef struct _GdkWindow GdkWindow;
+ typedef struct _GdkWindow GdkBitmap;
+ typedef struct _GdkWindow GdkPixmap;
#endif
/* Stand-ins for GTK types */
typedef struct _GtkWidget GtkWidget;
typedef struct _GtkRcStyle GtkRcStyle;
typedef struct _GtkAdjustment GtkAdjustment;
-typedef struct _GtkList GtkList;
typedef struct _GtkToolbar GtkToolbar;
typedef struct _GtkNotebook GtkNotebook;
typedef struct _GtkNotebookPage GtkNotebookPage;
typedef struct _GtkAccelGroup GtkAccelGroup;
-typedef struct _GtkItemFactory GtkItemFactory;
typedef struct _GtkSelectionData GtkSelectionData;
typedef struct _GtkTextBuffer GtkTextBuffer;
typedef struct _GtkRange GtkRange;
private: \
classname& operator=(const classname&)
-// deprecated variants _not_ requiring a semicolon after them
+/* deprecated variants _not_ requiring a semicolon after them */
#define DECLARE_NO_COPY_CLASS(classname) \
wxDECLARE_NO_COPY_CLASS(classname);
#define DECLARE_NO_COPY_TEMPLATE_CLASS(classname, arg) \