]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/txtstrm.h
fix memory leak as Dimitri suggested
[wxWidgets.git] / include / wx / txtstrm.h
index 9553ce13560626d692016923489163295ea985ec..145257697eba1e24642a3c9b31123d27befc6d42 100644 (file)
@@ -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
 
@@ -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();
@@ -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 );
@@ -103,6 +117,11 @@ public:
 protected:
     wxOutputStream &m_output;
     wxEOL           m_mode;
+    
+#if wxUSE_UNICODE
+    wxMBConv &m_conv;
+#endif
+
 };
 
 #endif