]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/string.h
no changes, just updated the URL of KB article in a comment
[wxWidgets.git] / include / wx / string.h
index 1710a2e165e6379ed0bac915cadab77b7103bf05..aef07e6885a494d3e6ab6096250aec92dcdae3e3 100644 (file)
@@ -78,14 +78,6 @@ class WXDLLIMPEXP_FWD_BASE wxString;
 #define   wxMBSTRINGCAST (char *)(const char *)
 #define   wxWCSTRINGCAST (wchar_t *)(const wchar_t *)
 
-// like _T(), but for literals in wxString's internal representation, i.e.
-// char* in UTF-8 build and wxChar* otherwise:
-#if wxUSE_UNICODE_UTF8
-    #define wxSTRING_TEXT(str) str
-#else
-    #define wxSTRING_TEXT(str) _T(str)
-#endif
-
 // ----------------------------------------------------------------------------
 // constants
 // ----------------------------------------------------------------------------
@@ -133,8 +125,6 @@ inline int Stricmp(const char *psz1, const char *psz2)
   return _stricmp(psz1, psz2);
 #elif defined(__SC__)
   return _stricmp(psz1, psz2);
-#elif defined(__SALFORDC__)
-  return stricmp(psz1, psz2);
 #elif defined(__BORLANDC__)
   return stricmp(psz1, psz2);
 #elif defined(__WATCOMC__)
@@ -380,8 +370,9 @@ protected:
 
 #if wxUSE_UNICODE_UTF8
 // see the comment near wxString::iterator for why we need this
-struct WXDLLIMPEXP_BASE wxStringIteratorNode
+class WXDLLIMPEXP_BASE wxStringIteratorNode
 {
+public:
     wxStringIteratorNode()
         : m_str(NULL), m_citer(NULL), m_iter(NULL), m_prev(NULL), m_next(NULL) {}
     wxStringIteratorNode(const wxString *str,
@@ -933,7 +924,7 @@ public:
   wxString(const wxString& stringSrc) : m_impl(stringSrc.m_impl) { }
 
     // string containing nRepeat copies of ch
-  wxString(wxUniChar ch, size_t nRepeat = 1)
+  wxString(wxUniChar ch, size_t nRepeat = 1 )
     { assign(nRepeat, ch); }
   wxString(size_t nRepeat, wxUniChar ch)
     { assign(nRepeat, ch); }
@@ -1371,11 +1362,7 @@ public:
 #if wxUSE_WCHAR_T
     const wxWCharBuffer wc_str(const wxMBConv& conv = wxConvLibc) const;
 #endif // wxUSE_WCHAR_T
-#ifdef __WXOSX__
-    const wxCharBuffer fn_str() const { return wxConvFile.cWC2WX( wc_str( wxConvLocal ) ); }
-#else
-    const wxChar* fn_str() const { return c_str(); }
-#endif
+    const wxCharBuffer fn_str() const { return wxConvFile.cWC2WX( wc_str( wxConvLibc ) ); }
 #endif // Unicode/ANSI
 
   // overloaded assignment
@@ -2590,12 +2577,6 @@ private:
 private:
   wxStringImpl m_impl;
 
-#ifdef __VISUALC__
-    // "struct 'ConvertedBuffer<T>' needs to have dll-interface to be used by
-    // clients of class 'wxString'" - this is private, we don't care
-    #pragma warning (disable:4251)
-#endif
-
   // buffers for compatibility conversion from (char*)c_str() and
   // (wchar_t*)c_str():
   // FIXME-UTF8: bechmark various approaches to keeping compatibility buffers
@@ -2624,10 +2605,6 @@ private:
   ConvertedBuffer<wchar_t> m_convertedToWChar;
 #endif
 
-#ifdef __VISUALC__
-    #pragma warning (default:4251)
-#endif
-
 #if wxUSE_UNICODE_UTF8
   // FIXME-UTF8: (try to) move this elsewhere (TLS) or solve differently
   //             assigning to character pointer to by wxString::interator may
@@ -3031,6 +3008,14 @@ WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxCharBuffer&);
 WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxWCharBuffer&);
 #endif
 
+#if wxUSE_UNICODE && defined(HAVE_WOSTREAM)
+
+WXDLLIMPEXP_BASE wxSTD wostream& operator<<(wxSTD wostream&, const wxString&);
+WXDLLIMPEXP_BASE wxSTD wostream& operator<<(wxSTD wostream&, const wxCStrData&);
+WXDLLIMPEXP_BASE wxSTD wostream& operator<<(wxSTD wostream&, const wxWCharBuffer&);
+
+#endif  // wxUSE_UNICODE && defined(HAVE_WOSTREAM)
+
 #endif  // wxUSE_STD_IOSTREAM
 
 // ---------------------------------------------------------------------------