]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/textctrl.cpp
Moved Get/SetToolBar down into frame.h/cpp
[wxWidgets.git] / src / gtk / textctrl.cpp
index 86f84cd40dbca21c0be5f395aada77f9b1b82eed..568d0babb5004b4e7520835f59cc6a6ec1b31d1f 100644 (file)
@@ -33,20 +33,26 @@ END_EVENT_TABLE()
 
 wxTextCtrl::wxTextCtrl(void) : streambuf()
 {
+    if( allocate() )
+       setp(base(),ebuf());
   m_modified = FALSE;
 };
 
-wxTextCtrl::wxTextCtrl( wxWindow *parent, const wxWindowID id, const wxString &value,
+wxTextCtrl::wxTextCtrl( wxWindow *parent, wxWindowID id, const wxString &value,
       const wxPoint &pos, const wxSize &size,
-      const int style, const wxString &name ) : streambuf()
+      int style, const wxString &name ) : streambuf()
 {
+    if( allocate() )
+       setp(base(),ebuf());
   m_modified = FALSE;
   Create( parent, id, value, pos, size, style, name );
 };
 
-bool wxTextCtrl::Create( wxWindow *parent, const wxWindowID id, const wxString &value,
+bool wxTextCtrl::Create( wxWindow *parent, wxWindowID id, const wxString &value,
       const wxPoint &pos, const wxSize &size,
-      const int style, const wxString &name )
+      int style, const wxString &name )
 {
   m_needParent = TRUE;
 
@@ -160,7 +166,7 @@ void wxTextCtrl::DiscardEdits(void)
 };
 
 /*
-wxString wxTextCtrl::GetLineText( const long lineNo ) const
+wxString wxTextCtrl::GetLineText( long lineNo ) const
 {
 };
 
@@ -169,11 +175,11 @@ void wxTextCtrl::OnDropFiles( wxDropFilesEvent &event )
 {
 };
 
-long wxTextCtrl::PositionToXY( const long pos, long *x, long *y ) const
+long wxTextCtrl::PositionToXY( long pos, long *x, long *y ) const
 {
 };
 
-long wxTextCtrl::XYToPosition( const long x, const long y )
+long wxTextCtrl::XYToPosition( long x, long y )
 {
 };
 
@@ -182,7 +188,7 @@ int wxTextCtrl::GetNumberOfLines(void)
 };
 
 */
-void wxTextCtrl::SetInsertionPoint( const long pos )
+void wxTextCtrl::SetInsertionPoint( long pos )
 {
   int tmp = (int) pos;
   if (m_windowStyle & wxTE_MULTILINE)
@@ -201,7 +207,7 @@ void wxTextCtrl::SetInsertionPointEnd(void)
   SetInsertionPoint( pos-1 );
 };
 
-void wxTextCtrl::SetEditable( const bool editable )
+void wxTextCtrl::SetEditable( bool editable )
 {
   if (m_windowStyle & wxTE_MULTILINE)
     gtk_text_set_editable( GTK_TEXT(m_widget), editable );
@@ -209,12 +215,12 @@ void wxTextCtrl::SetEditable( const bool editable )
     gtk_entry_set_editable( GTK_ENTRY(m_widget), editable );
 };
 
-void wxTextCtrl::SetSelection( const long from, const long to )
+void wxTextCtrl::SetSelection( long from, long to )
 {
   gtk_editable_select_region( GTK_EDITABLE(m_widget), (gint)from, (gint)to );
 };
 
-void wxTextCtrl::ShowPosition( const long WXUNUSED(pos) )
+void wxTextCtrl::ShowPosition( long WXUNUSED(pos) )
 {
   wxFAIL_MSG("wxTextCtrl::ShowPosition not implemented");
 };
@@ -234,12 +240,12 @@ long wxTextCtrl::GetLastPosition(void) const
   return (long)pos-1;
 };
 
-void wxTextCtrl::Remove( const long from, const long to )
+void wxTextCtrl::Remove( long from, long to )
 {
   gtk_editable_delete_text( GTK_EDITABLE(m_widget), (gint)from, (gint)to );
 };
 
