// Name: src/common/evtloopcmn.cpp
// Purpose: common wxEventLoop-related stuff
// Author: Vadim Zeitlin
-// Modified by:
// Created: 2006-01-12
-// RCS-ID: $Id$
-// Copyright: (c) 2006 Vadim Zeitlin <vadim@wxwindows.org>
+// Copyright: (c) 2006, 2013 Vadim Zeitlin <vadim@wxwindows.org>
+// (c) 2013 Rob Bresalier
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#endif //WX_PRECOMP
#include "wx/scopeguard.h"
+#include "wx/apptrait.h"
+#include "wx/private/eventloopsourcesmanager.h"
// ----------------------------------------------------------------------------
// wxEventLoopBase
return YieldFor(wxEVT_CATEGORY_ALL);
}
+#if wxUSE_EVENTLOOP_SOURCE
+
+wxEventLoopSource*
+wxEventLoopBase::AddSourceForFD(int fd,
+ wxEventLoopSourceHandler *handler,
+ int flags)
+{
+#if wxUSE_CONSOLE_EVENTLOOP
+ // Delegate to the event loop sources manager defined by it.
+ wxEventLoopSourcesManagerBase* const
+ manager = wxApp::GetValidTraits().GetEventLoopSourcesManager();
+ wxCHECK_MSG( manager, NULL, wxS("Must have wxEventLoopSourcesManager") );
+
+ return manager->AddSourceForFD(fd, handler, flags);
+#else // !wxUSE_CONSOLE_EVENTLOOP
+ return NULL;
+#endif // wxUSE_CONSOLE_EVENTLOOP/!wxUSE_CONSOLE_EVENTLOOP
+}
+
+#endif // wxUSE_EVENTLOOP_SOURCE
+
// wxEventLoopManual is unused in the other ports
#if defined(__WINDOWS__) || defined(__WXDFB__) || ( ( defined(__UNIX__) && !defined(__WXOSX__) ) && wxUSE_BASE)