]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/string.h
no message
[wxWidgets.git] / include / wx / string.h
index 9e7a4fe95bca01131a92aee0cc34fc9e2e3a02d6..81c856c9e3ed252dea12945e5afa012512330a23 100644 (file)
@@ -22,6 +22,9 @@
  *         stdarg.h
  *         limits.h
  */
+#ifdef __WXMAC__
+#include <ctype.h>
+#endif
 #include <string.h>
 #include <stdio.h>
 #include <stdarg.h>
@@ -87,12 +90,22 @@ inline int WXDLLEXPORT Stricmp(const char *psz1, const char *psz2)
 {
 #if     defined(_MSC_VER)
   return _stricmp(psz1, psz2);
+#elif     defined(__SC__)
+  return _stricmp(psz1, psz2);
 #elif defined(__BORLANDC__)
   return stricmp(psz1, psz2);
 #elif defined(__WATCOMC__)
   return stricmp(psz1, psz2);
 #elif   defined(__UNIX__) || defined(__GNUWIN32__)
   return strcasecmp(psz1, psz2);
+#elif defined(__MWERKS__) && !defined(_MSC_VER)
+  register char c1, c2;
+  do {
+    c1 = tolower(*psz1++);
+    c2 = tolower(*psz2++);
+  } while ( c1 && (c1 == c2) );
+
+  return c1 - c2;
 #else
   // almost all compilers/libraries provide this function (unfortunately under
   // different names), that's why we don't implement our own which will surely
@@ -590,7 +603,7 @@ public:
     /** @name constructors */
     //@{
       /// take nLen chars starting at nPos
-      wxString(const wxString& str, size_t nPos, size_t nLen = npos)
+      wxString(const wxString& str, size_t nPos, size_t nLen)
       {
         wxASSERT( str.GetStringData()->IsValid() );
         InitWith(str.c_str(), nPos, nLen == npos ? 0 : nLen);