X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bc7879ec4c38d354bb66b0695016d5c41f8a37b3..6c4da6d6111f3d8df5efdffb3aa3bf4c9b4d1d05:/include/wx/evtloop.h diff --git a/include/wx/evtloop.h b/include/wx/evtloop.h index 6da21416a5..04f0a97761 100644 --- a/include/wx/evtloop.h +++ b/include/wx/evtloop.h @@ -17,8 +17,7 @@ // TODO: implement wxEventLoopSource for MSW (it should wrap a HANDLE and be // monitored using MsgWaitForMultipleObjects()) -#if defined(__WXOSX__) || defined(__WXGTK20__) || defined(__WXDFB__) || \ - (!wxUSE_GUI && defined(__UNIX__)) +#if defined(__WXOSX__) || defined(__UNIX__) #define wxUSE_EVENTLOOP_SOURCE 1 #else #define wxUSE_EVENTLOOP_SOURCE 0 @@ -185,7 +184,7 @@ protected: wxDECLARE_NO_COPY_CLASS(wxEventLoopBase); }; -#if defined(__WXMSW__) || defined(__WXMAC__) || defined(__WXDFB__) || defined(__UNIX__) +#if defined(__WXMSW__) || defined(__WXMAC__) || defined(__WXDFB__) || (defined(__UNIX__) && !defined(__WXOSX__)) // this class can be used to implement a standard event loop logic using // Pending() and Dispatch() @@ -228,11 +227,6 @@ private: #endif // platforms using "manual" loop -// include the header defining wxConsoleEventLoop for Unix systems -#if defined(__UNIX__) - #include "wx/unix/evtloop.h" -#endif - // we're moving away from old m_impl wxEventLoop model as otherwise the user // code doesn't have access to platform-specific wxEventLoop methods and this // can sometimes be very useful (e.g. under MSW this is necessary for @@ -270,6 +264,19 @@ public: wxGUIEventLoop() { m_impl = NULL; } virtual ~wxGUIEventLoop(); +#if wxUSE_EVENTLOOP_SOURCE + // We need to define a base class pure virtual method but we can't provide + // a generic implementation for it so simply fail. + virtual wxEventLoopSource * + AddSourceForFD(int WXUNUSED(fd), + wxEventLoopSourceHandler * WXUNUSED(handler), + int WXUNUSED(flags)) + { + wxFAIL_MSG( "support for event loop sources not implemented" ); + return NULL; + } +#endif // wxUSE_EVENTLOOP_SOURCE + virtual int Run(); virtual void Exit(int rc = 0); virtual bool Pending() const; @@ -302,6 +309,11 @@ protected: #endif // wxUSE_GUI +// include the header defining wxConsoleEventLoop for Unix systems +#if defined(__UNIX__) +#include "wx/unix/evtloop.h" +#endif + #if wxUSE_GUI // we use a class rather than a typedef because wxEventLoop is // forward-declared in many places @@ -318,7 +330,7 @@ protected: inline bool wxEventLoopBase::IsRunning() const { return GetActive() == this; } -#if wxUSE_GUI +#if wxUSE_GUI && !defined(__WXOSX__) // ---------------------------------------------------------------------------- // wxModalEventLoop // ----------------------------------------------------------------------------