#pragma interface "defs.h"
#endif
+
+// needed to handle strings with xgettext:
+#ifndef gettext_noop
+# define gettext_noop(x) x
+#endif
+
// ----------------------------------------------------------------------------
// compiler and OS identification
// ----------------------------------------------------------------------------
// 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
//////////////////////////////////////////////////////////////////////////////////
// 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
// wxCALLBACK should be used for the functions which are called back by
// Windows (such as compare function for wxListCtrl)
#if defined(__WXMSW__)
- #if defined(__MINGW32__)
+ #if defined(__MINGW32__) || defined(__GNUWIN32__)
#define wxCALLBACK __attribute__((stdcall))
#else
// both VC++ and Borland understand this
};
// ----------------------------------------------------------------------------
-// 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
#define wxByte wxUint8
#define wxWord wxUint16
+// ----------------------------------------------------------------------------
+// byte ordering related definition and macros
+// ----------------------------------------------------------------------------
+
// byte sex
#define wxBIG_ENDIAN 4321
enum wxAlignment
{
wxALIGN_NOT = 0x0000,
- wxALIGN_CENTER = 0x0100,
- wxALIGN_CENTRE = wxALIGN_CENTER,
+ wxALIGN_CENTER_HORIZONTAL = 0x0100,
+ wxALIGN_CENTRE_HORIZONTAL = wxALIGN_CENTER_HORIZONTAL,
wxALIGN_LEFT = wxALIGN_NOT,
wxALIGN_TOP = wxALIGN_NOT,
wxALIGN_RIGHT = 0x0200,
- wxALIGN_BOTTOM = 0x0400
+ wxALIGN_BOTTOM = 0x0400,
+ wxALIGN_CENTER_VERTICAL = 0x0800,
+ wxALIGN_CENTRE_VERTICAL = wxALIGN_CENTER_VERTICAL,
+
+ wxALIGN_CENTER = (wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL),
+ wxALIGN_CENTRE = wxALIGN_CENTER
};
enum wxStretch
wxSTRETCH_NOT = 0x0000,
wxSHRINK = 0x1000,
wxGROW = 0x2000,
- wxEXPAND = wxGROW
+ wxEXPAND = wxGROW,
+ wxSHAPED = 0x4000
};
// ----------------------------------------------------------------------------
#else
// Under Unix, the dialogs don't have a system menu. Specifying
// wxSYSTEM_MENU here, will make a close button appear.
-# define wxDEFAULT_DIALOG_STYLE (wxCAPTION)
+# define wxDEFAULT_DIALOG_STYLE (wxCAPTION|wxTHICK_FRAME)
#endif
/*
/*
* 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
* 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
/*
* wxStatusBar95 flags
*/
-#define wxST_SIZEGRIP 0x0002
+#define wxST_SIZEGRIP 0x0010
+
+/*
+ * wxStaticText flags
+ */
+#define wxST_NO_AUTORESIZE 0x0001
/*
* wxStaticLine flags
#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 */
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
// platform specific (implementation) parts of the headers
// ---------------------------------------------------------------------------
+#ifdef __WXMAC__
+
+typedef WindowPtr WXHWND;
+typedef Handle WXHANDLE;
+typedef CIconHandle WXHICON;
+//typedef unsigned long WXHFONT;
+typedef MenuHandle WXHMENU;
+//typedef unsigned long WXHPEN;
+//typedef unsigned long WXHBRUSH;
+//typedef unsigned long WXHPALETTE;
+typedef CursHandle WXHCURSOR;
+typedef RgnHandle WXHRGN;
+//typedef unsigned long WXHACCEL;
+//typedef unsigned long WXHINSTANCE;
+typedef GWorldPtr WXHBITMAP;
+//typedef unsigned long WXHIMAGELIST;
+//typedef unsigned long WXHGLOBAL;
+typedef GrafPtr WXHDC;
+typedef unsigned int WXUINT;
+typedef unsigned long WXDWORD;
+typedef unsigned short WXWORD;
+//typedef unsigned int WXWPARAM;
+//typedef long WXLPARAM;
+typedef RGBColor WXCOLORREF;
+//typedef void * WXRGNDATA;
+//typedef void * WXMSG;
+//typedef unsigned long WXHCONV;
+//typedef unsigned long WXHKEY;
+//typedef void * WXDRAWITEMSTRUCT;
+//typedef void * WXMEASUREITEMSTRUCT;
+//typedef void * WXLPCREATESTRUCT;
+typedef int (*WXFARPROC)();
+
+typedef WindowPtr WXWindow;
+typedef ControlHandle WXWidget;
+
+#endif
+
#if defined(__WXMSW__) || defined(__WXPM__)
// Stand-ins for Windows types or OS/2, to avoid #including all of windows.h or os2.h
typedef unsigned long WXHWND;
# define WXLPARAM MPARAM
# define RECT RECTL
# define LOGFONT FATTRS
-#endif
+# define LOWORD SHORT1FROMMP
+# define HIWORD SHORT2FROMMP
+#endif // __WXMSW__
typedef unsigned long WXCOLORREF;
typedef void * WXRGNDATA;
typedef void * WXMSG;
typedef void* WXRESULT;
typedef int (*WXFARPROC)();
// some windows handles not defined by PM
+typedef unsigned long COLORREF;
typedef unsigned long HANDLE;
typedef unsigned long HICON;
typedef unsigned long HFONT;
#endif
typedef WXHWND WXWidget;
+
+#if defined(__BORLANDC__) && !defined(__WIN32__)
+#ifndef LPTSTR
+#define LPTSTR LPSTR
+#endif
+#ifndef LPCTSTR
+#define LPCTSTR LPSTR
+#endif
+#endif
+
#endif // MSW
#ifdef __WXMOTIF__