Commit Graph
30 Commits
Author SHA1 Message Date
Bastien Bouclet 9a4c0ae281 ENGINES: Normalize the getName() result of metaengines
Also-By: Matthew Hoops <clone2727@gmail.com>
2018-12-10 06:47:27 +01:00
Adrian Frühwirth 1ff3282acd SHERLOCK: Display savegame metadata in launcher/GMM
Saving/loading already handles savegame creation/play time, the
information just wasn't displayed until now because the MetaEngine
features weren't being reported as supported which I assume to be
an oversight.

Fixes Trac#10006.
2018-05-02 23:45:25 +02:00
Adrian Frühwirth 00e59a3122 ALL: Load savegame thumbnail only when necessary
This commit introduces the following changes:

1. Graphics::loadThumbnail()

   Now returns a boolean and takes a new argument skipThumbnail which
   defaults to false. In case of true, loadThumbnail() reads past the
   thumbnail data in the input stream instead of actually loading the
   thumbnail. This simplifies savegame handling where, up until now,
   many engines always read the whole savegame metadata (including
   the thumbnail) and then threw away the thumbnail when not needed
   (which is in almost all cases, the most common exception being
   MetaEngine::querySaveMetaInfos() which is responsible for loading
   savegame metadata for displaying it in the GUI launcher.

2. readSavegameHeader()

   Engines which already implement such a method (name varies) now take
   a new argument skipThumbnail (default: true) which is passed
   through to loadThumbnail(). This means that the default case for
   readSavegameHeader() is now _not_ loading the thumbnail from a
   savegame and just reading past it. In those cases, e.g.
   querySaveMetaInfos(), where we actually are interested in loading
   the thumbnail readSavegameHeader() needs to explicitely be called
   with skipThumbnail == false.

   Engines whose readSavegameHeader() (name varies) already takes an
   argument loadThumbnail have been adapted to have a similar
   prototype and semantics.
   I.e. readSaveHeader(in, loadThumbnail, header) now is
   readSaveHeader(in, header, skipThumbnail).

3. Error handling

   Engines which previously did not check the return value of
   readSavegameHeader() (name varies) now do so ensuring that possibly
   broken savegames (be it a broken thumbnail or something else) don't
   make it into the GUI launcher list in the first place.
2018-04-07 09:26:20 +02:00
Ben Castricum b041618a42 ALL: Remove comma before the word 'instead' 2016-11-29 20:22:19 +01:00
Ben Castricum 38eb27212d ALL: savegame => saved game 2016-11-29 20:15:13 +01:00
Alexander Tkachev b665fc933d ALL: Make simpleSaveNames() a MetaEngineFeature
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-24 16:07:55 +06:00
Alexander Tkachev ab1d160ec8 ALL: Add MetaEngine::simpleSaveNames()
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-24 16:07:55 +06:00
Paul Gilbert e6b070711a SHERLOCK: RT: Hook window/speech to ScummVM speech/subtitles setting 2015-08-12 08:46:09 -04:00
Paul Gilbert 67d2bf8589 SHERLOCK: RT: Fix Options dialog event handling 2015-07-24 21:47:05 -04:00
Paul Gilbert ca07e8faf2 SHERLOCK: Add initialization of RT character portraits and names 2015-06-06 17:50:57 -04:00
Strangerke 20d859377d SHERLOCK: Trim useless spaces and tabs 2015-05-19 22:30:47 +02:00
Paul Gilbert 1df183ffcb SHERLOCK: Move method comments from cpp to headers 2015-05-19 07:37:55 -04:00
Paul Gilbert 8d426ca464 SHERLOCK: Added more of the game options to the Engine tab 2015-05-18 20:43:26 -04:00
Paul Gilbert 844d801259 SHERLOCK: Syntactic fixes 2015-05-18 18:30:31 -04:00
sirlemonhead da9333a924 SHERLOCK: Fix code formatting issues and comment spelling mistakes 2015-05-18 18:23:47 +01:00
Paul Gilbert 07e9262ee7 SHERLOCK: Change save extra option to use more standard originalsaveload 2015-05-15 19:36:39 -04:00
Paul Gilbert d3f1a76cc8 SHERLOCK: Default Files button to show GMM, with engine option to disable 2015-05-14 19:53:03 -04:00
Strangerke 1f81f61cf9 SHERLOCK: Add some code for the interactive demo (still crashing) 2015-05-10 19:14:55 +02:00
Willem Jan Palenstijn 902b791165 SHERLOCK: Make copyright headers consistent 2015-05-09 18:06:05 +02:00
Paul Gilbert ccb8c03737 SHERLOCK: Further cleanup fixes for detection 2015-05-09 09:29:06 -04:00
Paul Gilbert 5d41f0f9aa SHERLOCK: Give the GTYPE constants an explicit enum type 2015-05-09 09:17:30 -04:00
Paul Gilbert 4c7e840388 SHERLOCK: Fix meta engine initialization 2015-05-08 23:05:27 -04:00
Paul Gilbert 7ca37bef9f SHERLOCK: Simplify detection entry 2015-05-08 22:54:32 -04:00
Strangerke d9e93f8e01 SHERLOCK: some code formatting 2015-05-07 19:33:44 +02:00
Paul Gilbert b4c3d9840c SHERLOCK: Extra method comments 2015-05-01 17:17:24 -10:00
Paul Gilbert acf0b01ad8 SHERLOCK: Hook up saving and loading via GMM 2015-04-22 07:08:01 -05:00
Paul Gilbert 8b0e8cd505 SHERLOCK: Hook up savegames to launcher 2015-04-22 06:25:04 -05:00
Paul Gilbert 3186016370 SHERLOCK: Implemented save game dialog event handling 2015-04-21 18:25:06 -05:00
Paul Gilbert 6fe65dc719 SHERLOCK: Beginnins of SaveManager class 2015-04-21 03:48:21 -05:00
Paul Gilbert 87a9ba5f2f SHERLOCK: Initial commit 2015-05-07 22:49:22 +02:00