X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/48580976469f7c46b730f96effacfa680e55e3cd..8e34db1d94748cc22be9531173a3223faecc7099:/src/cocoa/evtloop.mm diff --git a/src/cocoa/evtloop.mm b/src/cocoa/evtloop.mm index 32f9ccbfa1..7a6e393670 100644 --- a/src/cocoa/evtloop.mm +++ b/src/cocoa/evtloop.mm @@ -6,7 +6,7 @@ // Created: 2003/10/02 // RCS-ID: $Id$ // Copyright: (c) 2003 David Elliott -// License: wxWindows licence +// License: wxWidgets licence /////////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" @@ -48,36 +48,28 @@ private: // wxEventLoop running and exiting // ---------------------------------------------------------------------------- -wxEventLoop *wxEventLoop::ms_activeLoop = NULL; - wxEventLoop::~wxEventLoop() { wxASSERT_MSG( !m_impl, _T("should have been deleted in Run()") ); } -bool wxEventLoop::IsRunning() const -{ - return m_impl; -} - int wxEventLoop::Run() { // event loops are not recursive, you need to create another loop! wxCHECK_MSG( !IsRunning(), -1, _T("can't reenter a message loop") ); - wxEventLoop *oldLoop = ms_activeLoop; - ms_activeLoop = this; + wxEventLoopActivator activate(this); m_impl = new wxEventLoopImpl; [[NSApplication sharedApplication] run]; + OnExit(); + int exitcode = m_impl->GetExitCode(); delete m_impl; m_impl = NULL; - ms_activeLoop = oldLoop; - return exitcode; }