// ctor associates the stream with the given string which makes a copy of
// it
wxStringInputStream(const wxString& s);
- virtual ~wxStringInputStream();
virtual wxFileOffset GetLength() const;
wxString m_str;
// the buffer we're reading from
- char* m_buf;
+ wxCharBuffer m_buf;
// length of the buffer we're reading from
size_t m_len;
// The stream will write data either to the provided string or to an
// internal string which can be retrieved using GetString()
wxStringOutputStream(wxString *pString = NULL)
+#if wxUSE_UNICODE_WCHAR
+ : m_unconv(0)
+#endif // wxUSE_UNICODE_WCHAR
{
m_str = pString ? pString : &m_strInternal;
m_pos = m_str->length() / sizeof(wxChar);
// position in the stream in bytes, *not* in chars
size_t m_pos;
+#if wxUSE_WCHAR_T
// string encoding converter (UTF8 is the standard)
wxMBConvUTF8 m_conv;
+#else
+ wxMBConv m_conv;
+#endif
+
+#if wxUSE_UNICODE_WCHAR
+ // unconverted data from the last call to OnSysWrite()
+ wxMemoryBuffer m_unconv;
+#endif // wxUSE_UNICODE_WCHAR
DECLARE_NO_COPY_CLASS(wxStringOutputStream)
};