wxDEPRECATED( bool Initialized() );
#endif // WXWIN_COMPATIBILITY_2_6
- // perform standard OnIdle behaviour, ensure that this is always called
- void OnIdle(wxIdleEvent& event);
-
-
protected:
// delete all objects in wxPendingDelete list
void DeletePendingObjects();
class WXDLLEXPORT wxApp: public wxAppBase
{
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
// ------------------------------------------------------------------------
// initialization
// ------------------------------------------------------------------------
wxVideoMode m_videoMode;
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
};
#endif // _WX_DFB_APP_H_
guint m_idleSourceId;
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
};
#endif // _WX_GTK_APP_H_
#endif // __WXDEBUG__
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
};
#endif // __GTKAPPH__
private:
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
wxVideoMode m_displayMode;
};
WXColormap m_mainColormap;
WXDisplay* m_initialDisplay;
wxPerDisplayDataMap* m_perDisplayData;
-
- DECLARE_EVENT_TABLE()
};
#endif
virtual int GetPrintMode() const { return m_printMode; }
// implementation only
- void OnIdle(wxIdleEvent& event);
void OnEndSession(wxCloseEvent& event);
void OnQueryEndSession(wxCloseEvent& event);
long m_maxRequestSize;
DECLARE_DYNAMIC_CLASS(wxApp)
- DECLARE_EVENT_TABLE()
};
#endif // _WX_X11_APP_H_
// wxApp Static member initialization
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-// EVT_END_SESSION(wxApp::OnEndSession)
-// EVT_QUERY_END_SESSION(wxApp::OnQueryEndSession)
-END_EVENT_TABLE()
// ----------------------------------------------------------------------------
// wxApp initialization/cleanup
// Returns true if more time is needed.
bool wxAppBase::ProcessIdle()
{
+ // process pending wx events before sending idle events
+ ProcessPendingEvents();
+
wxIdleEvent event;
bool needMore = false;
wxWindowList::compatibility_iterator node = wxTopLevelWindows.GetFirst();
node = node->GetNext();
}
- needMore = wxAppConsole::ProcessIdle();
+ if (wxAppConsole::ProcessIdle())
+ needMore = true;
+
+ // 'Garbage' collection of windows deleted with Close().
+ DeletePendingObjects();
+
+#if wxUSE_LOG
+ // flush the logged messages if any
+ wxLog::FlushActive();
+#endif
wxUpdateUIEvent::ResetUpdateTime();
return needMore;
}
-void wxAppBase::OnIdle(wxIdleEvent& WXUNUSED(event))
-{
- // 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
-
-}
-
// ----------------------------------------------------------------------------
// wxGUIAppTraitsBase
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
wxApp::wxApp()
{
}
IMPLEMENT_DYNAMIC_CLASS(wxApp,wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
wxApp::wxApp()
{
#ifdef __WXDEBUG__
IMPLEMENT_DYNAMIC_CLASS(wxApp,wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
wxApp::wxApp()
{
#ifdef __WXDEBUG__
void wxApp::OnIdle(wxIdleEvent& event)
{
- wxAppBase::OnIdle(event);
-
- // If they are pending events, we must process them: pending events are
- // either events to the threads other than main or events posted with
- // wxPostEvent() functions
- wxMacProcessNotifierAndPendingEvents();
+ wxMacProcessNotifierEvents();
if (!wxMenuBar::MacGetInstalledMenuBar() && wxMenuBar::MacGetCommonMenuBar())
wxMenuBar::MacGetCommonMenuBar()->MacInstallMenuBar();
IMPLEMENT_DYNAMIC_CLASS(wxApp,wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
-
wxApp::wxApp()
{
}
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
#ifdef __WXDEBUG__
extern "C"
{
void wxApp::OnIdle(wxIdleEvent& event)
{
- wxAppBase::OnIdle(event);
-
#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
gbInOnIdle = true;
- wxAppBase::OnIdle(rEvent);
-
#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
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxApp::OnIdle)
EVT_END_SESSION(wxApp::OnEndSession)
EVT_QUERY_END_SESSION(wxApp::OnQueryEndSession)
END_EVENT_TABLE()
// wxApp idle handling
// ----------------------------------------------------------------------------
-void wxApp::OnIdle(wxIdleEvent& event)
-{
- wxAppBase::OnIdle(event);
-}
-
void wxApp::WakeUpIdle()
{
}
IMPLEMENT_DYNAMIC_CLASS(wxApp, wxEvtHandler)
-BEGIN_EVENT_TABLE(wxApp, wxEvtHandler)
- EVT_IDLE(wxAppBase::OnIdle)
-END_EVENT_TABLE()
-
bool wxApp::Initialize(int& argC, wxChar **argV)
{
#if defined(__WXDEBUG__) && !wxUSE_NANOX