[Scummvm-cvs-logs] SF.net SVN: scummvm: [26130] scummvm/trunk/engines/sky
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Wed Mar 14 13:32:43 CET 2007
Revision: 26130
http://scummvm.svn.sourceforge.net/scummvm/?rev=26130&view=rev
Author: fingolfin
Date: 2007-03-14 05:32:42 -0700 (Wed, 14 Mar 2007)
Log Message:
-----------
Fix for bug #1656880 (BASS: mouse initialized wrong in control panel)
Modified Paths:
--------------
scummvm/trunk/engines/sky/control.cpp
scummvm/trunk/engines/sky/mouse.cpp
scummvm/trunk/engines/sky/mouse.h
scummvm/trunk/engines/sky/sky.cpp
scummvm/trunk/engines/sky/sky.h
Modified: scummvm/trunk/engines/sky/control.cpp
===================================================================
--- scummvm/trunk/engines/sky/control.cpp 2007-03-14 10:46:41 UTC (rev 26129)
+++ scummvm/trunk/engines/sky/control.cpp 2007-03-14 12:32:42 UTC (rev 26130)
@@ -1560,14 +1560,14 @@
_keyPressed = (byte)event.kbd.ascii;
break;
case OSystem::EVENT_MOUSEMOVE:
+ _skyMouse->mouseMoved(event.mouse.x, event.mouse.y);
_mouseX = event.mouse.x;
_mouseY = event.mouse.y;
break;
case OSystem::EVENT_LBUTTONDOWN:
-#ifdef PALMOS_MODE
+ _skyMouse->mouseMoved(event.mouse.x, event.mouse.y);
_mouseX = event.mouse.x;
_mouseY = event.mouse.y;
-#endif
_mouseClicked = true;
break;
case OSystem::EVENT_LBUTTONUP:
Modified: scummvm/trunk/engines/sky/mouse.cpp
===================================================================
--- scummvm/trunk/engines/sky/mouse.cpp 2007-03-14 10:46:41 UTC (rev 26129)
+++ scummvm/trunk/engines/sky/mouse.cpp 2007-03-14 12:32:42 UTC (rev 26130)
@@ -216,15 +216,12 @@
CursorMan.showMouse(true);
}
-void Mouse::mouseEngine(uint16 mouseX, uint16 mouseY) {
- _mouseX = mouseX;
- _mouseY = mouseY;
-
+void Mouse::mouseEngine() {
_logicClick = (_mouseB > 0); // click signal is available for Logic for one gamecycle
if (!Logic::_scriptVariables[MOUSE_STOP]) {
if (Logic::_scriptVariables[MOUSE_STATUS] & (1 << 1)) {
- pointerEngine(mouseX + TOP_LEFT_X, mouseY + TOP_LEFT_Y);
+ pointerEngine(_mouseX + TOP_LEFT_X, _mouseY + TOP_LEFT_Y);
if (Logic::_scriptVariables[MOUSE_STATUS] & (1 << 2)) //buttons enabled?
buttonEngine1();
}
@@ -271,10 +268,14 @@
}
void Mouse::buttonPressed(uint8 button) {
-
_mouseB = button;
}
+void Mouse::mouseMoved(uint16 mouseX, uint16 mouseY) {
+ _mouseX = mouseX;
+ _mouseY = mouseY;
+}
+
void Mouse::buttonEngine1(void) {
//checks for clicking on special item
//"compare the size of this routine to S1 mouse_button"
Modified: scummvm/trunk/engines/sky/mouse.h
===================================================================
--- scummvm/trunk/engines/sky/mouse.h 2007-03-14 10:46:41 UTC (rev 26129)
+++ scummvm/trunk/engines/sky/mouse.h 2007-03-14 12:32:42 UTC (rev 26130)
@@ -41,7 +41,7 @@
Mouse(OSystem *system, Disk *skyDisk, SkyCompact *skyCompact);
~Mouse(void);
- void mouseEngine(uint16 mouseX, uint16 mouseY);
+ void mouseEngine();
void replaceMouseCursors(uint16 fileNo);
bool fnAddHuman(void);
void fnSaveCoods(void);
@@ -54,6 +54,7 @@
void spriteMouse(uint16 frameNum, uint8 mouseX, uint8 mouseY);
void useLogicInstance(Logic *skyLogic) { _skyLogic = skyLogic; };
void buttonPressed(uint8 button);
+ void mouseMoved(uint16 mouseX, uint16 mouseY);
void waitMouseNotPressed(int minDelay = 0);
uint16 giveMouseX(void) { return _mouseX; };
uint16 giveMouseY(void) { return _mouseY; };
Modified: scummvm/trunk/engines/sky/sky.cpp
===================================================================
--- scummvm/trunk/engines/sky/sky.cpp 2007-03-14 10:46:41 UTC (rev 26129)
+++ scummvm/trunk/engines/sky/sky.cpp 2007-03-14 12:32:42 UTC (rev 26130)
@@ -263,8 +263,6 @@
_systemVars.quitGame = false;
- _mouseX = GAME_SCREEN_WIDTH / 2;
- _mouseY = GAME_SCREEN_HEIGHT / 2;
_keyFlags = _keyPressed = 0;
uint16 result = 0;
@@ -303,7 +301,7 @@
_lastSaveTime += 30 * 1000; // try again in 30 secs
}
_skySound->checkFxQueue();
- _skyMouse->mouseEngine((uint16)_mouseX, (uint16)_mouseY);
+ _skyMouse->mouseEngine();
handleKey();
if (_systemVars.paused) {
do {
@@ -532,22 +530,15 @@
break;
case OSystem::EVENT_MOUSEMOVE:
if (!(_systemVars.systemFlags & SF_MOUSE_LOCKED)) {
- _mouseX = event.mouse.x;
- _mouseY = event.mouse.y;
+ _skyMouse->mouseMoved(event.mouse.x, event.mouse.y);
}
break;
case OSystem::EVENT_LBUTTONDOWN:
-#ifdef PALMOS_MODE
- _mouseX = event.mouse.x;
- _mouseY = event.mouse.y;
-#endif
+ _skyMouse->mouseMoved(event.mouse.x, event.mouse.y);
_skyMouse->buttonPressed(2);
break;
case OSystem::EVENT_RBUTTONDOWN:
-#ifdef PALMOS_MODE
- _mouseX = event.mouse.x;
- _mouseY = event.mouse.y;
-#endif
+ _skyMouse->mouseMoved(event.mouse.x, event.mouse.y);
_skyMouse->buttonPressed(1);
break;
case OSystem::EVENT_QUIT:
Modified: scummvm/trunk/engines/sky/sky.h
===================================================================
--- scummvm/trunk/engines/sky/sky.h 2007-03-14 10:46:41 UTC (rev 26129)
+++ scummvm/trunk/engines/sky/sky.h 2007-03-14 12:32:42 UTC (rev 26130)
@@ -60,8 +60,6 @@
byte _keyPressed, _keyFlags;
bool _floppyIntro;
- int _mouseX, _mouseY;
-
Sound *_skySound;
Disk *_skyDisk;
Text *_skyText;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list