[Scummvm-cvs-logs] SF.net SVN: scummvm:[34883] scummvm/trunk

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Mon Nov 3 19:32:16 CET 2008


Revision: 34883
          http://scummvm.svn.sourceforge.net/scummvm/?rev=34883&view=rev
Author:   fingolfin
Date:     2008-11-03 18:32:16 +0000 (Mon, 03 Nov 2008)

Log Message:
-----------
Patch #2122869: ALL: Common load dialog

Modified Paths:
--------------
    scummvm/trunk/engines/dialogs.cpp
    scummvm/trunk/engines/dialogs.h
    scummvm/trunk/engines/engine.cpp
    scummvm/trunk/engines/engine.h
    scummvm/trunk/engines/igor/igor.h
    scummvm/trunk/engines/igor/saveload.cpp
    scummvm/trunk/engines/metaengine.h
    scummvm/trunk/engines/queen/queen.cpp
    scummvm/trunk/engines/queen/queen.h
    scummvm/trunk/engines/saga/detection.cpp
    scummvm/trunk/engines/saga/saga.cpp
    scummvm/trunk/engines/saga/saga.h
    scummvm/trunk/engines/touche/menu.cpp
    scummvm/trunk/engines/touche/saveload.cpp
    scummvm/trunk/engines/touche/touche.h
    scummvm/trunk/gui/launcher.cpp
    scummvm/trunk/gui/launcher.h
    scummvm/trunk/gui/object.h
    scummvm/trunk/gui/themes/scummclassic/classic_layout.stx
    scummvm/trunk/gui/themes/scummclassic/classic_layout_320.stx
    scummvm/trunk/gui/themes/scummclassic.zip
    scummvm/trunk/gui/themes/scummmodern/scummmodern_layout.stx
    scummvm/trunk/gui/themes/scummmodern/scummmodern_layout_320.stx
    scummvm/trunk/gui/themes/scummmodern.zip

Modified: scummvm/trunk/engines/dialogs.cpp
===================================================================
--- scummvm/trunk/engines/dialogs.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/dialogs.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -33,6 +33,7 @@
 
 #include "gui/about.h"
 #include "gui/newgui.h"
+#include "gui/launcher.h"
 #include "gui/ListWidget.h"
 #include "gui/theme.h"
 
@@ -96,8 +97,15 @@
 		
 	new GUI::ButtonWidget(this, "GlobalMenu.Resume", "Resume", kPlayCmd, 'P');
 
-//	new GUI::ButtonWidget(this, "globalmain_load", "Load", kLoadCmd, 'L');
-//	new GUI::ButtonWidget(this, "globalmain_save", "Save", kSaveCmd, 'S');
+	_loadButton = new GUI::ButtonWidget(this, "GlobalMenu.Load", "Load", kLoadCmd, 'L');
+	// TODO: setEnabled -> setVisible
+	_loadButton->setEnabled(_engine->hasFeature(Engine::kSupportsListSaves) && 
+							_engine->hasFeature(Engine::kSupportsLoadingDuringRuntime));
+ 
+	_saveButton = new GUI::ButtonWidget(this, "GlobalMenu.Save", "Save", kSaveCmd, 'S');
+	// TODO: setEnabled -> setVisible
+	_saveButton->setEnabled(_engine->hasFeature(Engine::kSupportsListSaves) && 
+							_engine->hasFeature(Engine::kSupportsSavingDuringRuntime));
 
 	new GUI::ButtonWidget(this, "GlobalMenu.Options", "Options", kOptionsCmd, 'O');
 
@@ -111,11 +119,14 @@
 
 	_aboutDialog = new GUI::AboutDialog();
 	_optionsDialog = new ConfigDialog();
+	_loadDialog = new GUI::SaveLoadChooser("Load game:", "Load");
 }
 
 MainMenuDialog::~MainMenuDialog() {
 	delete _aboutDialog;
 	delete _optionsDialog;
+	delete _loadDialog;
+	//delete _saveDialog;
 }
 
 void MainMenuDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 data) {
@@ -123,6 +134,39 @@
 	case kPlayCmd:
 		close();
 		break;
+	case kLoadCmd:
+		{
+		String gameId = ConfMan.get("gameid");
+
+		const EnginePlugin *plugin = 0;
+		EngineMan.findGame(gameId, &plugin);
+
+		int slot = _loadDialog->runModal(plugin, ConfMan.getActiveDomainName());
+
+		if (slot >= 0) {
+			_engine->loadGameState(slot);
+			close();
+		}
+
+		}
+		break;
+	case kSaveCmd:
+		/*
+		String gameId = ConfMan.get("gameid");
+
+		const EnginePlugin *plugin = 0;
+		EngineMan.findGame(gameId, &plugin);
+
+		int slot = _saveDialog->runModal(plugin, ConfMan.getActiveDomainName());
+
+		if (slot >= 0) {
+			_engine->saveGameState(slot);
+			close();
+		}
+
+		}
+		*/
+		break;
 	case kOptionsCmd:
 		_optionsDialog->runModal();
 		break;
@@ -149,6 +193,9 @@
 }
 
 void MainMenuDialog::reflowLayout() {
+	_loadButton->setEnabled(_engine->canLoadGameStateCurrently());
+	_saveButton->setEnabled(_engine->canSaveGameStateCurrently());
+
 #ifndef DISABLE_FANCY_THEMES
 	if (g_gui.xmlEval()->getVar("Globals.ShowGlobalMenuLogo", 0) == 1 && g_gui.theme()->supportsImages()) {
 		if (!_logo)

Modified: scummvm/trunk/engines/dialogs.h
===================================================================
--- scummvm/trunk/engines/dialogs.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/dialogs.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -27,6 +27,7 @@
 
 #include "common/str.h"
 #include "gui/dialog.h"
+#include "gui/launcher.h"
 #include "gui/options.h"
 #include "gui/widget.h"
 
@@ -56,8 +57,11 @@
 
 	GUI::GraphicsWidget *_logo;
 	GUI::ButtonWidget	*_rtlButton;
+	GUI::ButtonWidget	*_loadButton;
+	GUI::ButtonWidget	*_saveButton;
 	GUI::Dialog		*_aboutDialog;
 	GUI::Dialog		*_optionsDialog;
+	GUI::SaveLoadChooser	*_loadDialog;
 
 };
 

Modified: scummvm/trunk/engines/engine.cpp
===================================================================
--- scummvm/trunk/engines/engine.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/engine.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -255,6 +255,26 @@
 	_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, soundVolumeSpeech);
 }
 
