From 411b7128ab288dbd9e0b1fad59c420639d951d92 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Wed, 17 Apr 2013 20:30:42 +0200 Subject: WINTERMUTE: Rename base_save_thumb_helper.cpp to match class-hierarchy. --- engines/wintermute/base/base_game.cpp | 2 +- .../wintermute/base/base_persistence_manager.cpp | 2 +- engines/wintermute/base/base_save_thumb_helper.cpp | 110 --------------------- engines/wintermute/base/base_save_thumb_helper.h | 53 ---------- engines/wintermute/base/save_thumb_helper.cpp | 110 +++++++++++++++++++++ engines/wintermute/base/save_thumb_helper.h | 53 ++++++++++ 6 files changed, 165 insertions(+), 165 deletions(-) delete mode 100644 engines/wintermute/base/base_save_thumb_helper.cpp delete mode 100644 engines/wintermute/base/base_save_thumb_helper.h create mode 100644 engines/wintermute/base/save_thumb_helper.cpp create mode 100644 engines/wintermute/base/save_thumb_helper.h (limited to 'engines/wintermute/base') diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp index 4e74dffc12..f90c6bf775 100644 --- a/engines/wintermute/base/base_game.cpp +++ b/engines/wintermute/base/base_game.cpp @@ -45,9 +45,9 @@ #include "engines/wintermute/base/base_transition_manager.h" #include "engines/wintermute/base/base_viewport.h" #include "engines/wintermute/base/base_region.h" -#include "engines/wintermute/base/base_save_thumb_helper.h" #include "engines/wintermute/base/base_surface_storage.h" #include "engines/wintermute/base/saveload.h" +#include "engines/wintermute/base/save_thumb_helper.h" #include "engines/wintermute/base/scriptables/script_value.h" #include "engines/wintermute/base/scriptables/script_engine.h" #include "engines/wintermute/base/scriptables/script_stack.h" diff --git a/engines/wintermute/base/base_persistence_manager.cpp b/engines/wintermute/base/base_persistence_manager.cpp index 7c866349b5..12bc62d5dc 100644 --- a/engines/wintermute/base/base_persistence_manager.cpp +++ b/engines/wintermute/base/base_persistence_manager.cpp @@ -31,10 +31,10 @@ #include "engines/wintermute/base/base_game.h" #include "engines/wintermute/base/base_engine.h" #include "engines/wintermute/base/base_persistence_manager.h" -#include "engines/wintermute/base/base_save_thumb_helper.h" #include "engines/wintermute/platform_osystem.h" #include "engines/wintermute/math/vector2.h" #include "engines/wintermute/base/gfx/base_image.h" +#include "engines/wintermute/base/save_thumb_helper.h" #include "engines/wintermute/base/sound/base_sound.h" #include "engines/wintermute/graphics/transparent_surface.h" #include "engines/wintermute/wintermute.h" diff --git a/engines/wintermute/base/base_save_thumb_helper.cpp b/engines/wintermute/base/base_save_thumb_helper.cpp deleted file mode 100644 index 7590cd0710..0000000000 --- a/engines/wintermute/base/base_save_thumb_helper.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -/* - * This file is based on WME Lite. - * http://dead-code.org/redir.php?target=wmelite - * Copyright (c) 2011 Jan Nedoma - */ - -#include "engines/wintermute/base/base_save_thumb_helper.h" -#include "engines/wintermute/base/gfx/base_image.h" -#include "engines/wintermute/base/gfx/base_renderer.h" -#include "engines/wintermute/base/base_game.h" -#include "graphics/scaler.h" - -namespace Wintermute { - -////////////////////////////////////////////////////////////////////////// -SaveThumbHelper::SaveThumbHelper(BaseGame *inGame) { - _thumbnail = nullptr; - _scummVMThumb = nullptr; -} - -////////////////////////////////////////////////////////////////////////// -SaveThumbHelper::~SaveThumbHelper(void) { - delete _thumbnail; - _thumbnail = nullptr; - delete _scummVMThumb; - _scummVMThumb = nullptr; -} - -BaseImage *SaveThumbHelper::storeThumb(bool doFlip, int width, int height) { - BaseImage *thumbnail = nullptr; - if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { - if (doFlip) { - // when using opengl on windows it seems to be necessary to do this twice - // works normally for direct3d - _gameRef->displayContent(false); - _gameRef->_renderer->flip(); - - _gameRef->displayContent(false); - _gameRef->_renderer->flip(); - } - - BaseImage *screenshot = _gameRef->_renderer->takeScreenshot(); - if (!screenshot) { - return nullptr; - } - - // normal thumbnail - if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { - thumbnail = new BaseImage(); - thumbnail->copyFrom(screenshot, width, height); - } - - - delete screenshot; - screenshot = nullptr; - } - return thumbnail; -} - -////////////////////////////////////////////////////////////////////////// -bool SaveThumbHelper::storeThumbnail(bool doFlip) { - delete _thumbnail; - _thumbnail = nullptr; - - if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { - - _thumbnail = storeThumb(doFlip, _gameRef->getSaveThumbWidth(), _gameRef->getSaveThumbHeight()); - if (!_thumbnail) { - return STATUS_FAILED; - } - } - storeScummVMThumbNail(); - return STATUS_OK; -} - -////////////////////////////////////////////////////////////////////////// -bool SaveThumbHelper::storeScummVMThumbNail(bool doFlip) { - delete _scummVMThumb; - _scummVMThumb = nullptr; - - _scummVMThumb = storeThumb(doFlip, kThumbnailWidth, kThumbnailHeight2); - if (!_scummVMThumb) { - return STATUS_FAILED; - } - return STATUS_OK; -} - -} // end of namespace Wintermute diff --git a/engines/wintermute/base/base_save_thumb_helper.h b/engines/wintermute/base/base_save_thumb_helper.h deleted file mode 100644 index cbf0345709..0000000000 --- a/engines/wintermute/base/base_save_thumb_helper.h +++ /dev/null @@ -1,53 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -/* - * This file is based on WME Lite. - * http://dead-code.org/redir.php?target=wmelite - * Copyright (c) 2011 Jan Nedoma - */ -#ifndef WINTERMUTE_BASE_SAVE_THUMB_HELPER_H -#define WINTERMUTE_BASE_SAVE_THUMB_HELPER_H - -namespace Wintermute { - -class BaseImage; -class BaseGame; - -class SaveThumbHelper { -public: - SaveThumbHelper(BaseGame *inGame); - virtual ~SaveThumbHelper(void); - bool storeThumbnail(bool doFlip = false); - bool storeScummVMThumbNail(bool doFlip = false); - - BaseImage *_thumbnail; - BaseImage *_scummVMThumb; -private: - BaseImage *storeThumb(bool doFlip, int width, int height); - BaseImage *_richThumbnail; - BaseGame *_gameRef; -}; - -} // end of namespace Wintermute - -#endif diff --git a/engines/wintermute/base/save_thumb_helper.cpp b/engines/wintermute/base/save_thumb_helper.cpp new file mode 100644 index 0000000000..4598757375 --- /dev/null +++ b/engines/wintermute/base/save_thumb_helper.cpp @@ -0,0 +1,110 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +/* + * This file is based on WME Lite. + * http://dead-code.org/redir.php?target=wmelite + * Copyright (c) 2011 Jan Nedoma + */ + +#include "engines/wintermute/base/save_thumb_helper.h" +#include "engines/wintermute/base/gfx/base_image.h" +#include "engines/wintermute/base/gfx/base_renderer.h" +#include "engines/wintermute/base/base_game.h" +#include "graphics/scaler.h" + +namespace Wintermute { + +////////////////////////////////////////////////////////////////////////// +SaveThumbHelper::SaveThumbHelper(BaseGame *inGame) { + _thumbnail = nullptr; + _scummVMThumb = nullptr; +} + +////////////////////////////////////////////////////////////////////////// +SaveThumbHelper::~SaveThumbHelper(void) { + delete _thumbnail; + _thumbnail = nullptr; + delete _scummVMThumb; + _scummVMThumb = nullptr; +} + +BaseImage *SaveThumbHelper::storeThumb(bool doFlip, int width, int height) { + BaseImage *thumbnail = nullptr; + if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { + if (doFlip) { + // when using opengl on windows it seems to be necessary to do this twice + // works normally for direct3d + _gameRef->displayContent(false); + _gameRef->_renderer->flip(); + + _gameRef->displayContent(false); + _gameRef->_renderer->flip(); + } + + BaseImage *screenshot = _gameRef->_renderer->takeScreenshot(); + if (!screenshot) { + return nullptr; + } + + // normal thumbnail + if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { + thumbnail = new BaseImage(); + thumbnail->copyFrom(screenshot, width, height); + } + + + delete screenshot; + screenshot = nullptr; + } + return thumbnail; +} + +////////////////////////////////////////////////////////////////////////// +bool SaveThumbHelper::storeThumbnail(bool doFlip) { + delete _thumbnail; + _thumbnail = nullptr; + + if (_gameRef->getSaveThumbWidth() > 0 && _gameRef->getSaveThumbHeight() > 0) { + + _thumbnail = storeThumb(doFlip, _gameRef->getSaveThumbWidth(), _gameRef->getSaveThumbHeight()); + if (!_thumbnail) { + return STATUS_FAILED; + } + } + storeScummVMThumbNail(); + return STATUS_OK; +} + +////////////////////////////////////////////////////////////////////////// +bool SaveThumbHelper::storeScummVMThumbNail(bool doFlip) { + delete _scummVMThumb; + _scummVMThumb = nullptr; + + _scummVMThumb = storeThumb(doFlip, kThumbnailWidth, kThumbnailHeight2); + if (!_scummVMThumb) { + return STATUS_FAILED; + } + return STATUS_OK; +} + +} // end of namespace Wintermute diff --git a/engines/wintermute/base/save_thumb_helper.h b/engines/wintermute/base/save_thumb_helper.h new file mode 100644 index 0000000000..cbf0345709 --- /dev/null +++ b/engines/wintermute/base/save_thumb_helper.h @@ -0,0 +1,53 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +/* + * This file is based on WME Lite. + * http://dead-code.org/redir.php?target=wmelite + * Copyright (c) 2011 Jan Nedoma + */ +#ifndef WINTERMUTE_BASE_SAVE_THUMB_HELPER_H +#define WINTERMUTE_BASE_SAVE_THUMB_HELPER_H + +namespace Wintermute { + +class BaseImage; +class BaseGame; + +class SaveThumbHelper { +public: + SaveThumbHelper(BaseGame *inGame); + virtual ~SaveThumbHelper(void); + bool storeThumbnail(bool doFlip = false); + bool storeScummVMThumbNail(bool doFlip = false); + + BaseImage *_thumbnail; + BaseImage *_scummVMThumb; +private: + BaseImage *storeThumb(bool doFlip, int width, int height); + BaseImage *_richThumbnail; + BaseGame *_gameRef; +}; + +} // end of namespace Wintermute + +#endif -- cgit v1.2.3