aboutsummaryrefslogtreecommitdiff
path: root/engines/metaengine.h
AgeCommit message (Collapse)Author
2019-11-13ENGINES: Extend MetaEngine class with ExtendedSaves supportEugene Sandulenko
2019-11-03ENGINES: Remove useless TODOBastien Bouclet
2019-11-03BASE: Change the command line interface to use engine-qualified game namesBastien Bouclet
Qualified game names have the following form: engineId:gameId. Unqualified game names are still supported as long as they are not ambiguous. However they are considered deprecated and are no longer displayed by the --list-games command.
2019-11-03ENGINES: Automatically upgrade the targets on launch to add an engine IDBastien Bouclet
2019-11-03ENGINES: Change targets to have an 'engine ID'Bastien Bouclet
The engine ID identifies which engine should be used to launch the target. Also remove the 'single ID' system. Different games from engines that used that system now have different game IDs. Also-By: Matthew Hoops <clone2727@gmail.com>
2018-05-10ENGINES: Merge GameDescriptor and DetectedGameBastien Bouclet
2018-05-10ENGINES: Factor adding games to ConfManBastien Bouclet
2018-05-10ENGINES: Change MetaEngine::listSupportedGames to return plain game descriptorsBastien Bouclet
2018-05-10ENGINES: Change MetaEngine::findGame to return a plain game descriptorBastien Bouclet
2018-05-10ENGINES: Add unknown game variants to the game detector resultsBastien Bouclet
2018-04-29ENGINES: Show the unknown Game dialog only when the detector is launched by ↵Lothar Serra Mari
the Add Game feature
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-08-24ALL: Make simpleSaveNames() a MetaEngineFeatureAlexander Tkachev
Added it into hasFeature() of all engines which returned `true` in simpleSaveNames() before. As mentioned in #788, SCI is not always using simple names, so it doesn't have such feature now.
2016-08-24ALL: Add MetaEngine::simpleSaveNames()Alexander Tkachev
Engines with "simple" savenames would support "Run in background" in save/load dialog and gradual save slots unlocking. Other engines save/load feature would be locked until save sync is over.
2016-08-24GUI: Show "locked" saves during syncAlexander Tkachev
2016-02-28ENGINES: Fix Typos.Johannes Schickel
2016-02-25ENGINES: Document sorting guaranty for MetaEngine::listSaves.Johannes Schickel
2014-02-18ENGINES: Make GPL headers consistent in themselves.Johannes Schickel
2012-03-31ENGINES: Return all available custom GUI options if no target is specifiedFilippos Karapetis
This is used to set default settings for all custom game options when an engine starts
2012-03-19GUI: Add per-engine and per-game optionsFilippos Karapetis
2012-02-01ENGINES: Get rid of unnecessary friend in EngineManager.Johannes Schickel
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Format forward declarations to follow conventionOri Avtalion
2010-12-23PLUGINS: switched plugin manager to inheritance rather than #definesYotam Barnoy
The reason for this was that I found issues where the wrong functions were called in EngineManager for single plugin operation. Rather than inserting more messy #defines, I preferred to change the PluginManager to use virtual functions, which also makes EngineManager simpler. svn-id: r55024
2010-11-05PLUGINS: improved one-at-a-time plugin codeYotam Barnoy
I reduced memory fragmentation using 2 principles: Plugins should be loaded for as little time as possible, and long lasting memory allocations should be allocated before plugins are loaded. There might still be a little fragmentation left. Note that command line settings that require plugins to be loaded don't work yet, but they didn't work (properly) before either. svn-id: r54097
2010-08-05added intermediary function 'findGameOnePlugAtATime' and switched load game ↵Tony Puccinelli
and run game code to use it. Added checks for DYNAMIC_MODULES defines to the checks for NEW_PLUGIN_DESIGN_FIRST_REFINEMENT svn-id: r51746
2010-03-22Patch #2973290: Semicolon cleanupMax Horn
svn-id: r48359
2010-03-18ENGINES: Move SaveStateDescriptor etc. to engine/savestate.*Max Horn
svn-id: r48283
2009-03-05Renamed MetaEngine::getCopyright() to getOriginalCopyright() to better match ↵Jordi Vilalta Prat
the meaning of the returned string, as discussed some time ago in scummvm-devel svn-id: r39132
2009-01-01Whoa! Removing trailing spaces.Eugene Sandulenko
svn-id: r35648
2008-11-09Update documentation.Johannes Schickel
svn-id: r34971
2008-11-09Updated documentation.Johannes Schickel
svn-id: r34964
2008-11-09- The GMM save dialog is now working for all engines which support the ↵Filippos Karapetis
appropriate features - Added a new method to the MetaEngine class, getMaximumSaveSlot(), and implemented it in all engines for which the listSavefiles() method is implemented (it goes together with the listSavefiles method). It is used to fill the unused save slots in the save/load dialogs of each engine, so that the user can create new save games in empty slots - Unified the save/load dialog list numbering in the GMM load/save screens and in the load screen of the main menu (before a game is started) svn-id: r34963
2008-11-05Turned enum PluginError into Common::Error, which in the future is to be ↵Max Horn
used in more places. Help with this is highly welcome svn-id: r34906
2008-11-04Fixed the EngineFeature vs. MetaEngineFeature mess, clarified some ↵Max Horn
EngineFeature comments svn-id: r34896
2008-11-03- Extended some commentsJohannes Schickel
- Added @todos to engines/engine.h - Added a FIXME to engines/dialogs.cpp svn-id: r34887
2008-11-03Patch #2122869: ALL: Common load dialogMax Horn
svn-id: r34883
2008-10-26Renamed engine feature kSupportsDirectLoad to kSupportsLoadingDuringStartup, ↵Filippos Karapetis
as discussed in patch #2122869 svn-id: r34854
2008-10-06Added new type Engine::Feature; pushed down some #include dependenciesMax Horn
svn-id: r34755
2008-10-04Renamed some MetaEngine feature flags; removed explicit numbers from this ↵Max Horn
feature flag list (nothing should rely on their specific values, anyway); added a note that Engine::hasFeature should become independant of MetaEngine::hasFeature svn-id: r34738
2008-09-30cleanupMax Horn
svn-id: r34697
2008-09-17Moved base/game.* to engines/game.*Max Horn
svn-id: r34589
2008-09-16Added support for SCUMM savestates date/time and playtime info in the ↵Johannes Schickel
launcher load dialog. svn-id: r34583
2008-09-16Added "querySaveMetaInfos" to MetaEngine.Johannes Schickel
-> Allows easy addition of save state specific infos like playtime, save date atc. -> Removed MetaEngine::loadThumbnailFromSlot, superseded by meta infos -> Changed SCUMM / KYRA to implement the newly added functionallity -> Removed hack in KYRAs listSavefiles, which is now handled via meta infos svn-id: r34581
2008-09-14- Added thumbnail support to launcher load dialog.Johannes Schickel
- Adopted KYRA to support displaying thumbnails in load dialog (SCUMM engine has yet to follow) svn-id: r34539
2008-09-11Committed my patch #2105593 "Launcher/MetaEngine: Finnished removeSaveState".Johannes Schickel
svn-id: r34495
2008-09-03Moved FilesystemNode / FSList to namespace Common; also got rid of some ↵Max Horn
'typedef Common::String String;' name aliases svn-id: r34302
2008-09-01Document each MetaEngineFeature (instead of listing just 'examples'). ↵Max Horn
Wording could be better, feel free to improve it svn-id: r34262
2008-09-01Clarified clarification ;)Max Horn
svn-id: r34261
2008-09-01Clarified some commentsMax Horn
svn-id: r34260