[Scummvm-cvs-logs] SF.net SVN: scummvm: [23744] scummvm/trunk/backends/platform/wince/wince-sdl.cpp
knakos at users.sourceforge.net
knakos at users.sourceforge.net
Fri Aug 25 08:30:24 CEST 2006
Revision: 23744
Author: knakos
Date: 2006-08-24 23:30:18 -0700 (Thu, 24 Aug 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=23744&view=rev
Log Message:
-----------
fix update rect when adjusting ratio (backport)
Modified Paths:
--------------
scummvm/trunk/backends/platform/wince/wince-sdl.cpp
Modified: scummvm/trunk/backends/platform/wince/wince-sdl.cpp
===================================================================
--- scummvm/trunk/backends/platform/wince/wince-sdl.cpp 2006-08-25 06:23:09 UTC (rev 23743)
+++ scummvm/trunk/backends/platform/wince/wince-sdl.cpp 2006-08-25 06:30:18 UTC (rev 23744)
@@ -893,6 +893,8 @@
if (_mode != GFX_NORMAL)
return false;
+ _adjustAspectRatio = false;
+
if (CEDevice::hasPocketPCResolution()) {
if (!_orientationLandscape && (_screenWidth == 320 || !_screenWidth)) {
_scaleFactorXm = 3;
@@ -911,6 +913,7 @@
_scaleFactorYd = 5;
_scalerProc = PocketPCLandscapeAspect;
_modeFlags = 0;
+ _adjustAspectRatio = true;
} else {
_scaleFactorXm = 1;
_scaleFactorXd = 1;
@@ -1440,10 +1443,8 @@
dst_y *= _scaleFactorYm;
dst_y /= _scaleFactorYd;
- if (_adjustAspectRatio) {
- orig_dst_y = dst_y;
- dst_y = real2Aspect(dst_y);
- }
+ if (_adjustAspectRatio)
+ dst_h = real2Aspect(dst_h);
// clip inside platform screen (landscape,bottom only)
if (_orientationLandscape && !_zoomDown && dst_y+dst_h > _screenHeight)
@@ -1465,11 +1466,10 @@
else
r->y = dst_y - 240;
r->w = r->w * _scaleFactorXm / _scaleFactorXd;
- r->h = dst_h * _scaleFactorYm / _scaleFactorYd;
-
- /*if (_adjustAspectRatio && orig_dst_y / _scaleFactor < _screenHeight)
- r->h = stretch200To240((uint8 *) _hwscreen->pixels, dstPitch, r->w, r->h, r->x, r->y, orig_dst_y);
- */
+ if (!_adjustAspectRatio)
+ r->h = dst_h * _scaleFactorYm / _scaleFactorYd;
+ else
+ r->h = dst_h;
}
SDL_UnlockSurface(srcSurf);
SDL_UnlockSurface(_hwscreen);
@@ -1828,7 +1828,7 @@
int old_mouse_w = _mouseCurState.w;
int old_mouse_h = _mouseCurState.h;
- // clip the mouse rect, and addjust the src pointer accordingly
+ // clip the mouse rect, and adjust the src pointer accordingly
if (old_mouse_x < 0) {
old_mouse_w += old_mouse_x;
old_mouse_x = 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