X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a1a2adef0792a4accda1a7c48052dbfd9511c5fa..ec6f69825afb90658c8b0b227ba25948527e1a82:/include/wx/setup.h?ds=sidebyside diff --git a/include/wx/setup.h b/include/wx/setup.h index 81b9de364c..0969a450ea 100644 --- a/include/wx/setup.h +++ b/include/wx/setup.h @@ -1,28 +1,77 @@ +/* + * The main configuration file for wxWindows. + * + * NB: this file can be included in .c files, so it must be compileable by a C + * compiler - use #ifdef __cplusplus for C++ specific features and avoid + * using C++ style comments + */ -#ifndef __SETUPH_BASE__ -#define __SETUPH_BASE__ - -// compatibility code, to be removed asap: - -#if ! defined(__WXMSW__) && ! defined(__WXGTK__) && ! defined(__WXMOTIF__) -# if defined(__WINDOWS__) -# define __WXMSW__ -# elif defined(__GTK__) -# define __WXGTK__ -# elif defined(__MOTIF__) -# define __WXMOTIF__ -# elif defined(__QT__) -# define __WXQT__ -# else -# error No __WXxxx__ define set! Please define __WXGTK__,__WXMSW__ or __WXMOTIF__. -# endif +#ifndef _WX_SETUP_H_BASE_ +#define _WX_SETUP_H_BASE_ + +/* compatibility code, to be removed asap: */ + +#if !defined(__WXMSW__) && !defined(__WXGTK__) && !defined(__WXMOTIF__) && !defined(__WXQT__) && !defined(__WXSTUBS__) && !defined(__WXMAC__) && !defined(__WXPM__) +#error No __WXxxx__ define set! Please define one of __WXGTK__,__WXMSW__,__WXMOTIF__,__WXMAC__,__WXQT__,__WXPM__,__WXSTUBS__ #endif -#if defined(__WXMSW__) +#ifdef __VMS +#include "[--]setup.h" +#elif defined(__WXMSW__) #include "wx/msw/setup.h" -#else -#include "wx/../../install/unix/setup/setup.h" +#elif defined(__WXMAC__) +#include "wx/mac/setup.h" +#elif defined(__WXQT__) +#include "wx/qt/setup.h" +#elif defined(__WXMOTIF__) +#include "wx/motif/setup.h" +#elif defined(__WXPM__) +#include "wx/os2/setup.h" +#elif defined(__WXSTUBS__) +#include "wx/stubs/setup.h" +#elif defined(__WXGTK__) +#include "wx/gtk/setup.h" #endif +/* + * Compatibility defines: note that, in general, there is a a reason for not + * compatible changes, so you should try to avoid defining WXWIN_COMPATIBILITY + * and do so only if your program really can't be compiled otherwise. + */ + +/* + * Compatibility with 1.66 API. + * Level 0: no backward compatibility, all new features + * Level 1: wxDC, OnSize (etc.) compatibility, but + * some new features such as event tables + */ +#define WXWIN_COMPATIBILITY 0 + +/* + * wxWindows 2.0 API compatibility. Possible values are: + * 0: no backwards compatibility + * 1: some backwards compatibility, but if it conflicts with the new + * features, use the new code, not the old one + * 2: maximum backwards compatiblity: even if compatibility can only be + * achieved by disabling new features, do it. + */ +#define WXWIN_COMPATIBILITY_2 1 + +/* + * wxWindows 2.0 uses long for wxPoint/wxRect/wxSize member fields and wxDC + * method arguments, wxWindows 2.1 and later uses wxCoord typedef which is + * usually int. Using long leads to (justified) warnings about long to int + * conversions from some compilers and is, generally speaking, unneeded. + */ +#define wxUSE_COMPATIBLE_COORD_TYPES 0 + +/* + * Maximum compatibility with 2.0 API + */ +#if WXWIN_COMPATIBILITY_2 == 2 +#undef wxUSE_COMPATIBLE_COORD_TYPES +#define wxUSE_COMPATIBLE_COORD_TYPES 1 +#endif /* WXWIN_COMPATIBILITY_2_MAX */ + #endif - // __SETUPH_BASE__ + /* _WX_SETUP_H_BASE_ */