diff options
author | richiesams | 2013-08-30 15:34:42 -0500 |
---|---|---|
committer | Willem Jan Palenstijn | 2013-09-24 13:59:39 +0200 |
commit | 7d1dca9ad10c3121fc44f991e6b21c68db939344 (patch) | |
tree | 1b94bc8d6419ccc2e8803cdc562c5df26e529840 | |
parent | 03d3646f8463cddddb17f043b7b827be1ca1bb39 (diff) | |
download | scummvm-rg350-7d1dca9ad10c3121fc44f991e6b21c68db939344.tar.gz scummvm-rg350-7d1dca9ad10c3121fc44f991e6b21c68db939344.tar.bz2 scummvm-rg350-7d1dca9ad10c3121fc44f991e6b21c68db939344.zip |
ZVISION: Implement enabled/disabled support in Controls
-rw-r--r-- | engines/zvision/lever_control.cpp | 16 | ||||
-rw-r--r-- | engines/zvision/push_toggle_control.cpp | 8 |
2 files changed, 24 insertions, 0 deletions
diff --git a/engines/zvision/lever_control.cpp b/engines/zvision/lever_control.cpp index 45c21efd49..2a5fe4fcac 100644 --- a/engines/zvision/lever_control.cpp +++ b/engines/zvision/lever_control.cpp @@ -183,6 +183,10 @@ void LeverControl::parseLevFile(const Common::String &fileName) { } void LeverControl::onMouseDown(const Common::Point &screenSpacePos, const Common::Point &backgroundImageSpacePos) { + if (!_enabled) { + return; + } + if (_frameInfo[_currentFrame].hotspot.contains(backgroundImageSpacePos)) { _mouseIsCaptured = true; _lastMousePos = backgroundImageSpacePos; @@ -190,6 +194,10 @@ void LeverControl::onMouseDown(const Common::Point &screenSpacePos, const Common } void LeverControl::onMouseUp(const Common::Point &screenSpacePos, const Common::Point &backgroundImageSpacePos) { + if (!_enabled) { + return; + } + _mouseIsCaptured = false; _engine->getScriptManager()->setStateValue(_key, _currentFrame); @@ -201,6 +209,10 @@ void LeverControl::onMouseUp(const Common::Point &screenSpacePos, const Common:: } bool LeverControl::onMouseMove(const Common::Point &screenSpacePos, const Common::Point &backgroundImageSpacePos) { + if (!_enabled) { + return false; + } + bool cursorWasChanged = false; if (_mouseIsCaptured) { @@ -228,6 +240,10 @@ bool LeverControl::onMouseMove(const Common::Point &screenSpacePos, const Common } bool LeverControl::process(uint32 deltaTimeInMillis) { + if (!_enabled) { + return false; + } + // TODO: Implement reversal over time return false; diff --git a/engines/zvision/push_toggle_control.cpp b/engines/zvision/push_toggle_control.cpp index be038e767a..f4c0bc987e 100644 --- a/engines/zvision/push_toggle_control.cpp +++ b/engines/zvision/push_toggle_control.cpp @@ -71,12 +71,20 @@ PushToggleControl::~PushToggleControl() { } void PushToggleControl::onMouseUp(const Common::Point &screenSpacePos, const Common::Point &backgroundImageSpacePos) { + if (!_enabled) { + return; + } + if (_hotspot.contains(backgroundImageSpacePos)) { _engine->getScriptManager()->setStateValue(_key, 1); } } bool PushToggleControl::onMouseMove(const Common::Point &screenSpacePos, const Common::Point &backgroundImageSpacePos) { + if (!_enabled) { + return false; + } + if (_hotspot.contains(backgroundImageSpacePos)) { _engine->getCursorManager()->changeCursor(_hoverCursor); return true; |