From 5c88d2cc42d9b6124f552464b9c02e800f3956df Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Wed, 31 Dec 2014 11:12:18 -1000 Subject: XEEN: Implement window framing code and dialog event handling --- engines/xeen/events.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'engines/xeen/events.cpp') diff --git a/engines/xeen/events.cpp b/engines/xeen/events.cpp index 54cc843dbb..fd0871edbc 100644 --- a/engines/xeen/events.cpp +++ b/engines/xeen/events.cpp @@ -94,6 +94,9 @@ void EventsManager::pollEvents() { case Common::EVENT_KEYDOWN: _keyCode = event.kbd.keycode; break; + case Common::EVENT_MOUSEMOVE: + _mousePos = event.mouse; + break; case Common::EVENT_LBUTTONDOWN: _leftButton = true; return; @@ -168,6 +171,16 @@ uint32 EventsManager::timeElapsed() { return _frameCounter - _gameCounter; } +bool EventsManager::wait(uint numFrames, bool interruptable) { + while (!_vm->shouldQuit() && timeElapsed() < numFrames) { + pollEventsAndWait(); + if (interruptable && (_leftButton || _rightButton || isKeyPending())) + return true; + } + + return false; +} + /** * Handles moving to the next game frame */ -- cgit v1.2.3