Rationalised OnIdle
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -802,23 +802,8 @@ void wxApp::OnIdle(wxIdleEvent& event)
|
||||
return;
|
||||
|
||||
wxIsInOnIdleFlag = TRUE;
|
||||
|
||||
// If there are pending events, we must process them: pending events
|
||||
// are either events to the threads other than main or events posted
|
||||
// with wxPostEvent() functions
|
||||
// GRG: I have moved this here so that all pending events are processed
|
||||
// before starting to delete any objects. This behaves better (in
|
||||
// particular, wrt wxPostEvent) and is coherent with wxGTK's current
|
||||
// behaviour. Changed Feb/2000 before 2.1.14
|
||||
ProcessPendingEvents();
|
||||
|
||||
// 'Garbage' collection of windows deleted with Close().
|
||||
DeletePendingObjects();
|
||||
|
||||
#if wxUSE_LOG
|
||||
// flush the logged messages if any
|
||||
wxLog::FlushActive();
|
||||
#endif // wxUSE_LOG
|
||||
|
||||
wxAppBase::OnIdle(event);
|
||||
|
||||
#if wxUSE_DC_CACHEING
|
||||
// automated DC cache management: clear the cached DCs and bitmap
|
||||
@@ -828,17 +813,6 @@ void wxApp::OnIdle(wxIdleEvent& event)
|
||||
wxDC::ClearCache();
|
||||
#endif // wxUSE_DC_CACHEING
|
||||
|
||||
// Now done in ProcessIdle()
|
||||
#if 0
|
||||
// Send OnIdle events to all windows
|
||||
if ( SendIdleEvents() )
|
||||
{
|
||||
// SendIdleEvents() returns TRUE if at least one window requested more
|
||||
// idle events
|
||||
event.RequestMore(TRUE);
|
||||
}
|
||||
#endif
|
||||
|
||||
wxIsInOnIdleFlag = FALSE;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user