X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6b8ef0b35d674bc262eb2005ac1321762c831d31..64b4a35954c4cd98a63a9f3d9f7e17ef0c15f30c:/include/wx/unix/evtloop.h diff --git a/include/wx/unix/evtloop.h b/include/wx/unix/evtloop.h index 35d918390c..0b71766068 100644 --- a/include/wx/unix/evtloop.h +++ b/include/wx/unix/evtloop.h @@ -1,4 +1,4 @@ - /////////////////////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////////////////////////// // Name: wx/unix/evtloop.h // Purpose: declares wxEventLoop class // Author: Lukasz Michalski (lm@zork.pl) @@ -18,17 +18,17 @@ // ---------------------------------------------------------------------------- class wxFDIODispatcher; - -namespace wxPrivate -{ - class PipeIOHandler; -} - -class WXDLLIMPEXP_BASE wxConsoleEventLoop : public wxEventLoopManual +class wxUnixEventLoopSource; +class wxWakeUpPipeMT; + +class WXDLLIMPEXP_BASE wxConsoleEventLoop +#ifdef __WXOSX__ +: public wxCFEventLoop +#else +: public wxEventLoopManual +#endif { public: - typedef wxUnixEventLoopSource Source; - // initialize the event loop, use IsOk() to check if we were successful wxConsoleEventLoop(); virtual ~wxConsoleEventLoop(); @@ -41,33 +41,13 @@ public: virtual bool IsOk() const { return m_dispatcher != NULL; } virtual bool YieldFor(long WXUNUSED(eventsToProcess)) { return true; } -#if wxUSE_EVENTLOOP_SOURCE - virtual wxUnixEventLoopSource* CreateSource() const - { - return new wxUnixEventLoopSource(); - } - - virtual wxUnixEventLoopSource* CreateSource(int res, - wxEventLoopSourceHandler* handler, - int flags) const - { - return new wxUnixEventLoopSource(res, handler, flags); - } -#endif - protected: -#if wxUSE_EVENTLOOP_SOURCE - // adding/removing sources - virtual bool DoAddSource(wxAbstractEventLoopSource* source); - virtual bool DoRemoveSource(wxAbstractEventLoopSource* source); -#endif - virtual void OnNextIteration(); private: // pipe used for wake up messages: when a child thread wants to wake up // the event loop in the main thread it writes to this pipe - wxPrivate::PipeIOHandler *m_wakeupPipe; + wxWakeUpPipeMT *m_wakeupPipe; // either wxSelectDispatcher or wxEpollDispatcher wxFDIODispatcher *m_dispatcher;