#if _WIN32_IE >= 0x0300 && \
(!defined(__MINGW32__) || wxCHECK_W32API_VERSION( 2, 0 )) && \
- !defined(__CYGWIN__) && !defined(__WXWINCE__)
+ !defined(__CYGWIN__) && !defined(__WXWINCE__) && \
+ (!defined(_MSC_VER) || (_MSC_VER > 1100))
#include <shlwapi.h>
#endif
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
wxDC::ClearCache();
#endif // wxUSE_DC_CACHEING
- // Send OnIdle events to all windows
- if ( SendIdleEvents() )
- {
- // SendIdleEvents() returns TRUE if at least one window requested more
- // idle events
- event.RequestMore(TRUE);
- }
-
wxIsInOnIdleFlag = FALSE;
}