]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/string.cpp
applied the bit's of #473508 that were still relevant, and fixed a couple of
[wxWidgets.git] / src / common / string.cpp
index 938d0010dca8e1a1de0b88325d34eda859a7f2e2..680cc70c2bb076599db9bfc6575f3a6123d9b9b2 100644 (file)
@@ -1093,26 +1093,26 @@ int wxString::Find(const wxChar *pszSub) const
 // conversion to numbers
 // ----------------------------------------------------------------------------
 
-bool wxString::ToLong(long *val) const
+bool wxString::ToLong(long *val, int base) const
 {
     wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToLong") );
 
     const wxChar *start = c_str();
     wxChar *end;
-    *val = wxStrtol(start, &end, 10);
+    *val = wxStrtol(start, &end, base);
 
     // return TRUE only if scan was stopped by the terminating NUL and if the
     // string was not empty to start with
     return !*end && (end != start);
 }
 
-bool wxString::ToULong(unsigned long *val) const
+bool wxString::ToULong(unsigned long *val, int base) const
 {
     wxCHECK_MSG( val, FALSE, _T("NULL pointer in wxString::ToULong") );
 
     const wxChar *start = c_str();
     wxChar *end;
-    *val = wxStrtoul(start, &end, 10);
+    *val = wxStrtoul(start, &end, base);
 
     // return TRUE only if scan was stopped by the terminating NUL and if the
     // string was not empty to start with
@@ -1632,7 +1632,7 @@ void wxString::resize(size_t nSize, wxChar ch)
     }
     else if ( nSize > len )
     {
-        *this += wxString(ch, len - nSize);
+        *this += wxString(ch, nSize - len);
     }
     //else: we have exactly the specified length, nothing to do
 }
@@ -2156,6 +2156,16 @@ void wxArrayString::Insert(const wxString& str, size_t nIndex)
   m_nCount++;
 }
 
+// expand the array
+void wxArrayString::SetCount(size_t count)
+{
+    Alloc(count);
+
+    wxString s;
+    while ( m_nCount < count )
+        m_pItems[m_nCount++] = (wxChar *)s.c_str();
+}
+
 // removes item from array (by index)
 void wxArrayString::Remove(size_t nIndex)
 {