]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/textctrl.cpp
Fixed small bug in tab code WRT to having only
[wxWidgets.git] / src / gtk1 / textctrl.cpp
index a81a25db284d52b76c5c654ce0290dd2e5f996e8..ddd7432d18896c8ada5671d70251eefd6a393e73 100644 (file)
@@ -192,12 +192,21 @@ bool wxTextCtrl::Create( wxWindow *parent,
           m_text = gtk_entry_new();
     }
 
           m_text = gtk_entry_new();
     }
 
-    SetSizeOrDefault( size );
-
     m_parent->DoAddChild( this );
 
     PostCreation();
 
     m_parent->DoAddChild( this );
 
     PostCreation();
 
+    SetFont( parent->GetFont() );
+
+    wxSize size_best( DoGetBestSize() );
+    wxSize new_size( size );
+    if (new_size.x == -1)
+        new_size.x = size_best.x;
+    if (new_size.y == -1)
+        new_size.y = size_best.y;
+    if ((new_size.x != size.x) || (new_size.y != size.y))
+        SetSize( new_size.x, new_size.y );
+
     if (multi_line)
         gtk_widget_show(m_text);
 
     if (multi_line)
         gtk_widget_show(m_text);
 
@@ -977,5 +986,6 @@ void wxTextCtrl::OnInternalIdle()
 wxSize wxTextCtrl::DoGetBestSize() const
 {
     // FIXME should be different for multi-line controls...
 wxSize wxTextCtrl::DoGetBestSize() const
 {
     // FIXME should be different for multi-line controls...
-    return wxSize(80, 26);
+    wxSize ret( wxControl::DoGetBestSize() );
+    return wxSize(80, ret.y);
 }
 }