-class WXDLLEXPORT wxTextOutputStream {
- public:
- wxTextOutputStream(wxOutputStream& s);
- ~wxTextOutputStream();
-
- void Write32(wxUint32 i);
- void Write16(wxUint16 i);
- void Write8(wxUint8 i);
- void WriteDouble(double d);
- void WriteString(const wxString& string);
-
- wxTextOutputStream& operator<<(const wxChar *string);
- wxTextOutputStream& operator<<(const wxString& string);
- wxTextOutputStream& operator<<(wxInt8 c);
- wxTextOutputStream& operator<<(wxInt16 c);
- wxTextOutputStream& operator<<(wxInt32 c);
- wxTextOutputStream& operator<<(wxUint8 c);
- wxTextOutputStream& operator<<(wxUint16 c);
- wxTextOutputStream& operator<<(wxUint32 c);
- wxTextOutputStream& operator<<(double f);
- wxTextOutputStream& operator<<(float f);
-
- protected:
- wxOutputStream *m_output;
+typedef enum {
+ wxEOL_NATIVE,
+ wxEOL_UNIX,
+ wxEOL_MAC,
+ wxEOL_DOS
+} wxEOL;
+
+class WXDLLEXPORT wxTextOutputStream
+{
+public:
+ wxTextOutputStream( wxOutputStream& s, wxEOL mode = wxEOL_NATIVE );
+ virtual ~wxTextOutputStream();
+
+ void SetMode( wxEOL mode = wxEOL_NATIVE );
+ wxEOL GetMode() { return m_mode; }
+
+ void Write32(wxUint32 i);
+ void Write16(wxUint16 i);
+ void Write8(wxUint8 i);
+ virtual void WriteDouble(double d);
+ virtual void WriteString(const wxString& string);
+
+ wxTextOutputStream& operator<<(const wxChar *string);
+ wxTextOutputStream& operator<<(const wxString& string);
+ wxTextOutputStream& operator<<(char c);
+ wxTextOutputStream& operator<<(wxInt16 c);
+ wxTextOutputStream& operator<<(wxInt32 c);
+ wxTextOutputStream& operator<<(wxUint16 c);
+ wxTextOutputStream& operator<<(wxUint32 c);
+ wxTextOutputStream& operator<<(double f);
+ wxTextOutputStream& operator<<(float f);
+
+ wxTextOutputStream& operator<<( __wxTextOutputManip func) { return func(*this); }
+
+protected:
+ wxOutputStream &m_output;
+ wxEOL m_mode;