[Scummvm-cvs-logs] SF.net SVN: scummvm:[54607] scummvm/trunk/engines/mohawk

bgk at users.sourceforge.net bgk at users.sourceforge.net
Mon Nov 29 21:53:14 CET 2010


Revision: 54607
          http://scummvm.svn.sourceforge.net/scummvm/?rev=54607&view=rev
Author:   bgk
Date:     2010-11-29 20:53:14 +0000 (Mon, 29 Nov 2010)

Log Message:
-----------
MOHAWK: Don't change current resource when dragging

Modified Paths:
--------------
    scummvm/trunk/engines/mohawk/myst.cpp
    scummvm/trunk/engines/mohawk/myst.h
    scummvm/trunk/engines/mohawk/myst_areas.cpp

Modified: scummvm/trunk/engines/mohawk/myst.cpp
===================================================================
--- scummvm/trunk/engines/mohawk/myst.cpp	2010-11-29 20:53:00 UTC (rev 54606)
+++ scummvm/trunk/engines/mohawk/myst.cpp	2010-11-29 20:53:14 UTC (rev 54607)
@@ -67,6 +67,7 @@
 	_curCard = 0;
 	_needsUpdate = false;
 	_curResource = -1;
+	_dragResource = 0;
 
 	_gfx = NULL;
 	_console = NULL;
@@ -294,7 +295,10 @@
 			switch (event.type) {
 			case Common::EVENT_MOUSEMOVE:
 				_needsUpdate = true;
-				checkCurrentResource();
+				// Keep the same resource when dragging
+				if (!_dragResource) {
+					checkCurrentResource();
+				}
 				if (_curResource >= 0 && _mouseClicked) {
 					debug(2, "Sending mouse move event to resource %d\n", _curResource);
 					_resources[_curResource]->handleMouseDrag(&event.mouse);
@@ -482,6 +486,7 @@
 	// TODO: Handle Script Resources
 
 	// Make sure we have the right cursor showing
+	_dragResource = 0;
 	_curResource = -1;
 	checkCurrentResource();
 

Modified: scummvm/trunk/engines/mohawk/myst.h
===================================================================
--- scummvm/trunk/engines/mohawk/myst.h	2010-11-29 20:53:00 UTC (rev 54606)
+++ scummvm/trunk/engines/mohawk/myst.h	2010-11-29 20:53:14 UTC (rev 54607)
@@ -190,6 +190,7 @@
 	MystSaveLoad *_saveLoad;
 	MystScriptParser *_scriptParser;
 	Common::Array<MystResource*> _resources;
+	MystResource *_dragResource;
 
 	bool _showResourceRects;
 	MystResource *loadResource(Common::SeekableReadStream *rlstStream, MystResource *parent);

Modified: scummvm/trunk/engines/mohawk/myst_areas.cpp
===================================================================
--- scummvm/trunk/engines/mohawk/myst_areas.cpp	2010-11-29 20:53:00 UTC (rev 54606)
+++ scummvm/trunk/engines/mohawk/myst_areas.cpp	2010-11-29 20:53:14 UTC (rev 54607)
@@ -527,6 +527,9 @@
 }
 
 void MystResourceType10::handleMouseDown(Common::Point *mouse) {
+	// Tell the engine we are dragging a resource
+	_vm->_dragResource = this;
+
 	updatePosition(mouse);
 
 	MystResourceType8::handleMouseDown(mouse);
@@ -550,6 +553,9 @@
 
 	// Draw slider
 	drawConditionalDataToScreen(1);
+
+	// No longer in drag mode
+	_vm->_dragResource = 0;
 }
 
 void MystResourceType10::handleMouseDrag(Common::Point *mouse) {


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