[Scummvm-git-logs] scummvm master -> 003d4cda09d53fdf9eb847790a6abdb214b1432e

sev- sev at scummvm.org
Wed Apr 14 13:18:59 UTC 2021


This automated email contains information about 5 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
40facbe6d3 GUI: Show only truly compiled-in engines in the About dialog
a138c0b646 ENGINES: Fix mess with the mismatched engine ids between engine/detection plugins
1774094089 BASE: Make --list-engines show list of truly compiled engines
6e8106aa49 BASE: Fix --list-targets aster HashMap rewrite
003d4cda09 BASE: Made --list-games show list of supported games and added --list-all-games


Commit: 40facbe6d33ee7d83f96a78c29c50d055bbf3a28
    https://github.com/scummvm/scummvm/commit/40facbe6d33ee7d83f96a78c29c50d055bbf3a28
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-04-14T14:42:10+02:00

Commit Message:
GUI: Show only truly compiled-in engines in the About dialog

Changed paths:
    gui/about.cpp


diff --git a/gui/about.cpp b/gui/about.cpp
index a0ab29df3c..d62b03e862 100644
--- a/gui/about.cpp
+++ b/gui/about.cpp
@@ -118,7 +118,7 @@ AboutDialog::AboutDialog()
 	engines += _("Available engines:");
 	addLine(engines);
 
