From 77a53ebd2fc2983fd0c156c07c1b4239417c1bd7 Mon Sep 17 00:00:00 2001 From: Robert Di Pardo Date: Thu, 12 May 2022 15:48:09 -0400 Subject: [PATCH] Show installed plugin versions in Debug Info dialog Fix #11284, close #11662 --- .../src/MISC/PluginsManager/PluginsManager.cpp | 11 ++++++++--- PowerEditor/src/MISC/PluginsManager/PluginsManager.h | 7 ++++++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/PowerEditor/src/MISC/PluginsManager/PluginsManager.cpp b/PowerEditor/src/MISC/PluginsManager/PluginsManager.cpp index 24745a4e7..6104f929e 100644 --- a/PowerEditor/src/MISC/PluginsManager/PluginsManager.cpp +++ b/PowerEditor/src/MISC/PluginsManager/PluginsManager.cpp @@ -780,10 +780,15 @@ bool PluginsManager::allocateMarker(int numberRequired, int *start) generic_string PluginsManager::getLoadedPluginNames() const { generic_string pluginPaths; - for (size_t i = 0; i < _loadedDlls.size(); ++i) + PluginUpdateInfo pl; + for (const auto &dll : _loadedDlls) { - pluginPaths += _loadedDlls[i]._fileName; - pluginPaths += TEXT(" "); + pl = PluginUpdateInfo(dll._fullFilePath, dll._fileName); + pluginPaths += TEXT("\r\n "); + pluginPaths += dll._displayName; + pluginPaths += TEXT(" ("); + pluginPaths += pl._version.toString(); + pluginPaths += TEXT(")"); } return pluginPaths; } diff --git a/PowerEditor/src/MISC/PluginsManager/PluginsManager.h b/PowerEditor/src/MISC/PluginsManager/PluginsManager.h index ed5ee3b34..9b00db640 100644 --- a/PowerEditor/src/MISC/PluginsManager/PluginsManager.h +++ b/PowerEditor/src/MISC/PluginsManager/PluginsManager.h @@ -65,8 +65,13 @@ struct LoadedDllInfo { generic_string _fullFilePath; generic_string _fileName; + generic_string _displayName; - LoadedDllInfo(const generic_string & fullFilePath, const generic_string & fileName) : _fullFilePath(fullFilePath), _fileName(fileName) {}; + LoadedDllInfo(const generic_string & fullFilePath, const generic_string & fileName) : _fullFilePath(fullFilePath), _fileName(fileName) + { + // the plugin module's name, without '.dll' + _displayName = fileName.substr(0, fileName.find_last_of('.')); + }; }; class PluginsManager