-void wxTextCtrl::Replace( const long from, const long to, const wxString &value )
+void wxTextCtrl::Replace( long from, long to, const wxString &value )
 {
   gtk_editable_delete_text( GTK_EDITABLE(m_widget), (gint)from, (gint)to );
   if (value.IsNull()) return;
@@ -273,65 +279,6 @@ void wxTextCtrl::OnChar( wxKeyEvent &WXUNUSED(event) )
 
 int wxTextCtrl::overflow(int c)
 {
-  // Make sure there is a holding area
-  if ( allocate()==EOF )
-  {
-    wxError("Streambuf allocation failed","Internal error");
-    return EOF;
-  }
-
-  // Verify that there are no characters in get area
-  if ( gptr() && gptr() < egptr() )
-  {
-     wxError("Who's trespassing my get area?","Internal error");
-     return EOF;
-  }
-
-  // Reset get area
-  setg(0,0,0);
-
-  // Make sure there is a put area
-  if ( ! pptr() )
-  {
-/* This doesn't seem to be fatal so comment out error message */
-//    wxError("Put area not opened","Internal error");
-    setp( base(), base() );
-  }
-
-  // Determine how many characters have been inserted but no consumed
-  int plen = pptr() - pbase();
-
-  // Now Jerry relies on the fact that the buffer is at least 2 chars
-  // long, but the holding area "may be as small as 1" ???
-  // And we need an additional \0, so let's keep this inefficient but
-  // safe copy.
-
-  // If c!=EOF, it is a character that must also be comsumed
-  int xtra = c==EOF? 0 : 1;
-
-  // Write temporary C-string to wxTextWindow
-  {
-  char *txt = new char[plen+xtra+1];
-  memcpy(txt, pbase(), plen);
-  txt[plen] = (char)c;     // append c
-  txt[plen+xtra] = '\0';   // append '\0' or overwrite c
-    // If the put area already contained \0, output will be truncated there
-  WriteText(txt);
-    delete[] txt;
-  }
-
-  // Reset put area
-  setp(pbase(), epptr());
-
-#if defined(__WATCOMC__)
-  return __NOT_EOF;
-#elif defined(zapeof)     // HP-UX (all cfront based?)
-  return zapeof(c);
-#else
-  return c!=EOF ? c : 0;  // this should make everybody happy
-#endif
-
-/* OLD CODE
   int len = pptr() - pbase();
   char *txt = new char[len+1];
   strncpy(txt, pbase(), len);
@@ -340,22 +287,10 @@ int wxTextCtrl::overflow(int c)
   setp(pbase(), epptr());
   delete[] txt;
   return EOF;
-*/
 };
 
 int wxTextCtrl::sync(void)
 {
-  // Verify that there are no characters in get area
-  if ( gptr() && gptr() < egptr() )
-  {
-     wxError("Who's trespassing my get area?","Internal error");
-     return EOF;
-  }
-
-  if ( pptr() && pptr() > pbase() ) return overflow(EOF);
-
-  return 0;
-/* OLD CODE
   int len = pptr() - pbase();
   char *txt = new char[len+1];
   strncpy(txt, pbase(), len);
@@ -364,7 +299,6 @@ int wxTextCtrl::sync(void)
   setp(pbase(), epptr());
   delete[] txt;
   return 0;
-*/
 };
 
 int wxTextCtrl::underflow(void)
@@ -378,7 +312,7 @@ wxTextCtrl& wxTextCtrl::operator<<(const wxString& s)
   return *this;
 }
 
-wxTextCtrl& wxTextCtrl::operator<<(const float f)
+wxTextCtrl& wxTextCtrl::operator<<(float f)
 {
   static char buf[100];
   sprintf(buf, "%.2f", f);
@@ -386,7 +320,7 @@ wxTextCtrl& wxTextCtrl::operator<<(const float f)
   return *this;
 }
 
-wxTextCtrl& wxTextCtrl::operator<<(const double d)
+wxTextCtrl& wxTextCtrl::operator<<(double d)
 {
   static char buf[100];
   sprintf(buf, "%.2f", d);
@@ -394,7 +328,7 @@ wxTextCtrl& wxTextCtrl::operator<<(const double d)
   return *this;
 }
 
-wxTextCtrl& wxTextCtrl::operator<<(const int i)
+wxTextCtrl& wxTextCtrl::operator<<(int i)
 {
   static char buf[100];
   sprintf(buf, "%i", i);
@@ -402,7 +336,7 @@ wxTextCtrl& wxTextCtrl::operator<<(const int i)
   return *this;
 }
 
-wxTextCtrl& wxTextCtrl::operator<<(const long i)
+wxTextCtrl& wxTextCtrl::operator<<(long i)
 {
   static char buf[100];
   sprintf(buf, "%ld", i);