]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/chartype.h
Finally fixed control scrolling
[wxWidgets.git] / include / wx / chartype.h
index 0395e000a541311afdb118c17ba98f13db1b4984..5162b91dafa8ba9d5a95928c21187e7b92125371 100644 (file)
     #ifdef HAVE_WIDEC_H
         #include <widec.h>
     #endif
-
-    #if !defined(__GNUC__) || defined(__DARWIN__)
-        #define wxWINT_T_IS_TYPEDEF
-    #endif
 #endif /* wxUSE_WCHAR_T */
 
 /* -------------------------------------------------------------------------- */
     #endif /* __WCHAR_TYPE__ */
 #endif /* ASCII/Unicode */
 
+/* ------------------------------------------------------------------------- */
+/* define wxStringCharType                                                   */
+/* ------------------------------------------------------------------------- */
+
+/* depending on the platform, Unicode build can either store wxStrings as
+   wchar_t* or UTF-8 encoded char*: */
+#if wxUSE_UNICODE
+    // FIXME-UTF8: what would be better place for this?
+    #if defined(wxUSE_UTF8_LOCALE_ONLY) && !defined(wxUSE_UNICODE_UTF8)
+        #error "wxUSE_UTF8_LOCALE_ONLY only makes sense with wxUSE_UNICODE_UTF8"
+    #endif
+    #ifndef wxUSE_UTF8_LOCALE_ONLY
+        #define wxUSE_UTF8_LOCALE_ONLY 0
+    #endif
+
+    #ifndef wxUSE_UNICODE_UTF8
+        #define wxUSE_UNICODE_UTF8 0
+    #endif
+
+    #if wxUSE_UNICODE_UTF8
+        #define wxUSE_UNICODE_WCHAR 0
+    #else
+        #define wxUSE_UNICODE_WCHAR 1
+    #endif
+#else
+    #define wxUSE_UNICODE_WCHAR 0
+    #define wxUSE_UNICODE_UTF8  0
+    #define wxUSE_UTF8_LOCALE_ONLY 0
+#endif
+
+/* define char type used by wxString internal representation: */
+#if wxUSE_UNICODE_UTF8
+    typedef char wxStringCharType;
+#elif wxUSE_UNICODE_WCHAR
+    typedef wchar_t wxStringCharType;
+#else
+    typedef char wxStringCharType;
+#endif
+
+
 /* ------------------------------------------------------------------------- */
 /* define _T() and related macros                                            */
 /* ------------------------------------------------------------------------- */