[Scummvm-cvs-logs] SF.net SVN: scummvm:[47793] scummvm/trunk/engines/sci
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Mon Feb 1 11:16:45 CET 2010
Revision: 47793
http://scummvm.svn.sourceforge.net/scummvm/?rev=47793&view=rev
Author: m_kiewitz
Date: 2010-02-01 10:16:45 +0000 (Mon, 01 Feb 2010)
Log Message:
-----------
SCI: implemented reset for GfxMenu, not recreating object anymore
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/game.cpp
scummvm/trunk/engines/sci/graphics/gui.cpp
scummvm/trunk/engines/sci/graphics/gui.h
scummvm/trunk/engines/sci/graphics/menu.cpp
Modified: scummvm/trunk/engines/sci/engine/game.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/game.cpp 2010-02-01 09:53:42 UTC (rev 47792)
+++ scummvm/trunk/engines/sci/engine/game.cpp 2010-02-01 10:16:45 UTC (rev 47793)
@@ -35,6 +35,7 @@
#include "sci/engine/kernel_types.h"
#include "sci/engine/message.h"
#include "sci/graphics/gui.h"
+#include "sci/graphics/menu.h"
#include "sci/sound/music.h"
namespace Sci {
@@ -270,8 +271,8 @@
}
// Initialize menu TODO: Actually this should be another init()
- if (s->_gui)
- s->_gui->menuReset();
+ if (s->_gfxMenu)
+ s->_gfxMenu->reset();
s->successor = NULL; // No successor
Modified: scummvm/trunk/engines/sci/graphics/gui.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui.cpp 2010-02-01 09:53:42 UTC (rev 47792)
+++ scummvm/trunk/engines/sci/graphics/gui.cpp 2010-02-01 10:16:45 UTC (rev 47793)
@@ -276,12 +276,6 @@
}
}
-void SciGui::menuReset() {
- delete _menu;
- _menu = new GfxMenu(_s->_event, _s->_segMan, this, _ports, _paint16, _text16, _screen, _cursor);
- _s->_gfxMenu = _menu;
-}
-
void SciGui::drawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo) {
Port *oldPort = _ports->setPort((Port *)_ports->_picWind);
Modified: scummvm/trunk/engines/sci/graphics/gui.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui.h 2010-02-01 09:53:42 UTC (rev 47792)
+++ scummvm/trunk/engines/sci/graphics/gui.h 2010-02-01 10:16:45 UTC (rev 47793)
@@ -75,7 +75,6 @@
virtual void drawStatus(const char *text, int16 colorPen, int16 colorBack);
virtual void drawMenuBar(bool clear);
- virtual void menuReset();
virtual void drawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo);
virtual void drawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode = false, reg_t upscaledHiresHandle = NULL_REG);
Modified: scummvm/trunk/engines/sci/graphics/menu.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/menu.cpp 2010-02-01 09:53:42 UTC (rev 47792)
+++ scummvm/trunk/engines/sci/graphics/menu.cpp 2010-02-01 10:16:45 UTC (rev 47793)
@@ -59,8 +59,14 @@
GfxMenu::~GfxMenu() {
// TODO: deallocate _list and _itemList
+ reset();
}
+void GfxMenu::reset() {
+ _list.clear();
+ _itemList.clear();
+}
+
void GfxMenu::kernelAddEntry(Common::String title, Common::String content, reg_t contentVmPtr) {
GuiMenuEntry *menuEntry;
uint16 itemCount = 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