]> git.saurik.com Git - wxWidgets.git/blobdiff - src/palmos/evtloop.cpp
can't pass objects through ... (please don't ever ignore this gcc warning)
[wxWidgets.git] / src / palmos / evtloop.cpp
index 0c872acbbed8132fe774017ade598c97161a4258..ec93249cbcfb144c8507430fb0ad97f6cfb56c5d 100644 (file)
 // headers
 // ----------------------------------------------------------------------------
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-    #pragma implementation "evtloop.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
     WX_DEFINE_OBJARRAY(wxMsgArray);
 #endif // wxUSE_THREADS
 
-// ----------------------------------------------------------------------------
-// helper class
-// ----------------------------------------------------------------------------
-
-// this object sets the wxEventLoop given to the ctor as the currently active
-// one and unsets it in its dtor
-class wxEventLoopActivator
-{
-public:
-    wxEventLoopActivator(wxEventLoop **pActive,
-                         wxEventLoop *evtLoop)
-    {
-        m_pActive = pActive;
-        m_evtLoopOld = *pActive;
-        *pActive = evtLoop;
-    }
-
-    ~wxEventLoopActivator()
-    {
-        // restore the previously active event loop
-        *m_pActive = m_evtLoopOld;
-    }
-
-private:
-    wxEventLoop *m_evtLoopOld;
-    wxEventLoop **m_pActive;
-};
+#include <Event.h>
+#include <SystemMgr.h>
+#include <Menu.h>
+#include <Form.h>
 
 // ============================================================================
 // wxEventLoop implementation
 // ============================================================================
 
-wxEventLoop *wxEventLoopBase::ms_activeLoop = NULL;
-
 // ----------------------------------------------------------------------------
 // ctor/dtor
 // ----------------------------------------------------------------------------
@@ -121,6 +92,8 @@ int wxEventLoop::Run()
     status_t    error;
     EventType    event;
 
+    wxEventLoopActivator activate(this);
+
     do {
         wxTheApp && wxTheApp->ProcessIdle();