// 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
WXDLLEXPORT wxTextOutputStream &endl( wxTextOutputStream &stream );
+
class WXDLLEXPORT 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();
// 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);
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,
class WXDLLEXPORT 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 );
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);
protected:
wxOutputStream &m_output;
wxEOL m_mode;
+
+#if wxUSE_UNICODE
+ wxMBConv &m_conv;
+#endif
+
};
#endif