}
#endif // wxUSE_THREADS
+ //
// Process the message
- if (!ProcessMessage((WXMSG *)&svCurrentMsg))
- {
- ::WinDispatchMsg(vHabmain, (PQMSG)&svCurrentMsg);
- }
+ //
+ DoMessage((WXMSG *)&svCurrentMsg);
}
return TRUE;
} // end of wxApp::DoMessage
+void wxApp::DoMessage(
+ WXMSG* pMsg
+)
+{
+ if (!ProcessMessage((WXMSG *)&svCurrentMsg))
+ {
+ ::WinDispatchMsg(vHabmain, (PQMSG)&svCurrentMsg);
+ }
+} // end of wxApp::DoMessage
+
//////////////////////////////////////////////////////////////////////////////
//
// Keep trying to process messages until WM_QUIT
wxLog::FlushActive();
#endif // wxUSE_LOG
+#if wxUSE_DC_CACHEING
+ // automated DC cache management: clear the cached DCs and bitmap
+ // if it's likely that the app has finished with them, that is, we
+ // get an idle event and we're not dragging anything.
+ if (!::WinGetKeyState(MK_LBUTTON) &&
+ !::WinGetKeyState(MK_MBUTTON) &&
+ !::WinGetKeyState(MK_RBUTTON))
+ wxDC::ClearCache();
+#endif // wxUSE_DC_CACHEING
+
//
// Send OnIdle events to all windows
//