]> git.saurik.com Git - wxWidgets.git/blob - include/wx/features.h
Add factory functions for use with future unit tests.
[wxWidgets.git] / include / wx / features.h
1 /**
2 * Name: wx/features.h
3 * Purpose: test macros for the features which might be available in some
4 * wxWidgets ports but not others
5 * Author: Vadim Zeitlin
6 * Modified by: Ryan Norton (Converted to C)
7 * Created: 18.03.02
8 * RCS-ID: $Id$
9 * Copyright: (c) 2002 Vadim Zeitlin <vadim@wxwidgets.org>
10 * Licence: wxWindows licence
11 */
12
13 /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
14
15 #ifndef _WX_FEATURES_H_
16 #define _WX_FEATURES_H_
17
18 /* radio menu items are currently not implemented in wxMotif, use this
19 symbol (kept for compatibility from the time when they were not implemented
20 under other platforms as well) to test for this */
21 #if !defined(__WXMOTIF__)
22 #define wxHAS_RADIO_MENU_ITEMS
23 #else
24 #undef wxHAS_RADIO_MENU_ITEMS
25 #endif
26
27 /* the raw keyboard codes are generated under wxGTK and wxMSW only */
28 #if defined(__WXGTK__) || defined(__WXMSW__) || defined(__WXMAC__) \
29 || defined(__WXDFB__)
30 #define wxHAS_RAW_KEY_CODES
31 #else
32 #undef wxHAS_RAW_KEY_CODES
33 #endif
34
35 /* taskbar is implemented in the major ports */
36 #if defined(__WXMSW__) || defined(__WXCOCOA__) \
37 || defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXX11__) \
38 || defined(__WXMAC_OSX__) || defined(__WXCOCOA__)
39 #define wxHAS_TASK_BAR_ICON
40 #else
41 #undef wxHAS_TASK_BAR_ICON
42 #endif
43
44 /* wxIconLocation appeared in the middle of 2.5.0 so it's handy to have a */
45 /* separate define for it */
46 #define wxHAS_ICON_LOCATION
47
48 /* same for wxCrashReport */
49 #ifdef __WXMSW__
50 #define wxHAS_CRASH_REPORT
51 #else
52 #undef wxHAS_CRASH_REPORT
53 #endif
54
55 /* wxRE_ADVANCED is not always available, depending on regex library used
56 * (it's unavailable only if compiling via configure against system library) */
57 #ifndef WX_NO_REGEX_ADVANCED
58 #define wxHAS_REGEX_ADVANCED
59 #else
60 #undef wxHAS_REGEX_ADVANCED
61 #endif
62
63 /* Pango-based ports and wxDFB use UTF-8 for text and font encodings
64 * internally and so their fonts can handle any encodings: */
65 #if wxUSE_PANGO || defined(__WXDFB__)
66 #define wxHAS_UTF8_FONTS
67 #endif
68
69 /* This is defined when the underlying toolkit handles tab traversal natively.
70 Otherwise we implement it ourselves in wxControlContainer. */
71 #ifdef __WXGTK20__
72 #define wxHAS_NATIVE_TAB_TRAVERSAL
73 #endif
74
75 #endif /* _WX_FEATURES_H_ */
76