[Scummvm-cvs-logs] SF.net SVN: scummvm: [22541] scummvm/trunk/backends/sdl

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Sat May 20 02:29:01 CEST 2006


Revision: 22541
Author:   eriktorbjorn
Date:     2006-05-20 02:27:56 -0700 (Sat, 20 May 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22541&view=rev

Log Message:
-----------
Re-render the cursor when enabling/disabling cursor palette. Also, I don't
think _cursorHasOwnPalette is needed any more, so I've removed it.

Modified Paths:
--------------
    scummvm/trunk/backends/sdl/graphics.cpp
    scummvm/trunk/backends/sdl/sdl-common.h
    scummvm/trunk/backends/sdl/sdl.cpp
Modified: scummvm/trunk/backends/sdl/graphics.cpp
===================================================================
--- scummvm/trunk/backends/sdl/graphics.cpp	2006-05-20 08:29:50 UTC (rev 22540)
+++ scummvm/trunk/backends/sdl/graphics.cpp	2006-05-20 09:27:56 UTC (rev 22541)
@@ -1031,7 +1031,7 @@
 		_paletteDirtyEnd = start + num;
 
 	// Some games blink cursors with palette
-	if (!_overlayVisible && (!_cursorHasOwnPalette || _cursorPaletteDisabled))
+	if (_cursorPaletteDisabled)
 		blitCursor();
 }
 
@@ -1048,6 +1048,7 @@
 }
 
 void OSystem_SDL::setCursorPalette(const byte *colors, uint start, uint num) {
+    printf("setCursorPalette\n");
 	assert(colors);
 	const byte *b = colors;
 	uint i;
@@ -1059,7 +1060,6 @@
 		b += 4;
 	}
 
-	_cursorHasOwnPalette = true;
 	_cursorPaletteDisabled = false;
 
 	blitCursor();
@@ -1333,10 +1333,10 @@
 
 	SDL_Color *palette;
 
-	if (_cursorHasOwnPalette && !_cursorPaletteDisabled)
+	if (_cursorPaletteDisabled)
+		palette = _currentPalette;
+	else
 		palette = _cursorPalette;
-	else
-		palette = _currentPalette;
 	
 	for (i = 0; i < h; i++) {
 		for (j = 0; j < w; j++) {

Modified: scummvm/trunk/backends/sdl/sdl-common.h
===================================================================
--- scummvm/trunk/backends/sdl/sdl-common.h	2006-05-20 08:29:50 UTC (rev 22540)
+++ scummvm/trunk/backends/sdl/sdl-common.h	2006-05-20 09:27:56 UTC (rev 22541)
@@ -102,7 +102,10 @@
 	void setCursorPalette(const byte *colors, uint start, uint num);
 
 	// Disables or enables cursor palette
-	void disableCursorPalette(bool disable) { _cursorPaletteDisabled = disable; };
+	void disableCursorPalette(bool disable) {
+		_cursorPaletteDisabled = disable;
+		blitCursor();
+	};
 
 	// Shaking is used in SCUMM. Set current shake position.
 	void setShakePos(int shake_pos);
@@ -304,7 +307,6 @@
 	int16 _mouseHotspotY;
 	byte _mouseKeyColor;
 	int _cursorTargetScale;
-	bool _cursorHasOwnPalette;
 	bool _cursorPaletteDisabled;
 	SDL_Surface *_mouseOrigSurface;
 	SDL_Surface *_mouseSurface;

Modified: scummvm/trunk/backends/sdl/sdl.cpp
===================================================================
--- scummvm/trunk/backends/sdl/sdl.cpp	2006-05-20 08:29:50 UTC (rev 22540)
+++ scummvm/trunk/backends/sdl/sdl.cpp	2006-05-20 09:27:56 UTC (rev 22541)
@@ -181,7 +181,7 @@
 	_cdrom(0), _scalerProc(0), _modeChanged(false), _dirtyChecksums(0),
 	_mouseVisible(false), _mouseDrawn(false), _mouseData(0), _mouseSurface(0),
 	_mouseOrigSurface(0), _mouseHotspotX(0), _mouseHotspotY(0), _cursorTargetScale(1),
-	_cursorHasOwnPalette(false), _cursorPaletteDisabled(true),
+	_cursorPaletteDisabled(true),
 	_joystick(0),
 	_currentShakePos(0), _newShakePos(0),
 	_paletteDirtyStart(0), _paletteDirtyEnd(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