From 7ea081e7a0df465b6fda8e01aa0f1e7a990e24be Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sat, 26 Jul 2014 20:19:35 -0400 Subject: MADS: Add support to event manager for intercepting events --- engines/mads/events.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'engines/mads/events.cpp') diff --git a/engines/mads/events.cpp b/engines/mads/events.cpp index 41c8255ce8..de4dc3c070 100644 --- a/engines/mads/events.cpp +++ b/engines/mads/events.cpp @@ -46,6 +46,7 @@ EventsManager::EventsManager(MADSEngine *vm) { _mouseMoved = false; _vD8 = 0; _rightMousePressed = false; + _eventTarget = nullptr; } EventsManager::~EventsManager() { @@ -138,6 +139,12 @@ void EventsManager::pollEvents() { Common::Event event; while (g_system->getEventManager()->pollEvent(event)) { + // If an event target is specified, pass the event to it + if (_eventTarget) { + _eventTarget->onEvent(event); + continue; + } + // Handle keypress switch (event.type) { case Common::EVENT_QUIT: -- cgit v1.2.3