diff options
-rw-r--r-- | engines/zvision/events.cpp | 11 | ||||
-rw-r--r-- | engines/zvision/zvision.h | 3 |
2 files changed, 14 insertions, 0 deletions
diff --git a/engines/zvision/events.cpp b/engines/zvision/events.cpp index ca96f52457..bea476fa41 100644 --- a/engines/zvision/events.cpp +++ b/engines/zvision/events.cpp @@ -39,6 +39,17 @@ void ZVision::registerMouseEvent(const MouseEvent &event) { _mouseEvents.push_back(event); } +bool ZVision::removeMouseEvent(const uint32 key) { + for (Common::List<MouseEvent>::iterator iter = _mouseEvents.begin(); iter != _mouseEvents.end(); iter++) { + if ((*iter)._key == key) { + _mouseEvents.erase(iter); + return true; + } + } + + return false; +} + void ZVision::clearAllMouseEvents() { _mouseEvents.clear(); } diff --git a/engines/zvision/zvision.h b/engines/zvision/zvision.h index 58812d4d11..9e9d5db951 100644 --- a/engines/zvision/zvision.h +++ b/engines/zvision/zvision.h @@ -133,6 +133,9 @@ public: * @param event The event to register */ void registerMouseEvent(const MouseEvent &event); + + bool removeMouseEvent(const uint32 key); + /** Remove all MouseEvents from the event system */ void clearAllMouseEvents(); |