- ///////////////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////////////
// Name: wx/unix/evtloop.h
// Purpose: declares wxEventLoop class
// Author: Lukasz Michalski (lm@zork.pl)
// ----------------------------------------------------------------------------
class wxFDIODispatcher;
+class wxUnixEventLoopSource;
namespace wxPrivate
{
class PipeIOHandler;
}
-class WXDLLIMPEXP_BASE wxConsoleEventLoop : public wxEventLoopManual
+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();
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
+ virtual wxEventLoopSource *
+ AddSourceForFD(int fd, wxEventLoopSourceHandler *handler, int flags);
+#endif // wxUSE_EVENTLOOP_SOURCE
protected:
-#if wxUSE_EVENTLOOP_SOURCE
- // adding/removing sources
- virtual bool DoAddSource(wxAbstractEventLoopSource* source);
- virtual bool DoRemoveSource(wxAbstractEventLoopSource* source);
-#endif
-
virtual void OnNextIteration();
private: