[Scummvm-cvs-logs] SF.net SVN: scummvm:[50119] scummvm/branches/gsoc2010-testbed/engines/ testbed
sud03r at users.sourceforge.net
sud03r at users.sourceforge.net
Mon Jun 21 21:09:19 CEST 2010
Revision: 50119
http://scummvm.svn.sourceforge.net/scummvm/?rev=50119&view=rev
Author: sud03r
Date: 2010-06-21 19:09:19 +0000 (Mon, 21 Jun 2010)
Log Message:
-----------
fixed couple of leaks in testbed/fs.cpp, removed some unecesarry code from graphics.cpp/graphics.h
Modified Paths:
--------------
scummvm/branches/gsoc2010-testbed/engines/testbed/fs.cpp
scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.cpp
scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.h
Modified: scummvm/branches/gsoc2010-testbed/engines/testbed/fs.cpp
===================================================================
--- scummvm/branches/gsoc2010-testbed/engines/testbed/fs.cpp 2010-06-21 19:07:41 UTC (rev 50118)
+++ scummvm/branches/gsoc2010-testbed/engines/testbed/fs.cpp 2010-06-21 19:09:19 UTC (rev 50119)
@@ -41,6 +41,7 @@
}
Common::String msg = readStream->readLine();
+ delete readStream;
printf("LOG: Message Extracted: %s\n", msg.c_str());
Common::String expectedMsg = "It works!";
@@ -66,27 +67,25 @@
Common::WriteStream *ws = fileToWrite.createWriteStream();
- if (!fileToWrite.isWritable()) {
+ if (!ws) {
printf("LOG: Can't open writable file in game data dir\n");
return false;
}
- if (!ws) {
- printf("LOG: Can't create a write stream");
- return false;
- }
-
ws->writeString("ScummVM Rocks!");
ws->flush();
+ delete ws;
Common::SeekableReadStream *rs = fileToWrite.createReadStream();
Common::String readFromFile = rs->readLine();
+ delete rs;
if (readFromFile.equals("ScummVM Rocks!")) {
// All good
printf("LOG: Data written and read correctly\n");
return true;
}
+
return false;
}
Modified: scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.cpp
===================================================================
--- scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.cpp 2010-06-21 19:07:41 UTC (rev 50118)
+++ scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.cpp 2010-06-21 19:09:19 UTC (rev 50119)
@@ -17,8 +17,10 @@
// The fourth field is for alpha channel which is unused
// Assuming 8bpp as of now
g_system->setPalette(_palette, 0, 3);
- g_system->grabPalette(_palette, 0, 3);
+ // Init Mouse Palette (White-black-yellow)
+ GFXtests::initMousePalette();
+
// Add tests here
// Blitting buffer on screen
@@ -51,36 +53,44 @@
_palette[9] = g;
_palette[10] = b;
g_system->setPalette(_palette, 0, 3);
- g_system->grabPalette(_palette, 0, 3);
}
// Helper functions used by GFX tests
-void GFXtests::drawCursor(bool cursorPaletteDisabled, const char *gfxModeName, int cursorTargetScale) {
+void GFXtests::initMousePalette() {
byte palette[3 * 4]; // Black, white and yellow
- byte buffer[11][11];
palette[0] = palette[1] = palette[2] = 0;
palette[4] = palette[5] = palette[6] = 255;
palette[8] = palette[9] = 255;
palette[10] = 0;
- memset(&buffer[0][0], 2, 11 * 11);
- CursorMan.pushCursorPalette(palette, 0, 3);
+ CursorMan.replaceCursorPalette(palette, 0, 3);
- // Mark the hotspot
+}
+
+void GFXtests::drawCursor(bool cursorPaletteDisabled, const char *gfxModeName, int cursorTargetScale) {
+
+ // Paint the mouse with yellow
+ byte buffer[11][11];
+ memset(&buffer[0][0], 2, sizeof(buffer));
+
+ // Mark the hotspot with black
for (int i = 0; i < 11; i++) {
buffer[i][i] = 0;
- buffer[10 - i][i] = 0;
+ // buffer[10 - i][i] = 0;
}
- CursorMan.pushCursor(&buffer[0][0], 11, 11, 5, 5, cursorTargetScale);
+ CursorMan.replaceCursor(&buffer[0][0], 11, 11, 0, 0, 255, cursorTargetScale);
CursorMan.showMouse(true);
if (cursorPaletteDisabled) {
CursorMan.disableCursorPalette(true);
+ } else {
+ initMousePalette();
+ CursorMan.disableCursorPalette(false);
}
-
+
g_system->updateScreen();
}
@@ -170,12 +180,6 @@
g_system->delayMillis(1000);
}
-void GFXtests::unsetMouse() {
- // Popping cursor
- CursorMan.popCursorPalette();
- CursorMan.popCursor();
-}
-
/**
* Used by aspectRatio()
*/
@@ -368,6 +372,7 @@
*/
bool GFXtests::palettizedCursors() {
+
bool passed = true;
@@ -378,8 +383,6 @@
setupMouseLoop();
// Test Automated Mouse movements (warp)
mouseMovements();
- // done. Pop cursor now
- unsetMouse();
if (Testsuite::handleInteractiveInput("Which color did the cursor appeared to you?", "Yellow", "Any other", kOptionRight)) {
printf("LOG: Couldn't use cursor palette for rendering cursor\n");
@@ -389,8 +392,6 @@
// Testing with game Palette
GFXTestSuite::setCustomColor(255, 0, 0);
setupMouseLoop(true);
- // done. Pop cursor now
- unsetMouse();
if (Testsuite::handleInteractiveInput("Which color did the cursor appeared to you?", "Red", "Any other", kOptionRight)) {
printf("LOG: Couldn't use Game palette for rendering cursor\n");
@@ -401,6 +402,7 @@
if (!Testsuite::handleInteractiveInput("Did Cursor tests went as you were expecting?")) {
passed = false;
}
+
return passed;
}
@@ -490,7 +492,7 @@
"This may take time, You may skip the later scalers and just examine the first three i.e 1x,2x and 3x");
int maxLimit = 1000;
- if (!Testsuite::handleInteractiveInput("Do you want to skip other scalers", "Yes", "No", kOptionRight)) {
+ if (!Testsuite::handleInteractiveInput("Do you want to restrict scalers to 1x, 2x and 3x only?", "Yes", "No", kOptionRight)) {
maxLimit = 3;
}
@@ -501,28 +503,24 @@
// Switch Graphics mode
// FIXME: Doesn't works:
g_system->beginGFXTransaction();
- bool isGFXModeSet = g_system->setGraphicsMode(gfxMode->id);
+ bool isGFXModeSet = g_system->setGraphicsMode("2x");
g_system->initSize(320, 200);
g_system->endGFXTransaction();
if (isGFXModeSet) {
setupMouseLoop(false, gfxMode->name, 1);
- unsetMouse();
Testsuite::clearScreen();
setupMouseLoop(false, gfxMode->name, 2);
- unsetMouse();
Testsuite::clearScreen();
setupMouseLoop(false, gfxMode->name, 3);
- unsetMouse();
Testsuite::clearScreen();
} else {
printf("Switching to graphics mode %s failed\n", gfxMode->name);
}
- CursorMan.popAllCursors();
gfxMode++;
maxLimit--;
}
Modified: scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.h
===================================================================
--- scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.h 2010-06-21 19:07:41 UTC (rev 50118)
+++ scummvm/branches/gsoc2010-testbed/engines/testbed/graphics.h 2010-06-21 19:09:19 UTC (rev 50119)
@@ -10,7 +10,7 @@
// Helper functions for GFX tests
void drawEllipse(int x, int y, int a, int b);
void setupMouseLoop(bool disableCursorPalette = false, const char *gfxModeName = "", int cursorTargetScale = 1);
-void unsetMouse();
+void initMousePalette();
void mouseMovements();
void drawCursor(bool cursorPaletteDisabled = false, const char *gfxModeName = "", int cursorTargetScale = 1);
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