X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/071a2d78147df569d57b1ef138ab126a586b594d..8b3fddc49326c0b6019cd7082218726aa17a5727:/src/gtk/control.cpp?ds=sidebyside diff --git a/src/gtk/control.cpp b/src/gtk/control.cpp index c150c147ee..72e2da93ef 100644 --- a/src/gtk/control.cpp +++ b/src/gtk/control.cpp @@ -11,6 +11,10 @@ #pragma implementation "control.h" #endif +#include "wx/defs.h" + +#if wxUSE_CONTROLS + #include "wx/control.h" #include @@ -26,14 +30,21 @@ wxControl::wxControl() m_needParent = TRUE; } -wxControl::wxControl( wxWindow *parent, +bool wxControl::Create( wxWindow *parent, wxWindowID id, const wxPoint &pos, const wxSize &size, long style, + const wxValidator& validator, const wxString &name ) { - (void)Create(parent, id, pos, size, style, name); + bool ret = wxWindow::Create(parent, id, pos, size, style, name); + +#if wxUSE_VALIDATORS + SetValidator(validator); +#endif + + return ret; } void wxControl::SetLabel( const wxString &label ) @@ -60,10 +71,17 @@ wxString wxControl::GetLabel() const wxSize wxControl::DoGetBestSize() const { + // Do not return any arbitrary default value... + wxASSERT_MSG( m_widget, wxT("DoGetBestSize called before creation") ); + GtkRequisition req; - (* GTK_WIDGET_CLASS( GTK_OBJECT(m_widget)->klass )->size_request ) + req.width = 2; + req.height = 2; + (* GTK_WIDGET_CLASS( GTK_OBJECT_GET_CLASS(m_widget) )->size_request ) (m_widget, &req ); return wxSize(req.width, req.height); } +#endif // wxUSE_CONTROLS +