aboutsummaryrefslogtreecommitdiff
path: root/gui/saveload.cpp
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.
2017-06-09GUI: Use dashes in default save descriptionTarek Soliman
Closes gh-956
2016-10-17ALL: Fix compilation with disabled cloud but enabled libcurlEugene Sandulenko
2016-08-24CLOUD: Replace USE_CLOUD with USE_LIBCURLAlexander Tkachev
In most cases that's the right one to check. USE_CLOUD is defined when either USE_LIBCURL or USE_SDL_NET are, which means if there is no curl, USE_CLOUD still could be defined and linking errors would appear.
2016-08-24CLOUD: Fix SaveLoadDialogs to check USE_CLOUDAlexander Tkachev
Linking was failing when disabling curl support.
2016-08-24CLOUD: Make Save/Load dialog start saves syncAlexander Tkachev
It also shows a "sync disabled" icon in case it has a savepath override.
2016-04-14JANITORIAL: Reduce GUI header dependenciesOri Avtalion
2014-02-18GUI: Make GPL headers consistent in themselves.Johannes Schickel
2012-07-24GUI: Add possibility to disable the grid based chooser via ↵Johannes Schickel
DISABLE_SAVELOADCHOOSER_GRID.
2012-07-24GUI: Let SaveLoadChooser::getResultString return a const reference.Johannes Schickel
2012-07-24GUI: Rename LoadChooserThumbnailed to SaveLoadChooserGrid.Johannes Schickel
2012-07-24GUI: Implement saving in the grid based save/load chooser.Johannes Schickel
2012-07-01GUI: Clean up save load chooser selection code.Johannes Schickel
2012-07-01GUI: Automatically switch to list based save/load chooser when changing ↵Johannes Schickel
resolution below 640x400.
2012-07-01GUI: Only use grid load dialog for 640x400 or bigger.Johannes Schickel
Formerly it was enabled for everything above 320x200, but resolutions below 640x400 feature not enough space.
2012-06-29GUI: Remember last save/load chooser selection.Johannes Schickel
2012-06-29GUI: Allow the user to switch between list and thumbnail based load chooser.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: Refactor engine plugin access out of SaveLoadChooserImpl into ↵Johannes Schickel
SaveLoadChooser.
2012-06-14GUI: Hide save/load chooser implementation.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-10-23ALL: Reduce assignment of "" to Common::String.Johannes Schickel
When clearing an existant object clear() should be used. When constructing objects (or using default values for parameters) the constructor of String without any argument should be used. This changes only a few instances I noticed while looking over some recent commit logs.
2011-09-25AGI/COMMON: Fixed bug #3407308 - "AGI: SQ2: Saving allowed in autosave slot ↵Filippos Karapetis
0 from scummvmmenu" The save/load dialog code was not polling for meta info for empty slots
2011-07-02ENGINES: Clean up SaveStateDescriptor.Johannes Schickel
Now SaveStateDescriptor no longer subclasses HashMap. Instead all possible saved meta data is included directly into SaveStateDescriptor. This is slightly less flexible, but we never needed that flexibility so far. On the other hand it should reduce the memory usage. At least on my system (Linux/amd64) the old SaveStateDescriptor had a size of 928 and the new SaveStateDescriptor has a size of 200.
2011-06-01Merge branch 'branch-1-3-0' into masterMax Horn
I manually resolved all conflicts, and inspected every single change. Many were due to the version string mismatch and thus easily resolved. The MSVC project files add in the 1-3-0 branch were not merged, neither where the changes to gui/themes/translations.dat. Conflicts: NEWS backends/base-backend.cpp backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp backends/module.mk backends/platform/ds/arm9/makefile backends/platform/psp/README.PSP backends/platform/samsungtv/main.cpp backends/platform/samsungtv/samsungtv.cpp backends/saves/posix/posix-saves.cpp base/commandLine.cpp base/internal_version.h base/main.cpp common/array.h configure devtools/create_project/create_project.cpp dists/android/AndroidManifest.xml dists/android/plugin-manifest.xml dists/iphone/Info.plist dists/irix/scummvm.spec dists/macosx/Info.plist dists/redhat/scummvm-tools.spec dists/redhat/scummvm.spec dists/scummvm.rc dists/slackware/scummvm.SlackBuild dists/wii/meta.xml engines/sci/parser/vocabulary.cpp engines/tinsel/handle.cpp gui/themes/translations.dat
2011-05-21GUI/DS: Make 99 the maximum number of save slots displayed on the GMM ↵agent-q
load/save screens on the DS port.
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
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-11-16GUI: Push down some header (inter)dependenciesMax Horn
svn-id: r54267
2010-11-16GUI: Move major widgets to new directory gui/widgetsMax Horn
Also renamed the source/header files, now they are more closely aligned to how we rename most other source files svn-id: r54264
2010-09-18JANITORIAL: Removed most punctuation at end of warning() and error()Torbjörn Andersson
Our warning() and error() functions always add an exclamation mark to the end of the message anyway. svn-id: r52791
2010-07-04Always use kThumbnailHeight2 (i.e. 120) for the height of the thumbnail widget.Johannes Schickel
This fixes the thumbnails for games with resolutions != n*200 in the launcher. svn-id: r50640
2010-06-15GUI: Implement tooltips. FR #2821513.Eugene Sandulenko
FR #2821513: "GUI: add tooltips". Added tooltips for Add Game button, clear field buttons and couple other. Current problem: Only first call correctly restores text. I could not find where restore information gets lost. svn-id: r49774
2010-06-15GUI: Added in-place hotkeys for widgets.Eugene Sandulenko
Now it is possible to specify hotkeys in place for ButtonWidget and CheckboxWidget (the only widgets with hotkeys now). Use de-facto standard with putting hotkey between tildes (~). Like '~O~pen'. The tildes gets stripped before after hotkey is extracted. This is done for giving translators possibility to specify their own hotkeys. Old hotkeys defined at widget instance creation are left for leaving possibility to specify non-printable hotkeys such as Common::ASCII_ESCAPE. Translation files were updated respectively. svn-id: r49766
2010-06-15Implement translation support for ScummVM GUI.Eugene Sandulenko
Based on patch #2903830: "Updated Translation Prototype" by alexbevi which in turn is based on patch #1739965 by jvprat. Currently it builds all translations right into ScummVM. Once the feature will be accepted more widely, i.e. more translations will pop up, it will be trivial to move translation strings to external file. Finished translation: Russian Unfinished translation: Hungarian Things which are nice to do: - Language code -> language mapping for more user friendness - Specifying fonts to be used with language - Updating of interface language without restart. It will require moving of much code to reflowLayout() methods for each dialog The .po files must be in single byte encodings. I.e. no support for Unicode. svn-id: r49759
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-12-30Get rid of Common::String::emptyString, and also of some port specific ↵Max Horn
hackery (getting rid of certain global C++ objs) svn-id: r46781
2009-08-20Implement automatic clearing of "Untitled Savestate" in edit mode of the ↵Johannes Schickel
SaveLoadChooser as requested in feature request #2834637 "GUI: Allow greying out dummy ListWidget entries". svn-id: r43555
2009-08-20Renamed ScummSaveLoad GUI dialog config entry to SaveLoadChooser. (Also ↵Johannes Schickel
bumped theme version along with it) svn-id: r43553
2009-08-20Partial implementation of feature request #2834637 "GUI: Allow greying out ↵Johannes Schickel
dummy ListWidget entries", based on a slighly modified version of my latest patch included there. svn-id: r43551
2009-08-16Cleanup.Johannes Schickel
svn-id: r43438
2009-08-16For a better user experience, clear all meta infos, when clicking on an ↵Johannes Schickel
unused slot in the GMM save/load dialog. svn-id: r43437
2009-08-08Patch #2832247: "GMM: Enable loading & deleting of unnamed savegames"Eugene Sandulenko
svn-id: r43143
2009-02-19Fixed regression in Options menu and disabled Save/Load buttons.Vicent Marti
svn-id: r38524
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-12-27GUI: Added Widget::setVisible convenience wrapperMax Horn
svn-id: r35572
2008-12-22Fixed indentation and removed whitespaces at the end of lineJordi Vilalta Prat
svn-id: r35481