-	const PluginList &plugins = EngineMan.getPlugins();
+	const PluginList &plugins = EngineMan.getPlugins(PLUGIN_TYPE_ENGINE);
 	PluginList::const_iterator iter = plugins.begin();
 	for (; iter != plugins.end(); ++iter) {
 		Common::String str;
@@ -126,8 +126,15 @@ AboutDialog::AboutDialog()
 		str += (*iter)->getName();
 		addLine(str);
 
+		const Plugin *p = EngineMan.findPlugin((*iter)->getName());
+
+		if (!p) {
+			warning("Cannot find plugin for %s", (*iter)->getName());
+			continue;
+		}
+
 		str = "C2";
-		str += (*iter)->get<MetaEngineDetection>().getOriginalCopyright();
+		str += p->get<MetaEngineDetection>().getOriginalCopyright();
 		addLine(str);
 
 		//addLine("");


Commit: a138c0b64670b74b699905aba73fb4fa2fe983fd
    https://github.com/scummvm/scummvm/commit/a138c0b64670b74b699905aba73fb4fa2fe983fd
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-04-14T14:42:38+02:00

Commit Message:
ENGINES: Fix mess with the mismatched engine ids between engine/detection plugins

Changed paths:
    engines/grim/metaengine.cpp
    engines/scumm/metaengine.cpp
    engines/twine/metaengine.cpp


diff --git a/engines/grim/metaengine.cpp b/engines/grim/metaengine.cpp
index 7d16fcb65b..31a78ba330 100644
--- a/engines/grim/metaengine.cpp
+++ b/engines/grim/metaengine.cpp
@@ -35,7 +35,7 @@ namespace Grim {
 class GrimMetaEngine : public AdvancedMetaEngine {
 public:
 	const char *getName() const override {
-		return "Grim";
+		return "grim";
 	}
 
 	Common::Error createInstance(OSystem *syst, Engine **engine) const override {
diff --git a/engines/scumm/metaengine.cpp b/engines/scumm/metaengine.cpp
index aaeb667715..296d62ff7f 100644
--- a/engines/scumm/metaengine.cpp
+++ b/engines/scumm/metaengine.cpp
@@ -217,7 +217,7 @@ bool ScummEngine::isMacM68kIMuse() const {
 using namespace Scumm;
 
 const char *ScummMetaEngine::getName() const {
-    return "Scumm";
+    return "scumm";
 }
 
 bool ScummMetaEngine::hasFeature(MetaEngineFeature f) const {
diff --git a/engines/twine/metaengine.cpp b/engines/twine/metaengine.cpp
index dbca13ffb8..ec5753bcaf 100644
--- a/engines/twine/metaengine.cpp
+++ b/engines/twine/metaengine.cpp
@@ -39,7 +39,7 @@ namespace TwinE {
 class TwinEMetaEngine : public AdvancedMetaEngine {
 public:
 	const char *getName() const override {
-		return "TwinE";
+		return "twine";
 	}
 
 	int getMaximumSaveSlot() const override {


Commit: 17740940890fdf57567eb9adbfbb33688469e1b5
    https://github.com/scummvm/scummvm/commit/17740940890fdf57567eb9adbfbb33688469e1b5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-04-14T15:04:37+02:00

Commit Message:
BASE: Make --list-engines show list of truly compiled engines

After plugins were split, we were showing list of detection plugins
which is misleading, since all of them are always included.

Changed paths:
    base/commandLine.cpp


diff --git a/base/commandLine.cpp b/base/commandLine.cpp
index bde8c57a7c..b8c17b2c58 100644
--- a/base/commandLine.cpp
+++ b/base/commandLine.cpp
@@ -835,10 +835,11 @@ static void listEngines() {
 	printf("Engine ID       Engine Name                                           \n"
 	       "--------------- ------------------------------------------------------\n");
 
-	const PluginList &plugins = EngineMan.getPlugins();
+	const PluginList &plugins = EngineMan.getPlugins(PLUGIN_TYPE_ENGINE);
 	for (PluginList::const_iterator iter = plugins.begin(); iter != plugins.end(); ++iter) {
-		const MetaEngineDetection &metaEngine = (*iter)->get<MetaEngineDetection>();
-		printf("%-15s %s\n", metaEngine.getEngineId(), metaEngine.getName());
+		const Plugin *p = EngineMan.findPlugin((*iter)->getName());
+
+		printf("%-15s %s\n", p->get<MetaEngineDetection>().getEngineId(), p->get<MetaEngineDetection>().getName());
 	}
 }
 


Commit: 6e8106aa49d1b23d22ace8cbb8623a1065aea591
    https://github.com/scummvm/scummvm/commit/6e8106aa49d1b23d22ace8cbb8623a1065aea591
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-04-14T15:06:00+02:00

Commit Message:
BASE: Fix --list-targets aster HashMap rewrite

Changed paths:
    base/commandLine.cpp


diff --git a/base/commandLine.cpp b/base/commandLine.cpp
index b8c17b2c58..b65ac787a5 100644
--- a/base/commandLine.cpp
+++ b/base/commandLine.cpp
@@ -856,7 +856,7 @@ static void listTargets() {
 
 	for (iter = domains.begin(); iter != domains.end(); ++iter) {
 		Common::String name(iter->_key);
-		Common::String description(iter->_value.getVal("description"));
+		Common::String description(iter->_value.getValOrDefault("description"));
 
 		// If there's no description, fallback on the default description.
 		if (description.empty()) {


Commit: 003d4cda09d53fdf9eb847790a6abdb214b1432e
    https://github.com/scummvm/scummvm/commit/003d4cda09d53fdf9eb847790a6abdb214b1432e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-04-14T15:18:19+02:00

Commit Message:
BASE: Made --list-games show list of supported games and added --list-all-games

Changed paths:
    base/commandLine.cpp


diff --git a/base/commandLine.cpp b/base/commandLine.cpp
index b65ac787a5..89dbaadf26 100644
--- a/base/commandLine.cpp
+++ b/base/commandLine.cpp
@@ -69,6 +69,7 @@ static const char HELP_STRING[] =
 	"  -v, --version            Display ScummVM version information and exit\n"
 	"  -h, --help               Display a brief help text and exit\n"
 	"  -z, --list-games         Display list of supported games and exit\n"
+	"  --list-all-games         Display list of all detected games and exit\n"
 	"  -t, --list-targets       Display list of configured targets and exit\n"
 	"  --list-engines           Display list of suppported engines and exit\n"
 	"  --list-saves             Display a list of saved games for the target specified\n"
@@ -537,6 +538,9 @@ Common::String parseCommandLine(Common::StringMap &settings, int argc, const cha
 			DO_COMMAND('z', "list-games")
 			END_COMMAND
 
+			DO_LONG_COMMAND("list-all-games")
+			END_COMMAND
+
 			DO_LONG_COMMAND("list-engines")
 			END_COMMAND
 
@@ -819,6 +823,22 @@ static void listGames() {
 	printf("Game ID                        Full Title                                                 \n"
 	       "------------------------------ -----------------------------------------------------------\n");
 
+	const PluginList &plugins = EngineMan.getPlugins(PLUGIN_TYPE_ENGINE);
+	for (PluginList::const_iterator iter = plugins.begin(); iter != plugins.end(); ++iter) {
+		const Plugin *p = EngineMan.findPlugin((*iter)->getName());
+
+		PlainGameList list = p->get<MetaEngineDetection>().getSupportedGames();
+		for (PlainGameList::const_iterator v = list.begin(); v != list.end(); ++v) {
+			printf("%-30s %s\n", buildQualifiedGameName(p->get<MetaEngineDetection>().getEngineId(), v->gameId).c_str(), v->description);
+		}
+	}
+}
+
+/** List all detected game IDs, i.e. all games which any loaded plugin supports. */
+static void listAllGames() {
+	printf("Game ID                        Full Title                                                 \n"
+	       "------------------------------ -----------------------------------------------------------\n");
+
 	const PluginList &plugins = EngineMan.getPlugins();
 	for (PluginList::const_iterator iter = plugins.begin(); iter != plugins.end(); ++iter) {
 		const MetaEngineDetection &metaengine = (*iter)->get<MetaEngineDetection>();
@@ -1363,6 +1383,9 @@ bool processSettings(Common::String &command, Common::StringMap &settings, Commo
 	} else if (command == "list-games") {
 		listGames();
 		return true;
+	} else if (command == "list-all-games") {
+		listAllGames();
+		return true;
 	} else if (command == "list-engines") {
 		listEngines();
 		return true;




More information about the Scummvm-git-logs mailing list