[Scummvm-cvs-logs] SF.net SVN: scummvm:[43089] scummvm/branches/branch-1-0-0/backends/platform /wince
knakos at users.sourceforge.net
knakos at users.sourceforge.net
Thu Aug 6 20:07:13 CEST 2009
Revision: 43089
http://scummvm.svn.sourceforge.net/scummvm/?rev=43089&view=rev
Author: knakos
Date: 2009-08-06 18:07:05 +0000 (Thu, 06 Aug 2009)
Log Message:
-----------
overload showMouse to kill mouse shadows in kyra (backport)
Modified Paths:
--------------
scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.cpp
scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.h
Modified: scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.cpp
===================================================================
--- scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.cpp 2009-08-06 18:05:50 UTC (rev 43088)
+++ scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.cpp 2009-08-06 18:07:05 UTC (rev 43089)
@@ -1934,8 +1934,7 @@
_mouseData = (byte *) malloc(w * h);
memcpy(_mouseData, buf, w * h);
- if (w > _mouseBackupDim || h > _mouseBackupDim)
- {
+ if (w > _mouseBackupDim || h > _mouseBackupDim) {
// mouse has been undrawn, adjust sprite backup area
free(_mouseBackupOld);
free(_mouseBackupToolbar);
@@ -2050,7 +2049,6 @@
if (_mouseNeedsRedraw)
return;
- _mouseNeedsRedraw = true;
int old_mouse_x = _mouseCurState.x - _mouseHotspotX;
int old_mouse_y = _mouseCurState.y - _mouseHotspotY;
@@ -2101,8 +2099,24 @@
addDirtyRect(old_mouse_x, old_mouse_y, old_mouse_w, old_mouse_h);
SDL_UnlockSurface(_overlayVisible ? _overlayscreen : _screen);
+
+ _mouseNeedsRedraw = true;
}
+bool OSystem_WINCE3::showMouse(bool visible) {
+ if (_mouseVisible == visible)
+ return visible;
+
+ if (visible == false)
+ undrawMouse();
+
+ bool last = _mouseVisible;
+ _mouseVisible = visible;
+ _mouseNeedsRedraw = true;
+
+ return last;
+}
+
void OSystem_WINCE3::drawToolbarMouse(SDL_Surface *surf, bool draw) {
if (!_mouseData || !_usesEmulatedMouse) return;
Modified: scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.h
===================================================================
--- scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.h 2009-08-06 18:05:50 UTC (rev 43088)
+++ scummvm/branches/branch-1-0-0/backends/platform/wince/wince-sdl.h 2009-08-06 18:07:05 UTC (rev 43089)
@@ -94,6 +94,7 @@
void setMouseCursor(const byte *buf, uint w, uint h, int hotspot_x, int hotspot_y, byte keycolor, int cursorTargetScale); // overloaded by CE backend
void undrawMouse();
void blitCursor();
+ bool showMouse(bool visible);
void setMousePos(int x, int y);
void copyRectToScreen(const byte *src, int pitch, int x, int y, int w, int h); // overloaded by CE backend (FIXME)
void copyRectToOverlay(const OverlayColor *buf, int pitch, int x, int y, int w, int h);
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