+int Engine::loadGameState(int slot) {
+	// Do nothing by default
+	return 0;
+}
+
+bool Engine::canLoadGameStateCurrently() {
+	// Do not allow loading by default
+	return false;
+}
+
+int Engine::saveGameState(int slot) {
+	// Do nothing by default
+	return 0;
+}
+
+bool Engine::canSaveGameStateCurrently() {
+	// Do not allow saving by default
+	return false;
+}
+
 void Engine::quitGame() {
 	Common::Event event;
 

Modified: scummvm/trunk/engines/engine.h
===================================================================
--- scummvm/trunk/engines/engine.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/engine.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -125,6 +125,26 @@
 	 */
 	virtual void syncSoundSettings();
 
+	/** 
+	 * Load a game state 
+	 */
+	virtual int loadGameState(int slot);
+
+	/**
+	 * Indicates whether a game state can be loaded 
+	 */
+	virtual bool canLoadGameStateCurrently();
+
+	/**
+	 * Save a game state 
+	 */
+	virtual int saveGameState(int slot);
+
+	/**
+	 * Indicates whether a game state can be saved
+	 */
+	virtual bool canSaveGameStateCurrently();
+
 protected:
 
 	/**
@@ -182,7 +202,24 @@
 		/**
 		 * 'Return to launcher' feature is supported, i.e., EVENT_RTL is handled.
 		 */
-		kSupportsRTL
+		kSupportsRTL = 0,
+		
+		/**
+		 * Listing all Save States for a given target is supported, i.e.,
+		 * the listSaves() method is implemented.
+		 * Used for --list-saves support, as well as the GMM load dialog.
+		 */
+		kSupportsListSaves = 1,
+
+		/** 
+		 * Loading from the in-game common ScummVM options dialog is supported
+		 */
+		kSupportsLoadingDuringRuntime = 8,
+
+		/** 
+		 * Saving from the in-game common ScummVM options dialog is supported
+		 */
+		kSupportsSavingDuringRuntime = 9
 	};
 
 	/**

Modified: scummvm/trunk/engines/igor/igor.h
===================================================================
--- scummvm/trunk/engines/igor/igor.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/igor/igor.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -427,8 +427,8 @@
 	void dialogueReplyToQuestion(int x, int y, int r, int g, int b, int reply = 0);
 
 	void saveOrLoadGameState(TypeSerializer &typeSerializer);
-	void loadGameState(int slot);
-	void saveGameState(int slot);
+	int loadGameState(int slot);
+	int saveGameState(int slot);
 	void generateGameStateFileName(int num, char *dst, int len) const;
 
 	MidiPlayer *_midiPlayer;

Modified: scummvm/trunk/engines/igor/saveload.cpp
===================================================================
--- scummvm/trunk/engines/igor/saveload.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/igor/saveload.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -156,7 +156,7 @@
 	}
 }
 
-void IgorEngine::loadGameState(int slot) {
+int IgorEngine::loadGameState(int slot) {
 	char name[64];
 	generateGameStateFileName(slot, name, 63);
 	Common::InSaveFile *isf = _saveFileMan->openForLoading(name);
@@ -175,9 +175,11 @@
 		}
 		debug(0, "Loaded state, current part %d", _currentPart);
 	}
+
+	return 0;	// TODO: return success/failure
 }
 
-void IgorEngine::saveGameState(int slot) {
+int IgorEngine::saveGameState(int slot) {
 	char name[64];
 	generateGameStateFileName(slot, name, 63);
 	Common::OutSaveFile *osf = _saveFileMan->openForSaving(name);
@@ -187,6 +189,8 @@
 		saveOrLoadGameState(ts);
 		delete osf;
 	}
+
+	return 0;	// TODO: return success/failure
 }
 
 void IgorEngine::generateGameStateFileName(int num, char *dst, int len) const {

Modified: scummvm/trunk/engines/metaengine.h
===================================================================
--- scummvm/trunk/engines/metaengine.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/metaengine.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -183,7 +183,17 @@
 		 * the game till the save.
 		 * This flag may only be set when 'kSavesSupportMetaInfo' is set.
 		 */
