]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/textcmn.cpp
attempt to fix crash in tree ctrl
[wxWidgets.git] / src / common / textcmn.cpp
index 63408d24d4c12e6d9f55806dfa032dec068cfe3c..0ce243a14111ba80826975086fc1bbf54a766d50 100644 (file)
 wxTextCtrlBase::wxTextCtrlBase()
 {
 #ifndef NO_TEXT_WINDOW_STREAM
 wxTextCtrlBase::wxTextCtrlBase()
 {
 #ifndef NO_TEXT_WINDOW_STREAM
-    if (allocate())
-        setp(base(),ebuf());
+  #if wxUSE_IOSTREAMH
+  if (allocate())
+    setp(base(),ebuf());
+  #else
+  m_streambuf=new char[64];
+  setp(m_streambuf,m_streambuf+64);
+  #endif //wxUSE_IOSTREAMH
 #endif // NO_TEXT_WINDOW_STREAM
 }
 
 #endif // NO_TEXT_WINDOW_STREAM
 }
 
+wxTextCtrlBase::~wxTextCtrlBase()
+{
+#ifndef NO_TEXT_WINDOW_STREAM
+#if !wxUSE_IOSTREAMH
+  delete m_streambuf;
+#endif
+#endif
+}
+
 // ----------------------------------------------------------------------------
 // file IO functions
 // ----------------------------------------------------------------------------
 // ----------------------------------------------------------------------------
 // file IO functions
 // ----------------------------------------------------------------------------
@@ -88,7 +102,7 @@ bool wxTextCtrlBase::SaveFile(const wxString& filename)
     if ( !filenameToUse )
     {
         // what kind of message to give? is it an error or a program bug?
     if ( !filenameToUse )
     {
         // what kind of message to give? is it an error or a program bug?
-        wxLogDebug(_T("Can't save textctrl to file without filename."));
+        wxLogDebug(wxT("Can't save textctrl to file without filename."));
 
         return FALSE;
     }
 
         return FALSE;
     }
@@ -122,7 +136,7 @@ wxTextCtrl& wxTextCtrlBase::operator<<(const wxString& s)
 wxTextCtrl& wxTextCtrlBase::operator<<(float f)
 {
     wxString str;
 wxTextCtrl& wxTextCtrlBase::operator<<(float f)
 {
     wxString str;
-    str.Printf(_T("%.2f"), f);
+    str.Printf(wxT("%.2f"), f);
     AppendText(str);
     return *TEXTCTRL(this);
 }
     AppendText(str);
     return *TEXTCTRL(this);
 }
@@ -130,7 +144,7 @@ wxTextCtrl& wxTextCtrlBase::operator<<(float f)
 wxTextCtrl& wxTextCtrlBase::operator<<(double d)
 {
     wxString str;
 wxTextCtrl& wxTextCtrlBase::operator<<(double d)
 {
     wxString str;
-    str.Printf(_T("%.2f"), d);
+    str.Printf(wxT("%.2f"), d);
     AppendText(str);
     return *TEXTCTRL(this);
 }
     AppendText(str);
     return *TEXTCTRL(this);
 }
@@ -138,7 +152,7 @@ wxTextCtrl& wxTextCtrlBase::operator<<(double d)
 wxTextCtrl& wxTextCtrlBase::operator<<(int i)
 {
     wxString str;
 wxTextCtrl& wxTextCtrlBase::operator<<(int i)
 {
     wxString str;
-    str.Printf(_T("%d"), i);
+    str.Printf(wxT("%d"), i);
     AppendText(str);
     return *TEXTCTRL(this);
 }
     AppendText(str);
     return *TEXTCTRL(this);
 }
@@ -146,7 +160,7 @@ wxTextCtrl& wxTextCtrlBase::operator<<(int i)
 wxTextCtrl& wxTextCtrlBase::operator<<(long i)
 {
     wxString str;
 wxTextCtrl& wxTextCtrlBase::operator<<(long i)
 {
     wxString str;
-    str.Printf(_T("%ld"), i);
+    str.Printf(wxT("%ld"), i);
     AppendText(str);
     return *TEXTCTRL(this);
 }
     AppendText(str);
     return *TEXTCTRL(this);
 }