]> git.saurik.com Git - wxWidgets.git/blob - include/wx/setup.h
added a WXDLLEXPORT
[wxWidgets.git] / include / wx / setup.h
1 /*
2 * The main configuration file for wxWindows.
3 *
4 * NB: this file can be included in .c files, so it must be compileable by a C
5 * compiler - use #ifdef __cplusplus for C++ specific features and avoid
6 * using C++ style comments
7 */
8
9 #ifndef _WX_SETUP_H_BASE_
10 #define _WX_SETUP_H_BASE_
11
12 /* compatibility code, to be removed asap: */
13
14 #if !defined(__WXMSW__) && !defined(__WXGTK__) && !defined(__WXMOTIF__) && !defined(__WXQT__) && !defined(__WXSTUBS__) && !defined(__WXMAC__) && !defined(__WXPM__)
15 #error No __WXxxx__ define set! Please define one of __WXGTK__,__WXMSW__,__WXMOTIF__,__WXMAC__,__WXQT__,__WXPM__,__WXSTUBS__
16 #endif
17
18 #if defined(__WXMSW__)
19 #include "wx/msw/setup.h"
20 #elif defined(__WXMAC__)
21 #include "wx/mac/setup.h"
22 #elif defined(__WXQT__)
23 #include "wx/qt/setup.h"
24 #elif defined(__WXMOTIF__)
25 #include "wx/motif/setup.h"
26 #elif defined(__WXPM__)
27 #include "wx/os2/setup.h"
28 #elif defined(__WXSTUBS__)
29 #include "wx/stubs/setup.h"
30 #elif defined(__WXGTK__)
31 #include "wx/gtk/setup.h"
32 #endif
33
34 /*
35 * Compatibility defines: note that, in general, there is a a reason for not
36 * compatible changes, so you should try to avoid defining WXWIN_COMPATIBILITY
37 * and do so only if your program really can't be compiled otherwise.
38 */
39
40 /*
41 * Compatibility with 1.66 API.
42 * Level 0: no backward compatibility, all new features
43 * Level 1: wxDC, OnSize (etc.) compatibility, but
44 * some new features such as event tables
45 */
46 #define WXWIN_COMPATIBILITY 0
47
48 /*
49 * wxWindows 2.0 API compatibility. Possible values are:
50 * 0: no backwards compatibility
51 * 1: some backwards compatibility, but if it conflicts with the new
52 * features, use the new code, not the old one
53 * 2: maximum backwards compatiblity: even if compatibility can only be
54 * achieved by disabling new features, do it.
55 */
56 #define WXWIN_COMPATIBILITY_2 1
57
58 /*
59 * wxWindows 2.0 uses long for wxPoint/wxRect/wxSize member fields and wxDC
60 * method arguments, wxWindows 2.1 and later uses wxCoord typedef which is
61 * usually int. Using long leads to (justified) warnings about long to int
62 * conversions from some compilers and is, generally speaking, unneeded.
63 */
64 #define wxUSE_COMPATIBLE_COORD_TYPES 0
65
66 /*
67 * Maximum compatibility with 2.0 API
68 */
69 #if WXWIN_COMPATIBILITY_2 == 2
70 #undef wxUSE_COMPATIBLE_COORD_TYPES
71 #define wxUSE_COMPATIBLE_COORD_TYPES 1
72 #endif /* WXWIN_COMPATIBILITY_2_MAX */
73
74 #endif
75 /* _WX_SETUP_H_BASE_ */