X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0279e8448266e474d07bf7e3b0635f2a53fcc8b8..79f585d90388128f9d245f7c92d3013b98b9ed14:/src/gtk/textctrl.cpp?ds=sidebyside diff --git a/src/gtk/textctrl.cpp b/src/gtk/textctrl.cpp index e832dcdf05..0f8df9de99 100644 --- a/src/gtk/textctrl.cpp +++ b/src/gtk/textctrl.cpp @@ -192,20 +192,21 @@ bool wxTextCtrl::Create( wxWindow *parent, m_text = gtk_entry_new(); } - wxSize new_size = size, - sizeBest = DoGetBestSize(); + m_parent->DoAddChild( this ); + + PostCreation(); + + SetFont( parent->GetFont() ); + + wxSize size_best( DoGetBestSize() ); + wxSize new_size( size ); if (new_size.x == -1) - new_size.x = sizeBest.x; + new_size.x = size_best.x; if (new_size.y == -1) - new_size.y = sizeBest.y; - + new_size.y = size_best.y; if ((new_size.x != size.x) || (new_size.y != size.y)) SetSize( new_size.x, new_size.y ); - m_parent->DoAddChild( this ); - - PostCreation(); - if (multi_line) gtk_widget_show(m_text); @@ -606,6 +607,26 @@ void wxTextCtrl::SetEditable( bool editable ) gtk_entry_set_editable( GTK_ENTRY(m_text), editable ); } +bool wxTextCtrl::Enable( bool enable ) +{ + if (!wxWindowBase::Enable(enable)) + { + // nothing to do + return FALSE; + } + + if (m_windowStyle & wxTE_MULTILINE) + { + gtk_text_set_editable( GTK_TEXT(m_text), enable ); + } + else + { + gtk_widget_set_sensitive( m_text, enable ); + } + + return TRUE; +} + void wxTextCtrl::DiscardEdits() { m_modified = FALSE;