]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/txtstrm.h
Borland apparently uses for int64 in printf(), not
[wxWidgets.git] / include / wx / txtstrm.h
index 5b114305a885e0912bb102d026cf207fca19db9e..dff4466bd1957a4b83b75527c43417e077325043 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef _WX_TXTSTREAM_H_
 #define _WX_TXTSTREAM_H_
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #pragma interface "txtstrm.h"
 #endif
 
@@ -28,10 +28,15 @@ typedef wxTextOutputStream& (*__wxTextOutputManip)(wxTextOutputStream&);
 
 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();
@@ -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,13 +65,18 @@ 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,
@@ -76,7 +86,11 @@ typedef enum {
 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 );
@@ -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