[Scummvm-git-logs] scummvm master -> 7e0cac25de91ff2d1f14cd852e0a2b8dba64d173

bonki bonki at users.noreply.github.com
Sat Feb 3 22:10:48 CET 2018


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
7e0cac25de TUCKER: Add inventory and save slot scrolling via mouse wheel


Commit: 7e0cac25de91ff2d1f14cd852e0a2b8dba64d173
    https://github.com/scummvm/scummvm/commit/7e0cac25de91ff2d1f14cd852e0a2b8dba64d173
Author: Adrian Frühwirth (bonki at users.noreply.github.com)
Date: 2018-02-03T22:08:33+01:00

Commit Message:
TUCKER: Add inventory and save slot scrolling via mouse wheel

Fixes Trac#10424.

Changed paths:
    engines/tucker/tucker.cpp
    engines/tucker/tucker.h


diff --git a/engines/tucker/tucker.cpp b/engines/tucker/tucker.cpp
index d9e14b3..d233826 100644
--- a/engines/tucker/tucker.cpp
+++ b/engines/tucker/tucker.cpp
@@ -682,6 +682,12 @@ void TuckerEngine::parseEvents() {
 		case Common::EVENT_RBUTTONUP:
 			updateCursorPos(ev.mouse.x, ev.mouse.y);
 			break;
+		case Common::EVENT_WHEELUP:
+			_mouseButtonsMask |= 4;
+			break;
+		case Common::EVENT_WHEELDOWN:
+			_mouseButtonsMask |= 8;
+			break;
 		default:
 			break;
 		}
@@ -782,6 +788,8 @@ void TuckerEngine::updateMouseState() {
 			_gameHintsStringNum = 0;
 		}
 		_rightMouseButtonPressed = (_mouseButtonsMask & 2) != 0;
+		_mouseWheelUp   = _mouseButtonsMask & 4;
+		_mouseWheelDown = _mouseButtonsMask & 8;
 		_mouseButtonsMask = 0;
 		if (_prevMousePosX == _mousePosX && _prevMousePosY == _mousePosY) {
 			++_mouseIdleCounter;
@@ -1082,6 +1090,12 @@ void TuckerEngine::updateCursor() {
 	if (!_leftMouseButtonPressed) {
 		_mouseClick = 0;
 	}
+	if (_mousePosY >= 150) {
+		if (_mouseWheelUp)
+			moveDownInventoryObjects();
+		else if (_mouseWheelDown)
+			moveUpInventoryObjects();
+	}
 	if (_leftMouseButtonPressed && _mouseClick == 0) {
 		_fadedPanel = 0;
 		_mouseClick = 1;
@@ -1331,6 +1345,17 @@ void TuckerEngine::saveOrLoad() {
 	} else {
 		drawSpeechText(_scrollOffset + 120, 170, _infoBarBuf, 21, 102);
 	}
+	if (_mousePosY > 140) {
+		if (_mouseWheelUp && _currentSaveLoadGameState < 99) {
+			++_currentSaveLoadGameState;
+			_forceRedrawPanelItems = true;
+			return;
+		} else if (_mouseWheelDown && _currentSaveLoadGameState > 1) {
+			--_currentSaveLoadGameState;
+			_forceRedrawPanelItems = true;
+			return;
+		}
+	}
 	if (_leftMouseButtonPressed && _mouseClick == 0) {
 		_mouseClick = 1;
 		if (_mousePosX > 228 && _mousePosX < 240 && _mousePosY > 154 && _mousePosY < 170) {
diff --git a/engines/tucker/tucker.h b/engines/tucker/tucker.h
index 58ffa24..7c5a305 100644
--- a/engines/tucker/tucker.h
+++ b/engines/tucker/tucker.h
@@ -683,6 +683,8 @@ protected:
 	int _mouseIdleCounter;
 	bool _leftMouseButtonPressed;
 	bool _rightMouseButtonPressed;
+	bool _mouseWheelUp;
+	bool _mouseWheelDown;
 	int _lastKeyPressed;
 	bool _inputKeys[kInputKeyCount];
 	int _cursorNum;





More information about the Scummvm-git-logs mailing list