X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ce00f59b5b169752d2f05ce3bb1a88ddc1b38b4c..661698e54f2bc599dc1a961ffbae08ccdd6b9b97:/include/wx/osx/evtloop.h diff --git a/include/wx/osx/evtloop.h b/include/wx/osx/evtloop.h index 4e45db718c..48b952e650 100644 --- a/include/wx/osx/evtloop.h +++ b/include/wx/osx/evtloop.h @@ -14,79 +14,6 @@ #ifndef _WX_OSX_EVTLOOP_H_ #define _WX_OSX_EVTLOOP_H_ -DECLARE_WXOSX_OPAQUE_CFREF( CFRunLoop ); -DECLARE_WXOSX_OPAQUE_CFREF( CFRunLoopObserver ); - -class WXDLLIMPEXP_BASE wxCFEventLoop : public wxEventLoopBase -{ -public: - wxCFEventLoop(); - virtual ~wxCFEventLoop(); - - // enters a loop calling OnNextIteration(), Pending() and Dispatch() and - // terminating when Exit() is called - virtual int Run(); - - // sets the "should exit" flag and wakes up the loop so that it terminates - // soon - virtual void Exit(int rc = 0); - - // return true if any events are available - virtual bool Pending() const; - - // dispatch a single event, return false if we should exit from the loop - virtual bool Dispatch(); - - // same as Dispatch() but doesn't wait for longer than the specified (in - // ms) timeout, return true if an event was processed, false if we should - // exit the loop or -1 if timeout expired - virtual int DispatchTimeout(unsigned long timeout); - - // implement this to wake up the loop: usually done by posting a dummy event - // to it (can be called from non main thread) - virtual void WakeUp(); - - virtual bool YieldFor(long eventsToProcess); - -#if wxUSE_EVENTLOOP_SOURCE - virtual wxEventLoopSource * - AddSourceForFD(int fd, wxEventLoopSourceHandler *handler, int flags); -#endif // wxUSE_EVENTLOOP_SOURCE - - void ObserverCallBack(CFRunLoopObserverRef observer, int activity); - -protected: - // get the currently executing CFRunLoop - virtual CFRunLoopRef CFGetCurrentRunLoop() const; - - virtual int DoDispatchTimeout(unsigned long timeout); - - virtual void DoRun(); - - virtual void DoStop(); - - // should we exit the loop? - bool m_shouldExit; - - // the loop exit code - int m_exitcode; - - // cfrunloop - CFRunLoopRef m_runLoop; - - // runloop observer - CFRunLoopObserverRef m_runLoopObserver; - -private: - // process all already pending events and dispatch a new one (blocking - // until it appears in the event queue if necessary) - // - // returns the return value of DoDispatchTimeout() - int DoProcessEvents(); -}; - -#if wxUSE_GUI - #ifdef __WXOSX_COCOA__ #include "wx/osx/cocoa/evtloop.h" #else @@ -103,15 +30,12 @@ public: wxModalEventLoop(WXWindow modalNativeWindow); protected: - virtual void DoRun(); - - virtual void DoStop(); + virtual void OSXDoRun(); + virtual void OSXDoStop(); // (in case) the modal window for this event loop wxNonOwnedWindow* m_modalWindow; WXWindow m_modalNativeWindow; }; -#endif // wxUSE_GUI - #endif // _WX_OSX_EVTLOOP_H_