-		kSavesSupportPlayTime
+		kSavesSupportPlayTime,
+		
+		/** 
+		 *Features loading from the Common ScummVM options dialog in-game 
+		 */
+		kSupportsLoadingDuringRuntime,
+
+		/** 
+		 *Features saving from the Common ScummVM options dialog in-game 
+		 */
+		kSupportsSavingDuringRuntime
 	};	
 
 	/**

Modified: scummvm/trunk/engines/queen/queen.cpp
===================================================================
--- scummvm/trunk/engines/queen/queen.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/queen/queen.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -351,7 +351,7 @@
 	}
 }
 
-void QueenEngine::loadGameState(int slot) {
+int QueenEngine::loadGameState(int slot) {
 	debug(3, "Loading game from slot %d", slot);
 	GameStateHeader header;
 	Common::InSaveFile *file = readGameStateHeader(slot, &header);
@@ -374,6 +374,8 @@
 		delete[] saveData;
 		delete file;
 	}
+
+	return 0;	// TODO: return success/failure
 }
 
 Common::InSaveFile *QueenEngine::readGameStateHeader(int slot, GameStateHeader *gsh) {

Modified: scummvm/trunk/engines/queen/queen.h
===================================================================
--- scummvm/trunk/engines/queen/queen.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/queen/queen.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -108,7 +108,7 @@
 
 	bool canLoadOrSave() const;
 	void saveGameState(int slot, const char *desc);
-	void loadGameState(int slot);
+	int loadGameState(int slot);
 	void makeGameStateName(int slot, char *buf) const;
 	int getGameStateSlot(const char *filename) const;
 	void findGameStateDescriptions(char descriptions[100][32]);

Modified: scummvm/trunk/engines/saga/detection.cpp
===================================================================
--- scummvm/trunk/engines/saga/detection.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/saga/detection.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -33,7 +33,9 @@
 #include "common/advancedDetector.h"
 #include "common/system.h"
 
+#include "saga/animation.h"
 #include "saga/displayinfo.h"
+#include "saga/events.h"
 #include "saga/rscfile.h"
 #include "saga/interface.h"
 #include "saga/scene.h"
@@ -157,7 +159,9 @@
 		(f == kSupportsRTL) ||
 		(f == kSupportsListSaves) ||
 		(f == kSupportsLoadingDuringStartup) ||
-		(f == kSupportsDeleteSave);
+		(f == kSupportsDeleteSave) ||
+		(f == kSupportsLoadingDuringRuntime) ||
+		(f == kSupportsSavingDuringRuntime);
 }
 
 bool SagaMetaEngine::createInstance(OSystem *syst, Engine **engine, const Common::ADGameDescription *desc) const {
@@ -237,4 +241,24 @@
 	return di.logicalHeight;
 }
 
+int SagaEngine::loadGameState(int slot) {
+	// Init the current chapter to 8 (character selection) for IHNM
+	if (getGameType() == GType_IHNM)
+		_scene->changeScene(-2, 0, kTransitionFade, 8);
+
+	// First scene sets up palette
+	_scene->changeScene(getStartSceneNumber(), 0, kTransitionNoFade);
+	_events->handleEvents(0); // Process immediate events
+
+	if (getGameType() != GType_IHNM)
+		_interface->setMode(kPanelMain);
+	else
+		_interface->setMode(kPanelChapterSelection);
+
+	load(calcSaveFileName((uint)slot));
+	syncSoundSettings();
+
+	return 0;	// TODO: return success/failure
+}
+
 } // End of namespace Saga

Modified: scummvm/trunk/engines/saga/saga.cpp
===================================================================
--- scummvm/trunk/engines/saga/saga.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/saga/saga.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -532,4 +532,12 @@
 	_sound->setVolume();
 }
 
+bool SagaEngine::canLoadGameStateCurrently() { 
+	return !this->_scene->isInIntro();
+}
+
+bool SagaEngine::canSaveGameStateCurrently() { 
+	return !this->_scene->isInIntro();
+}
+
 } // End of namespace Saga

Modified: scummvm/trunk/engines/saga/saga.h
===================================================================
--- scummvm/trunk/engines/saga/saga.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/saga/saga.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -650,6 +650,9 @@
 	const Common::Rect &getDisplayClip() const { return _displayClip;}
 	int getDisplayWidth() const;
 	int getDisplayHeight() const;
+	int loadGameState(int slot);
+	bool canLoadGameStateCurrently();
+	bool canSaveGameStateCurrently();
 	const GameDisplayInfo &getDisplayInfo();
 
 	const char *getTextString(int textStringId);

Modified: scummvm/trunk/engines/touche/menu.cpp
===================================================================
--- scummvm/trunk/engines/touche/menu.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/touche/menu.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -331,7 +331,7 @@
 		break;
 	case kActionPerformSaveLoad:
 		if (menuData->mode == kMenuLoadStateMode) {
-			if (loadGameState(_saveLoadCurrentSlot)) {
+			if (loadGameState(_saveLoadCurrentSlot) == 0) {
 				menuData->quit = true;
 			}
 		} else if (menuData->mode == kMenuSaveStateMode) {

Modified: scummvm/trunk/engines/touche/saveload.cpp
===================================================================
--- scummvm/trunk/engines/touche/saveload.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/touche/saveload.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -340,7 +340,7 @@
 	return saveOk;
 }
 
-bool ToucheEngine::loadGameState(int num) {
+int ToucheEngine::loadGameState(int num) {
 	bool loadOk = false;
 	char gameStateFileName[64];
 	generateGameStateFileName(num, gameStateFileName, 63);
@@ -360,7 +360,7 @@
 		}
 		delete f;
 	}
-	return loadOk;
+	return loadOk ? 0 : 1;
 }
 
 void ToucheEngine::readGameStateDescription(int num, char *description, int len) {

Modified: scummvm/trunk/engines/touche/touche.h
===================================================================
--- scummvm/trunk/engines/touche/touche.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/engines/touche/touche.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -496,7 +496,7 @@
 	void saveGameStateData(Common::WriteStream *stream);
 	void loadGameStateData(Common::ReadStream *stream);
 	bool saveGameState(int num, const char *description);
-	bool loadGameState(int num);
+	int loadGameState(int num);
 	void readGameStateDescription(int num, char *description, int len);
 	void generateGameStateFileName(int num, char *dst, int len, bool prefixOnly = false) const;
 	int getGameStateFileSlot(const char *filename) const;

Modified: scummvm/trunk/gui/launcher.cpp
===================================================================
--- scummvm/trunk/gui/launcher.cpp	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/launcher.cpp	2008-11-03 18:32:16 UTC (rev 34883)
@@ -473,45 +473,6 @@
 	}
 }
 
-class SaveLoadChooser : public GUI::Dialog {
-	typedef Common::String String;
-	typedef Common::StringList StringList;
-protected:
-	GUI::ListWidget		*_list;
-	GUI::ButtonWidget	*_chooseButton;
-	GUI::ButtonWidget	*_deleteButton;
-	GUI::GraphicsWidget	*_gfxWidget;
-	GUI::ContainerWidget	*_container;
-	GUI::StaticTextWidget	*_date;
-	GUI::StaticTextWidget	*_time;
-	GUI::StaticTextWidget	*_playtime;
-
-	const EnginePlugin		*_plugin;
-	bool					_delSupport;
-	bool					_metaInfoSupport;
-	bool					_thumbnailSupport;
-	bool					_saveDateSupport;
-	bool					_playTimeSupport;
-	String					_target;
-	SaveStateList			_saveList;
-
-	uint8 _fillR, _fillG, _fillB;
-
-	void updateSaveList();
-	void updateSelection(bool redraw);
-public:
-	SaveLoadChooser(const String &title, const String &buttonLabel);
-	~SaveLoadChooser();
-
-	virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data);
-	void setList(const StringList& list);
-	int runModal(const EnginePlugin *plugin, const String &target);
-
-	virtual void reflowLayout();
-
-	virtual void close();
-};
-
 SaveLoadChooser::SaveLoadChooser(const String &title, const String &buttonLabel)
 	: Dialog("ScummSaveLoad"), _delSupport(0), _list(0), _chooseButton(0), _deleteButton(0), _gfxWidget(0)  {
 	_delSupport = _metaInfoSupport = _thumbnailSupport = _saveDateSupport = _playTimeSupport = false;

Modified: scummvm/trunk/gui/launcher.h
===================================================================
--- scummvm/trunk/gui/launcher.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/launcher.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -27,6 +27,7 @@
 
 #include "gui/dialog.h"
 #include "engines/game.h"
+#include "engines/metaengine.h"
 #include "common/str.h"
 
 namespace GUI {
@@ -79,6 +80,45 @@
 	void selectGame(const String &name);
 };
 
+class SaveLoadChooser : public GUI::Dialog {
+	typedef Common::String String;
+	typedef Common::StringList StringList;
+protected:
+	GUI::ListWidget		*_list;
+	GUI::ButtonWidget	*_chooseButton;
+	GUI::ButtonWidget	*_deleteButton;
+	GUI::GraphicsWidget	*_gfxWidget;
+	GUI::ContainerWidget	*_container;
+	GUI::StaticTextWidget	*_date;
+	GUI::StaticTextWidget	*_time;
+	GUI::StaticTextWidget	*_playtime;
+
+	const EnginePlugin		*_plugin;
+	bool					_delSupport;
+	bool					_metaInfoSupport;
+	bool					_thumbnailSupport;
+	bool					_saveDateSupport;
+	bool					_playTimeSupport;
+	String					_target;
+	SaveStateList			_saveList;
+
+	uint8 _fillR, _fillG, _fillB;
+
+	void updateSaveList();
+	void updateSelection(bool redraw);
+public:
+	SaveLoadChooser(const String &title, const String &buttonLabel);
+	~SaveLoadChooser();
+
+	virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data);
+	void setList(const StringList& list);
+	int runModal(const EnginePlugin *plugin, const String &target);
+
+	virtual void reflowLayout();
+
+	virtual void close();
+};
+
 } // End of namespace GUI
 
 #endif

Modified: scummvm/trunk/gui/object.h
===================================================================
--- scummvm/trunk/gui/object.h	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/object.h	2008-11-03 18:32:16 UTC (rev 34883)
@@ -67,7 +67,7 @@
 	Widget		*_firstWidget;
 
 public:
-	GuiObject(int x, int y, int w, int h) : _x(x), _y(y), _w(w), _h(h), _name(""), _firstWidget(0)  { }
+	GuiObject(int x, int y, int w, int h) : _x(x), _y(y), _w(w), _h(h), _firstWidget(0)  { }
 	GuiObject(const Common::String &name);
 	~GuiObject();
 

Modified: scummvm/trunk/gui/themes/scummclassic/classic_layout.stx
===================================================================
--- scummvm/trunk/gui/themes/scummclassic/classic_layout.stx	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/themes/scummclassic/classic_layout.stx	2008-11-03 18:32:16 UTC (rev 34883)
@@ -464,6 +464,15 @@
 					height = 'Globals.Button.Height'
 			/>
 			<space size = '10'/>
+			<widget name = 'Load'
+					width = '150'
+					height = 'Globals.Button.Height'
+			/>
+			<widget name = 'Save'
+					width = '150'
+					height = 'Globals.Button.Height'
+			/>			
+			<space size = '10'/>
 			<widget name = 'Options'
 					width = '150'
 					height = 'Globals.Button.Height'

Modified: scummvm/trunk/gui/themes/scummclassic/classic_layout_320.stx
===================================================================
--- scummvm/trunk/gui/themes/scummclassic/classic_layout_320.stx	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/themes/scummclassic/classic_layout_320.stx	2008-11-03 18:32:16 UTC (rev 34883)
@@ -465,6 +465,15 @@
 					height = 'Globals.Button.Height'
 			/>
 			<space size = '4'/>
+			<widget name = 'Load'
+					width = '70'
+					height = 'Globals.Button.Height'
+			/>
+			<widget name = 'Save'
+					width = '70'
+					height = 'Globals.Button.Height'
+			/>
+			<space size = '4'/>
 			<widget name = 'Options'
 					width = '70'
 					height = 'Globals.Button.Height'

Modified: scummvm/trunk/gui/themes/scummclassic.zip
===================================================================
(Binary files differ)

Modified: scummvm/trunk/gui/themes/scummmodern/scummmodern_layout.stx
===================================================================
--- scummvm/trunk/gui/themes/scummmodern/scummmodern_layout.stx	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/themes/scummmodern/scummmodern_layout.stx	2008-11-03 18:32:16 UTC (rev 34883)
@@ -476,6 +476,15 @@
 					height = 'Globals.Button.Height'
 			/>
 			<space size = '10'/>
+			<widget name = 'Load'
+					width = '150'
+					height = 'Globals.Button.Height'
+			/>
+			<widget name = 'Save'
+					width = '150'
+					height = 'Globals.Button.Height'
+			/>			
+			<space size = '10'/>
 			<widget name = 'Options'
 					width = '150'
 					height = 'Globals.Button.Height'

Modified: scummvm/trunk/gui/themes/scummmodern/scummmodern_layout_320.stx
===================================================================
--- scummvm/trunk/gui/themes/scummmodern/scummmodern_layout_320.stx	2008-11-03 16:42:23 UTC (rev 34882)
+++ scummvm/trunk/gui/themes/scummmodern/scummmodern_layout_320.stx	2008-11-03 18:32:16 UTC (rev 34883)
@@ -462,6 +462,15 @@
 					height = 'Globals.Button.Height'
 			/>
 			<space size = '4'/>
+			<widget name = 'Load'
+					width = '70'
+					height = 'Globals.Button.Height'
+			/>
+			<widget name = 'Save'
+					width = '70'
+					height = 'Globals.Button.Height'
+			/>					
+			<space size = '4'/>
 			<widget name = 'Options'
 					width = '70'
 					height = 'Globals.Button.Height'

Modified: scummvm/trunk/gui/themes/scummmodern.zip
===================================================================
(Binary files differ)


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