X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5d5b3a40f3335232fbc8598c6e775932fa393c05..62ea506eafa485756b6bdb2f3cbb0d1fcb91b6d2:/include/wx/defs.h diff --git a/include/wx/defs.h b/include/wx/defs.h index 0657052294..d1717e5a40 100644 --- a/include/wx/defs.h +++ b/include/wx/defs.h @@ -62,7 +62,10 @@ #endif // Place other OS/2 compiler environment defines here - #define LINKAGEMODE _Optlink + #if defined(__VISAGECPP__) + // VisualAge is the only thing that understands _Optlink + #define LINKAGEMODE _Optlink + #endif #else // Windows #ifndef __WINDOWS__ #define __WINDOWS__ @@ -317,19 +320,35 @@ typedef int wxWindowID; #define WXUNUSED(identifier) identifier #endif +// some arguments are only used in debug mode, but unused in release one +#ifdef __WXDEBUG__ + #define WXUNUSED_UNLESS_DEBUG(param) param +#else + #define WXUNUSED_UNLESS_DEBUG(param) WXUNUSED(param) +#endif + // ---------------------------------------------------------------------------- // portable calling conventions macros // ---------------------------------------------------------------------------- -// wxCALLBACK should be used for the functions which are called back by -// Windows (such as compare function for wxListCtrl) -#if defined(__WIN32__) - #if defined(__MINGW32__) || defined(__GNUWIN32__) - #define wxCALLBACK __attribute__((stdcall)) +// stdcall is used for all functions called by Windows under Windows +#ifdef __WINDOWS__ + #if defined(__GNUWIN32__) + #define wxSTDCALL __attribute__((stdcall)) #else // both VC++ and Borland understand this - #define wxCALLBACK _stdcall + #define wxSTDCALL _stdcall #endif + +#else // Win + // no such stupidness under Unix + #define wxSTDCALL +#endif // platform + +// wxCALLBACK should be used for the functions which are called back by +// Windows (such as compare function for wxListCtrl) +#if defined(__WIN32__) + #define wxCALLBACK wxSTDCALL #else // no stdcall under Unix nor Win16 #define wxCALLBACK @@ -371,6 +390,22 @@ typedef int wxWindowID; # define WXDLLEXPORT_CTORFN # endif +#elif defined(__GNUC__) + +# ifdef WXMAKINGDLL +# define WXDLLEXPORT __declspec( dllexport ) +# define WXDLLEXPORT_DATA(type) __declspec( dllexport ) type +# define WXDLLEXPORT_CTORFN +# elif defined(WXUSINGDLL) +# define WXDLLEXPORT __declspec( dllimport ) +# define WXDLLEXPORT_DATA(type) __declspec( dllimport ) type +# define WXDLLEXPORT_CTORFN +# else +# define WXDLLEXPORT +# define WXDLLEXPORT_DATA(type) type +# define WXDLLEXPORT_CTORFN +# endif + #elif defined(__WXPM__) # ifdef WXMAKINGDLL @@ -1111,6 +1146,15 @@ enum wxStretch #define wxHW_SCROLLBAR_NEVER 0x0002 #define wxHW_SCROLLBAR_AUTO 0x0004 +/* + * wxCalendarCtrl flags + */ +#define wxCAL_SUNDAY_FIRST 0x0000 +#define wxCAL_MONDAY_FIRST 0x0001 +#define wxCAL_SHOW_HOLIDAYS 0x0002 +#define wxCAL_NO_YEAR_CHANGE 0x0004 +#define wxCAL_NO_MONTH_CHANGE 0x000c // no month change => no year change + /* * extended dialog specifiers. these values are stored in a different * flag and thus do not overlap with other style flags. note that these @@ -1749,6 +1793,19 @@ typedef WXHWND WXWidget; #endif #endif +// the keywords needed for WinMain() declaration +#ifdef __WIN16__ + #ifndef FAR + #ifdef __VISUALC__ + #define FAR __far + #else // !VC++ + #define FAR _far + #endif + #endif // no FAR +#else // Win32 + #define FAR +#endif // Win16/32 + #endif // MSW #ifdef __WXMOTIF__ @@ -1787,9 +1844,15 @@ typedef struct _GdkColor GdkColor; typedef struct _GdkColormap GdkColormap; typedef struct _GdkFont GdkFont; typedef struct _GdkGC GdkGC; -typedef struct _GdkWindow GdkWindow; -typedef struct _GdkWindow GdkBitmap; -typedef struct _GdkWindow GdkPixmap; +#ifdef __WXGTK13__ + typedef struct _GdkDrawable GdkWindow; + typedef struct _GdkDrawable GdkBitmap; + typedef struct _GdkDrawable GdkPixmap; +#else + typedef struct _GdkWindow GdkWindow; + typedef struct _GdkWindow GdkBitmap; + typedef struct _GdkWindow GdkPixmap; +#endif typedef struct _GdkCursor GdkCursor; typedef struct _GdkRegion GdkRegion; typedef struct _GdkDragContext GdkDragContext;