X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..44ac608d142da51fd7f70c35146245b197749b2e:/include/wx/txtstrm.h diff --git a/include/wx/txtstrm.h b/include/wx/txtstrm.h index 83b2f5a002..3d4b11a581 100644 --- a/include/wx/txtstrm.h +++ b/include/wx/txtstrm.h @@ -6,7 +6,7 @@ // Created: 28/06/1998 // RCS-ID: $Id$ // Copyright: (c) Guilhem Lavaux -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_TXTSTREAM_H_ @@ -32,7 +32,7 @@ WXDLLIMPEXP_BASE wxTextOutputStream &endl( wxTextOutputStream &stream ); #define wxEOT wxT('\4') // the End-Of-Text control code (used only inside wxTextInputStream) // If you're scanning through a file using wxTextInputStream, you should check for EOF _before_ -// reading the next item (word / number), because otherwise the last item may get lost. +// reading the next item (word / number), because otherwise the last item may get lost. // You should however be prepared to receive an empty item (empty string / zero number) at the // end of file, especially on Windows systems. This is unavoidable because most (but not all) files end // with whitespace (i.e. usually a newline). @@ -56,7 +56,7 @@ public: wxString ReadString(); // deprecated: use ReadLine or ReadWord instead wxString ReadLine(); wxString ReadWord(); - wxChar GetChar() { wxChar c = NextChar(); return c != wxEOT ? c : 0; } + wxChar GetChar() { wxChar c = NextChar(); return (wxChar)(c != wxEOT ? c : 0); } wxString GetStringSeparators() const { return m_separators; } void SetStringSeparators(const wxString &c) { m_separators = c; } @@ -64,6 +64,9 @@ public: // Operators wxTextInputStream& operator>>(wxString& word); wxTextInputStream& operator>>(char& c); +#if wxUSE_UNICODE && wxWCHAR_T_IS_REAL_TYPE + wxTextInputStream& operator>>(wchar_t& wc); +#endif // wxUSE_UNICODE wxTextInputStream& operator>>(wxInt16& i); wxTextInputStream& operator>>(wxInt32& i); wxTextInputStream& operator>>(wxUint16& i); @@ -77,7 +80,7 @@ protected: wxInputStream &m_input; wxString m_separators; char m_lastBytes[10]; // stores the bytes that were read for the last character - + #if wxUSE_UNICODE wxMBConv &m_conv; #endif @@ -118,9 +121,14 @@ public: virtual void WriteDouble(double d); virtual void WriteString(const wxString& string); + wxTextOutputStream& PutChar(wxChar c); + wxTextOutputStream& operator<<(const wxChar *string); wxTextOutputStream& operator<<(const wxString& string); wxTextOutputStream& operator<<(char c); +#if wxUSE_UNICODE && wxWCHAR_T_IS_REAL_TYPE + wxTextOutputStream& operator<<(wchar_t wc); +#endif // wxUSE_UNICODE wxTextOutputStream& operator<<(wxInt16 c); wxTextOutputStream& operator<<(wxInt32 c); wxTextOutputStream& operator<<(wxUint16 c); @@ -133,7 +141,7 @@ public: protected: wxOutputStream &m_output; wxEOL m_mode; - + #if wxUSE_UNICODE wxMBConv &m_conv; #endif