X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2e1f50128a73bd61db8ee0077b631ada9486158a..4913272f9cdead94a6d1470e51d6fb14946b50e0:/src/gtk/control.cpp diff --git a/src/gtk/control.cpp b/src/gtk/control.cpp index 4368959b6c..9641245f39 100644 --- a/src/gtk/control.cpp +++ b/src/gtk/control.cpp @@ -12,10 +12,14 @@ #if wxUSE_CONTROLS -#include "wx/log.h" #include "wx/control.h" + +#ifndef WX_PRECOMP + #include "wx/log.h" + #include "wx/settings.h" +#endif + #include "wx/fontutil.h" -#include "wx/settings.h" #include "wx/gtk/private.h" // ============================================================================ @@ -30,7 +34,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxControl, wxWindow) wxControl::wxControl() { - m_needParent = TRUE; + m_needParent = true; } bool wxControl::Create( wxWindow *parent, @@ -126,7 +130,7 @@ GtkWidget* wxControl::GTKCreateFrame(const wxString& label) GtkWidget* framewidget = gtk_frame_new(NULL); gtk_frame_set_label_widget(GTK_FRAME(framewidget), labelwidget); - return framewidget; //note that the label is already set so you'll + return framewidget; //note that the label is already set so you'll //only need to call wxControl::SetLabel afterwards } @@ -362,5 +366,24 @@ wxControl::GetDefaultAttributesFromGTKWidget(wxGtkWidgetNewFromAdj_t widget_new, return attr; } -#endif // wxUSE_CONTROLS +// ---------------------------------------------------------------------------- +// idle handling +// ---------------------------------------------------------------------------- + +void wxControl::OnInternalIdle() +{ + if ( GtkShowFromOnIdle() ) + return; + if ( GTK_WIDGET_REALIZED(m_widget) ) + { + GTKUpdateCursor(); + + GTKSetDelayedFocusIfNeeded(); + } + + if ( wxUpdateUIEvent::CanUpdate(this) ) + UpdateWindowUI(wxUPDATE_UI_FROMIDLE); +} + +#endif // wxUSE_CONTROLS