[Scummvm-cvs-logs] CVS: residual engine.cpp,1.90,1.91 engine.h,1.35,1.36 lua.cpp,1.154,1.155
Pawel Kolodziejski
aquadran at users.sourceforge.net
Sun Aug 14 06:27:05 CEST 2005
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm boxes.cpp,1.91,1.92 cursor.cpp,2.47,2.48 imuse.cpp,2.146,2.147 imuse_player.cpp,2.55,2.56 logic_he.cpp,2.25,2.26 midiparser_eup.cpp,1.17,1.18 midiparser_ro.cpp,1.9,1.10 nut_renderer.cpp,1.63,1.64 object.cpp,1.247,1.248 palette.cpp,2.53,2.54
- Next message: [Scummvm-cvs-logs] CVS: scummvm/base plugins.cpp,1.45,1.46
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8905
Modified Files:
engine.cpp engine.h lua.cpp
Log Message:
some changes to user draw mode
Index: engine.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/engine.cpp,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -d -r1.90 -r1.91
--- engine.cpp 13 Aug 2005 20:14:46 -0000 1.90
+++ engine.cpp 14 Aug 2005 13:26:37 -0000 1.91
@@ -153,6 +153,26 @@
if (resource == NULL)
warning("Requested resouce (%s) not found!");
}
+void Engine::drawPrimitives() {
+ // Draw Primitives
+ for (PrimitiveListType::iterator i = _primitiveObjects.begin(); i != _primitiveObjects.end(); i++) {
+ (*i)->draw();
+ }
+
+ // Draw text
+ for (TextListType::iterator i = _textObjects.begin(); i != _textObjects.end(); i++) {
+ (*i)->draw();
+ }
+
+ if (_mode == ENGINE_MODE_DRAW) {
+ g_engine->killPrimitiveObjects();
+ g_engine->killTextObjects();
+
+ // Cleanup references to deleted text objects
+ for (Engine::ActorListType::const_iterator i = g_engine->actorsBegin(); i != g_engine->actorsEnd(); i++)
+ (*i)->lineCleanup();
+ }
+}
void Engine::luaUpdate() {
// Update timing information
@@ -279,21 +299,14 @@
if (drawHandler != LUA_NOOBJECT)
lua_callfunction(drawHandler);
lua_endblock();
+
+ g_driver->flipBuffer();
}
_refreshDrawNeeded = false;
+ return;
}
- // Draw Primitives
- for (PrimitiveListType::iterator i = _primitiveObjects.begin(); i != _primitiveObjects.end(); i++) {
- (*i)->draw();
- doFlip = true;
- }
-
- // Draw text
- for (TextListType::iterator i = _textObjects.begin(); i != _textObjects.end(); i++) {
- (*i)->draw();
- doFlip = true;
- }
+ drawPrimitives();
if (SHOWFPS_GLOBAL)
g_driver->drawEmergString(550, 25, fps, Color(255, 255, 255));
Index: engine.h
===================================================================
RCS file: /cvsroot/scummvm/residual/engine.h,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- engine.h 13 Aug 2005 16:25:51 -0000 1.35
+++ engine.h 14 Aug 2005 13:26:37 -0000 1.36
@@ -106,6 +106,7 @@
void setFlipEnable(bool state) { _flipEnable = state; }
bool getFlipEnable() { return _flipEnable; }
void refreshDrawMode() { _refreshDrawNeeded = true; }
+ void drawPrimitives();
void mainLoop();
unsigned frameStart() const { return _frameStart; }
Index: lua.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/lua.cpp,v
retrieving revision 1.154
retrieving revision 1.155
diff -u -d -r1.154 -r1.155
--- lua.cpp 13 Aug 2005 20:14:46 -0000 1.154
+++ lua.cpp 14 Aug 2005 13:26:37 -0000 1.155
@@ -30,6 +30,7 @@
#include "objectstate.h"
#include "colormap.h"
#include "font.h"
+#include "primitives.h"
#include "imuse/imuse.h"
@@ -2263,12 +2264,7 @@
static void CleanBuffer() {
DEBUG_FUNCTION();
- g_engine->killPrimitiveObjects();
- g_engine->killTextObjects();
- // Cleanup references to deleted text objects
- for (Engine::ActorListType::const_iterator i = g_engine->actorsBegin(); i != g_engine->actorsEnd(); i++)
- (*i)->lineCleanup();
- //g_driver->copyStoredToDisplay();
+ g_driver->copyStoredToDisplay();
}
/* This function sends the SDL signal to
@@ -2927,7 +2923,6 @@
g_smush->pause(false);
g_engine->refreshDrawMode();
g_engine->setMode(g_engine->getPreviousMode());
- CleanBuffer();
} else {
error("RenderModeUser() Unknown type of param");
}
@@ -2941,8 +2936,10 @@
static void Display() {
DEBUG_FUNCTION();
- if (g_engine->getFlipEnable())
+ if (g_engine->getFlipEnable()) {
+ g_engine->drawPrimitives();
g_driver->flipBuffer();
+ }
}
static void EngineDisplay() {
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm boxes.cpp,1.91,1.92 cursor.cpp,2.47,2.48 imuse.cpp,2.146,2.147 imuse_player.cpp,2.55,2.56 logic_he.cpp,2.25,2.26 midiparser_eup.cpp,1.17,1.18 midiparser_ro.cpp,1.9,1.10 nut_renderer.cpp,1.63,1.64 object.cpp,1.247,1.248 palette.cpp,2.53,2.54
- Next message: [Scummvm-cvs-logs] CVS: scummvm/base plugins.cpp,1.45,1.46
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list