Extract wxFDIOEventLoopSourceHandler in its own header.

No real changes, this is just in preparation for the further refactoring.

See #10258.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2013-07-03 00:28:16 +00:00
parent bd7cea0ea6
commit 5e38246378
2 changed files with 40 additions and 27 deletions

View File

@ -0,0 +1,39 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/private/fdioeventloopsourcehandler.h
// Purpose: declares wxFDIOEventLoopSourceHandler class
// Author: Rob Bresalier, Vadim Zeitlin
// Created: 2013-06-13 (extracted from src/unix/evtloopunix.cpp)
// RCS-ID: $Id$
// Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
// (c) 2013 Rob Bresalier
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_PRIVATE_FDIO_EVENT_LOOP_SOURCE_HANDLER_H
#define _WX_PRIVATE_FDIO_EVENT_LOOP_SOURCE_HANDLER_H
#include "wx/evtloopsrc.h"
// This class is a temporary bridge between event loop sources and
// FDIODispatcher. It is going to be removed soon, when all subject interfaces
// are modified
class wxFDIOEventLoopSourceHandler : public wxFDIOHandler
{
public:
wxEXPLICIT wxFDIOEventLoopSourceHandler(wxEventLoopSourceHandler* handler)
: m_handler(handler)
{
}
// Just forward to the real handler.
virtual void OnReadWaiting() { m_handler->OnReadWaiting(); }
virtual void OnWriteWaiting() { m_handler->OnWriteWaiting(); }
virtual void OnExceptionWaiting() { m_handler->OnExceptionWaiting(); }
protected:
wxEventLoopSourceHandler* const m_handler;
wxDECLARE_NO_COPY_CLASS(wxFDIOEventLoopSourceHandler);
};
#endif // _WX_PRIVATE_FDIO_EVENT_LOOP_SOURCE_HANDLER_H

View File

@ -36,6 +36,7 @@
#include "wx/unix/private/epolldispatcher.h"
#include "wx/unix/private/wakeuppipe.h"
#include "wx/private/selectdispatcher.h"
#include "wx/private/fdioeventloopsourcehandler.h"
#if wxUSE_EVENTLOOP_SOURCE
#include "wx/evtloopsrc.h"
@ -86,33 +87,6 @@ wxConsoleEventLoop::~wxConsoleEventLoop()
#if wxUSE_EVENTLOOP_SOURCE
// This class is a temporary bridge between event loop sources and
// FDIODispatcher. It is going to be removed soon, when all subject interfaces
// are modified
class wxFDIOEventLoopSourceHandler : public wxFDIOHandler
{
public:
wxFDIOEventLoopSourceHandler(wxEventLoopSourceHandler* handler) :
m_impl(handler) { }
virtual void OnReadWaiting()
{
m_impl->OnReadWaiting();
}
virtual void OnWriteWaiting()
{
m_impl->OnWriteWaiting();
}
virtual void OnExceptionWaiting()
{
m_impl->OnExceptionWaiting();
}
protected:
wxEventLoopSourceHandler* m_impl;
};
wxEventLoopSource *
wxConsoleEventLoop::AddSourceForFD(int fd,
wxEventLoopSourceHandler *handler,