X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f3ef286feebe70940b7db95f89eae01eabeee749..0cdf89abb10990c7f0152aabc464425a5478157f:/include/wx/defs.h diff --git a/include/wx/defs.h b/include/wx/defs.h index 93781978a6..5154c388ab 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -16,6 +16,12 @@ #pragma interface "defs.h" #endif + +// needed to handle strings with xgettext: +#ifndef gettext_noop +# define gettext_noop(x) x +#endif + // ---------------------------------------------------------------------------- // compiler and OS identification // ---------------------------------------------------------------------------- @@ -132,8 +138,10 @@ // we are setting this define because of the complex check // using NORLANDER as Cygwin may follow. (header author is Anders Norlander) #if defined(__MINGW32__) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95))) +#ifndef wxUSE_NORLANDER_HEADERS # define wxUSE_NORLANDER_HEADERS 1 #endif +#endif ////////////////////////////////////////////////////////////////////////////////// @@ -274,7 +282,9 @@ // Cygwin supports bool #define HAVE_BOOL #elif defined(__VISAGECPP__) - typedef unsigned long bool; + #if __IBMCPP__ < 400 + typedef unsigned long bool; + #endif #define HAVE_BOOL #endif // compilers #endif // HAVE_BOOL @@ -506,9 +516,25 @@ enum }; // ---------------------------------------------------------------------------- -// machine specific settings +// standard wxWindows types // ---------------------------------------------------------------------------- +// the type for screen and DC coordinates + +#if wxUSE_COMPATIBLE_COORD_TYPES + // to ensure compatibility with 2.0, we must use long + #define wxCoord long +#else // !wxUSE_COMPATIBLE_COORD_TYPES + #ifdef __WIN16__ + // under Win16, int is too small, so use long to allow for bigger + // virtual canvases + typedef long wxCoord; + #else // !Win16 + // other platforms we support have at least 32bit int - quite enough + typedef int wxCoord; + #endif // Win16/!Win16 +#endif // wxUSE_COMPATIBLE_COORD_TYPES/!wxUSE_COMPATIBLE_COORD_TYPES + // fixed length types #define wxInt8 char signed @@ -560,6 +586,10 @@ enum #define wxByte wxUint8 #define wxWord wxUint16 +// ---------------------------------------------------------------------------- +// byte ordering related definition and macros +// ---------------------------------------------------------------------------- + // byte sex #define wxBIG_ENDIAN 4321 @@ -953,19 +983,19 @@ enum wxStretch /* * wxSpinButton flags */ -#define wxSP_VERTICAL 0x0004 -#define wxSP_HORIZONTAL 0x0008 -#define wxSP_ARROW_KEYS 0x0010 -#define wxSP_WRAP 0x0020 +#define wxSP_HORIZONTAL wxHORIZONTAL // 4 +#define wxSP_VERTICAL wxVERTICAL // 8 +#define wxSP_ARROW_KEYS 0x0010 +#define wxSP_WRAP 0x0020 /* * wxSplitterWindow flags */ -#define wxSP_NOBORDER 0x0000 -#define wxSP_3D 0x0004 -#define wxSP_BORDER 0x0008 -#define wxSP_PERMIT_UNSPLIT 0x0010 -#define wxSP_LIVE_UPDATE 0x0020 +#define wxSP_NOBORDER 0x0000 +#define wxSP_3D 0x0010 +#define wxSP_BORDER 0x0020 +#define wxSP_PERMIT_UNSPLIT 0x0040 +#define wxSP_LIVE_UPDATE 0x0080 /* * wxFrame extra flags @@ -977,14 +1007,14 @@ enum wxStretch * wxTabCtrl flags */ #define wxTC_MULTILINE 0x0000 -#define wxTC_RIGHTJUSTIFY 0x0004 -#define wxTC_FIXEDWIDTH 0x0008 -#define wxTC_OWNERDRAW 0x0010 +#define wxTC_RIGHTJUSTIFY 0x0010 +#define wxTC_FIXEDWIDTH 0x0020 +#define wxTC_OWNERDRAW 0x0040 /* * wxNotebook flags */ -#define wxNB_FIXEDWIDTH 0x0008 +#define wxNB_FIXEDWIDTH 0x0010 #define wxNB_LEFT 0x0020 #define wxNB_RIGHT 0x0040 #define wxNB_BOTTOM 0x0080 @@ -992,7 +1022,7 @@ enum wxStretch /* * wxStatusBar95 flags */ -#define wxST_SIZEGRIP 0x0002 +#define wxST_SIZEGRIP 0x0010 /* * wxStaticLine flags @@ -1223,28 +1253,29 @@ typedef enum #define wxTOOL_LEFT 3 #define wxTOOL_RIGHT 4 - +// the values of the format constants should be the same as correspondign +// CF_XXX constants in Windows API enum wxDataFormatId { - wxDF_INVALID = 0, - wxDF_TEXT = 1, /* CF_TEXT */ - wxDF_BITMAP = 2, /* CF_BITMAP */ - wxDF_METAFILE = 3, /* CF_METAFILEPICT */ - wxDF_SYLK = 4, - wxDF_DIF = 5, - wxDF_TIFF = 6, - wxDF_OEMTEXT = 7, /* CF_OEMTEXT */ - wxDF_DIB = 8, /* CF_DIB */ - wxDF_PALETTE = 9, - wxDF_PENDATA = 10, - wxDF_RIFF = 11, - wxDF_WAVE = 12, - wxDF_UNICODETEXT = 13, - wxDF_ENHMETAFILE = 14, - wxDF_FILENAME = 15, /* CF_HDROP */ - wxDF_LOCALE = 16, - wxDF_PRIVATE = 20, - wxDF_MAX + wxDF_INVALID = 0, + wxDF_TEXT = 1, /* CF_TEXT */ + wxDF_BITMAP = 2, /* CF_BITMAP */ + wxDF_METAFILE = 3, /* CF_METAFILEPICT */ + wxDF_SYLK = 4, + wxDF_DIF = 5, + wxDF_TIFF = 6, + wxDF_OEMTEXT = 7, /* CF_OEMTEXT */ + wxDF_DIB = 8, /* CF_DIB */ + wxDF_PALETTE = 9, + wxDF_PENDATA = 10, + wxDF_RIFF = 11, + wxDF_WAVE = 12, + wxDF_UNICODETEXT = 13, + wxDF_ENHMETAFILE = 14, + wxDF_FILENAME = 15, /* CF_HDROP */ + wxDF_LOCALE = 16, + wxDF_PRIVATE = 20, + wxDF_MAX }; /* Virtual keycodes */ @@ -1482,6 +1513,16 @@ typedef enum { wxPRINT_MODE_PRINTER = 3 // Send to printer } wxPrintMode; +// --------------------------------------------------------------------------- +// Macro to specify "All Files" on different platforms +// --------------------------------------------------------------------------- +#if defined(__WXMSW__) +# define wxALL_FILES_PATTERN "*.*" +# define wxALL_FILES gettext_noop("All files (*.*)|*.*") +#else +# 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 @@ -1517,6 +1558,8 @@ typedef long WXLPARAM; # define WXLPARAM MPARAM # define RECT RECTL # define LOGFONT FATTRS +# define LOWORD SHORT1FROMMP +# define HIWORD SHORT2FROMMP #endif typedef unsigned long WXCOLORREF; typedef void * WXRGNDATA;