aboutsummaryrefslogtreecommitdiff
path: root/gui/saveload.h
AgeCommit message (Collapse)Author
2017-12-03BASE: Remove bad casts between incompatible Plugin typesColin Snover
Previously, a C-style cast was used to convert a Common::Array<Plugin *>, populated with pointers to StaticPlugin and DynamicPlugin instances, to a Common::Array<PluginSubclass<T> *>, but PluginSubclass<T> is a *sibling* class to StaticPlugin/DynamicPlugin, so this cast was invalid and the results undefined. The methods for retrieving subclasses of plugins can't be easily changed to just generate an array of temporary wrapper objects that expose an identical API which dereferences to the preferred PluginObject subclass because pointers to these objects are retained by other parts of ScummVM, so the wrappers would needed to be persisted or they would need to just re-expose the underlying Plugin object again. This indicated that a way to solve this problem is to have the callers receive Plugin objects and get the PluginObject from the Plugin by explicitly stating their desired type, in a similar manner to std::get(std::variant), so that the pattern used by this patch to solve the problem. Closes gh-1051.
2016-04-14JANITORIAL: Reduce GUI header dependenciesOri Avtalion
2014-02-18GUI: Make GPL headers consistent in themselves.Johannes Schickel
2012-07-24GUI: Let SaveLoadChooser::getResultString return a const reference.Johannes Schickel
2012-06-15GUI: Hook up the new load chooser for > 320x200 and engines which support ↵Johannes Schickel
thumbnails.
2012-06-15GUI: Create an interface for save/load dialogs.Johannes Schickel
2012-06-14GUI: Fix include guard of saveload.h.Johannes Schickel
2012-06-14GUI: Hide save/load chooser implementation.Johannes Schickel
2012-06-14GUI: Remove unused SaveLoadChooser::setList.Johannes Schickel
2012-06-10GUI: Refactor default savegame description creation.Johannes Schickel
Formerly the GMM, AGI and SCI duplicated the logic for USE_SAVEGAME_TIMESTAMP. Now I added a method to SaveLoadChooser instead, which takes care of this. This might not be the best placement of such a functionality, thus I added a TODO which talks about moving it to a better place.
2012-06-10GUI: Add helper to SaveLoadChooser, which uses the currently active target.Johannes Schickel
This reduces the code duplication in all client code, which formerly duplicated the querying of the plugin, game id etc. and now simply calls the newly added method runModalWithCurrentTarget() on a SaveLoadChooser object.
2012-06-10GUI: Get rid of SaveLoadChooser::setSaveMode.Johannes Schickel
We already pass the title and process button name to the constructor of SaveLoadChooser and then do not offer any way of changing it, thus changing the edit mode of the chooser is kind of pointless and was never actually used. Instead we pass the mode on SaveLoadChooser construction now.
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-02-07GUI: Change SaveLoadChooser to not 'public subclass' GUI::DialogMax Horn
svn-id: r55817
2011-02-07GUI: Rename SaveLoadChooser::runModal to runModalWithPluginAndTargetMax Horn
This avoids hiding an overloaded virtual method, which in turn can cause weird bugs (see also the next commit). svn-id: r55815
2010-03-18COMMON: Move typedef StringList from str.h to new header str-array.hMax Horn
This removes the dependency on array.h from str.h. Also, begun migration from the confusing type name "StringList" to the more appropriate StringArray. svn-id: r48282
2009-01-12Fixed bug #2500168 ("GUI: Cannot quit in the launcher's load dialog"). I thoughtTorbjörn Andersson
I would have to do more than this to fix it, but it seems to be enough. svn-id: r35840
2008-11-13cleanupMax Horn
svn-id: r35037
2008-11-11Moved GUI::SaveLoadChooser to its own source fileMax Horn
svn-id: r35002