X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/28f5bdb49b6ce414a012696e07530765159bb3e6..aede4ebb265b6537038e26131ebf07592ade460d:/include/wx/txtstrm.h?ds=sidebyside diff --git a/include/wx/txtstrm.h b/include/wx/txtstrm.h index 5b114305a8..a7317a5fac 100644 --- a/include/wx/txtstrm.h +++ b/include/wx/txtstrm.h @@ -6,13 +6,13 @@ // Created: 28/06/1998 // RCS-ID: $Id$ // Copyright: (c) Guilhem Lavaux -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_TXTSTREAM_H_ #define _WX_TXTSTREAM_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "txtstrm.h" #endif @@ -20,18 +20,23 @@ #if wxUSE_STREAMS -class WXDLLEXPORT wxTextInputStream; -class WXDLLEXPORT wxTextOutputStream; +class WXDLLIMPEXP_BASE wxTextInputStream; +class WXDLLIMPEXP_BASE wxTextOutputStream; typedef wxTextInputStream& (*__wxTextInputManip)(wxTextInputStream&); typedef wxTextOutputStream& (*__wxTextOutputManip)(wxTextOutputStream&); -WXDLLEXPORT wxTextOutputStream &endl( wxTextOutputStream &stream ); +WXDLLIMPEXP_BASE wxTextOutputStream &endl( wxTextOutputStream &stream ); -class WXDLLEXPORT wxTextInputStream + +class WXDLLIMPEXP_BASE wxTextInputStream { public: +#if wxUSE_UNICODE + wxTextInputStream(wxInputStream& s, const wxString &sep=wxT(" \t"), wxMBConv& conv = wxConvUTF8 ); +#else wxTextInputStream(wxInputStream& s, const wxString &sep=wxT(" \t") ); +#endif ~wxTextInputStream(); wxUint32 Read32(); @@ -47,7 +52,7 @@ public: // Operators wxTextInputStream& operator>>(wxString& word); - wxTextInputStream& operator>>(wxChar& c); + wxTextInputStream& operator>>(char& c); wxTextInputStream& operator>>(wxInt16& i); wxTextInputStream& operator>>(wxInt32& i); wxTextInputStream& operator>>(wxUint16& i); @@ -60,23 +65,32 @@ public: protected: wxInputStream &m_input; wxString m_separators; + +#if wxUSE_UNICODE + wxMBConv &m_conv; +#endif bool EatEOL(const wxChar &c); wxChar NextNonSeparators(); void SkipIfEndOfLine( wxChar c ); }; -typedef enum { +typedef enum +{ wxEOL_NATIVE, wxEOL_UNIX, wxEOL_MAC, wxEOL_DOS } wxEOL; -class WXDLLEXPORT wxTextOutputStream +class WXDLLIMPEXP_BASE wxTextOutputStream { public: +#if wxUSE_UNICODE + wxTextOutputStream( wxOutputStream& s, wxEOL mode = wxEOL_NATIVE, wxMBConv& conv = wxConvUTF8 ); +#else wxTextOutputStream( wxOutputStream& s, wxEOL mode = wxEOL_NATIVE ); +#endif virtual ~wxTextOutputStream(); void SetMode( wxEOL mode = wxEOL_NATIVE ); @@ -90,7 +104,7 @@ public: wxTextOutputStream& operator<<(const wxChar *string); wxTextOutputStream& operator<<(const wxString& string); - wxTextOutputStream& operator<<(wxChar c); + wxTextOutputStream& operator<<(char c); wxTextOutputStream& operator<<(wxInt16 c); wxTextOutputStream& operator<<(wxInt32 c); wxTextOutputStream& operator<<(wxUint16 c); @@ -103,6 +117,11 @@ public: protected: wxOutputStream &m_output; wxEOL m_mode; + +#if wxUSE_UNICODE + wxMBConv &m_conv; +#endif + }; #endif