[Scummvm-cvs-logs] SF.net SVN: scummvm:[47668] scummvm/trunk/engines/sci/graphics/gui.cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Fri Jan 29 15:05:22 CET 2010


Revision: 47668
          http://scummvm.svn.sourceforge.net/scummvm/?rev=47668&view=rev
Author:   m_kiewitz
Date:     2010-01-29 14:05:21 +0000 (Fri, 29 Jan 2010)

Log Message:
-----------
SCI: hacked up a bit sci32 graphics to support (theoretically) scaling

Modified Paths:
--------------
    scummvm/trunk/engines/sci/graphics/gui.cpp

Modified: scummvm/trunk/engines/sci/graphics/gui.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui.cpp	2010-01-29 13:48:02 UTC (rev 47667)
+++ scummvm/trunk/engines/sci/graphics/gui.cpp	2010-01-29 14:05:21 UTC (rev 47668)
@@ -974,6 +974,8 @@
 				uint16 leftPos = GET_SEL32V(_s->_segMan, viewObj, x);
 				uint16 topPos = GET_SEL32V(_s->_segMan, viewObj, y);
 				priority = GET_SEL32V(_s->_segMan, viewObj, priority);
+				uint16 scaleX = GET_SEL32V(_s->_segMan, viewObj, scaleX);
+				uint16 scaleY = GET_SEL32V(_s->_segMan, viewObj, scaleY);
 				//int16 signal = GET_SEL32V(_s->_segMan, viewObj, signal);
 
 				// FIXME: See above
@@ -991,8 +993,17 @@
 					continue;
 				}
 
-				if (viewId != 0xffff)
-					drawCel(viewId, loopNo, celNo, leftPos, topPos, priority, 0);
+				if (viewId != 0xffff) {
+					Common::Rect celRect;
+					View *view = _gfx->getView(viewId);
+					celRect.left = leftPos;
+					celRect.top = topPos;
+					celRect.right = celRect.left + view->getWidth(loopNo, celNo);
+					celRect.bottom = celRect.top + view->getHeight(loopNo, celNo);
+					celRect.clip(_gfx->_curPort->rect);
+					_gfx->drawCel(view, loopNo, celNo, celRect, priority, 0, scaleX, scaleY);
+				}
+					//drawCel(viewId, loopNo, celNo, leftPos, topPos, priority, 0);
 			}
 		}
 	}


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