]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/wxchar.h
Some work for wxX11 on 8-bit visuals.
[wxWidgets.git] / include / wx / wxchar.h
index 1174ddb2871c073f41a2316e5f352544ad20a652..2793ea14b5b46eb3c44a9d3a38685d57a43aa083 100644 (file)
@@ -69,6 +69,7 @@
         #include <string.h>
         #include <ctype.h>
     #elif defined(__CYGWIN__)
+        #define HAVE_WCSLEN
         #include <stddef.h>
         #include <wchar.h>
     #endif
@@ -201,6 +202,13 @@ typedef  _TUCHAR     wxUChar;
 
    // stdio.h functions
 #ifndef wxNO_TCHAR_STDIO
+#  if wxUSE_UNICODE_MSLU
+#    define  wxRemove    wxMSLU__tremove
+#    define  wxRename    wxMSLU__trename
+#  else
+#    define  wxRemove    _tremove
+#    define  wxRename    _trename
+#  endif
 #  define  wxFgetc     _fgettc
 #  define  wxFgetchar  _fgettchar
 #  define  wxFgets     _fgetts
@@ -218,8 +226,6 @@ typedef  _TUCHAR     wxUChar;
 #  define  wxPutc      _puttc
 #  define  wxPutchar   _puttchar
 #  define  wxPuts      _putts
-#  define  wxRemove    _tremove
-#  define  wxRename    _trename
 #  define  wxScanf     _tscanf
 #  define  wxSprintf   _stprintf
 #  define  wxSscanf    _stscanf
@@ -287,29 +293,24 @@ typedef  _TUCHAR     wxUChar;
 #    elif defined(__VISAGECPP__) && (__IBMCPP__ < 400)
 #      define wxUSE_WCHAR_T 0
 #    else
-  // add additional compiler checks if this fails
+       // add additional compiler checks if this fails
 #      define wxUSE_WCHAR_T 1
 #    endif
 #  endif // !defined(wxUSE_WCHAR_T)
 
-#  if wxUSE_WCHAR_T
-#    ifdef HAVE_WCSTR_H
-#      include <wcstr.h>
-#    else
-#      if defined(HAVE_WCHAR_H)
-
-// include wchar.h to get wcslen() declaration used by wx/buffer.h
-#        include <wchar.h>
-
-#      elif defined(__FreeBSD__) || defined(__DARWIN__)
-
-// include stdlib.h for wchar_t, wcslen is provided in wxchar.cpp
-#        include <stdlib.h>
-size_t   WXDLLEXPORT wcslen(const wchar_t *s);
-
-#      endif
-#    endif
-#  endif
+#   if wxUSE_WCHAR_T
+#       ifdef HAVE_WCHAR_H
+            // include wchar.h to get wcslen() declaration used by wx/buffer.h
+#           include <wchar.h>
+#       elif defined(HAVE_WCSTR_H)
+            // old compilers have wcslen() here
+#           include <wcstr.h>
+#       elif defined(__FreeBSD__) || defined(__DARWIN__) || defined(__EMX__)
+            // include stdlib.h for wchar_t, wcslen is provided in wxchar.cpp
+#           include <stdlib.h>
+            size_t WXDLLEXPORT wcslen(const wchar_t *s);
+#       endif // HAVE_WCHAR_H
+#   endif // wxUSE_WCHAR_T
 
 // check whether we are doing Unicode
 #  if wxUSE_UNICODE
@@ -382,15 +383,9 @@ typedef unsigned __WCHAR_TYPE__ wxUChar;
 #    include <ctype.h>
 #    include <string.h>
 
-#   if 0 // temporary - preserve binary compatibilty
-        typedef char            wxChar;
-        typedef signed char     wxSChar;
-        typedef unsigned char   wxUChar;
-#   else
-#     define wxChar char
-#     define wxSChar signed char
-#     define wxUChar unsigned char
-#   endif
+    typedef char            wxChar;
+    typedef signed char     wxSChar;
+    typedef unsigned char   wxUChar;
 
 #   if defined(__FreeBSD__) || defined(__DARWIN__)
 #     undef _T
@@ -466,7 +461,9 @@ typedef unsigned __WCHAR_TYPE__ wxUChar;
 #    define  wxStrcoll   strcoll
 #    define  wxStrcpy    strcpy
 #    define  wxStrcspn   strcspn
+#if !defined(__MWERKS__) || !defined(__WXMAC__)
 #    define  wxStrdup    strdup
+#endif
 #    define  wxStrlen_   strlen // used in wxStrlen inline function
 #    define  wxStrncat   strncat
 #    define  wxStrncmp   strncmp