+ return ret;
+}
+
+wxSize wxStaticText::DoGetBestSize() const
+{
+ // Do not return any arbitrary default value...
+ wxASSERT_MSG( m_widget, wxT("wxStaticText::DoGetBestSize called before creation") );
+
+ // this invalidates the size request
+ gtk_label_set_line_wrap( GTK_LABEL(m_widget), TRUE );
+ gtk_label_set_line_wrap( GTK_LABEL(m_widget), FALSE );
+
+ GtkRequisition req;
+ req.width = 2;
+ req.height = 2;
+ (* GTK_WIDGET_CLASS( GTK_OBJECT_GET_CLASS(m_widget) )->size_request )
+ (m_widget, &req );
+
+ wxSize best(req.width, req.height);
+ CacheBestSize(best);
+ return best;
+}
+
+bool wxStaticText::SetForegroundColour(const wxColour& colour)
+{
+ // First, we call the base class member
+ wxControl::SetForegroundColour(colour);
+ // Then, to force the color change, we set the label with the current label
+ SetLabel(GetLabel());
+ return true;