#ifndef _WX_FEATURES_H_
#define _WX_FEATURES_H_
-/* radio menu items are currently only implemented in wxGTK and wxMSW */
-#if defined(__WXGTK__) || defined(__WXMSW__)
+/* radio menu items are currently not implemented in wxMotif, use this
+ symbol (kept for compatibility from the time when they were not implemented
+ under other platforms as well) to test for this */
+#if !defined(__WXMOTIF__)
#define wxHAS_RADIO_MENU_ITEMS
#else
#undef wxHAS_RADIO_MENU_ITEMS
#endif
/* the raw keyboard codes are generated under wxGTK and wxMSW only */
-#if defined(__WXGTK__) || defined(__WXMSW__)
+#if defined(__WXGTK__) || defined(__WXMSW__) || defined(__WXMAC__) \
+ || defined(__WXDFB__)
#define wxHAS_RAW_KEY_CODES
#else
#undef wxHAS_RAW_KEY_CODES
#endif
-/* taskbar is only implemented in the major ports */
-#if defined(__WXMSW__) || \
- defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXX11__) || defined(__DARWIN__)
+/* taskbar is implemented in the major ports */
+#if defined(__WXMSW__) || defined(__WXCOCOA__) \
+ || defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXX11__) \
+ || defined(__WXMAC_OSX__) || defined(__WXCOCOA__)
#define wxHAS_TASK_BAR_ICON
#else
#undef wxHAS_TASK_BAR_ICON
#undef wxHAS_REGEX_ADVANCED
#endif
+/* Pango-based ports and wxDFB use UTF-8 for text and font encodings
+ * internally and so their fonts can handle any encodings: */
+#if wxUSE_PANGO || defined(__WXDFB__)
+ #define wxHAS_UTF8_FONTS
+#endif
+
+/* This is defined when the underlying toolkit handles tab traversal natively.
+ Otherwise we implement it ourselves in wxControlContainer. */
+#ifdef __WXGTK20__
+ #define wxHAS_NATIVE_TAB_TRAVERSAL
+#endif
+
#endif /* _WX_FEATURES_H_ */