summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pluginlist.cpp14
-rw-r--r--src/pluginlist.h1
2 files changed, 15 insertions, 0 deletions
diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp
index 43246b55..ff370fa4 100644
--- a/src/pluginlist.cpp
+++ b/src/pluginlist.cpp
@@ -667,6 +667,20 @@ bool PluginList::isMaster(const QString &name) const
}
}
+QStringList PluginList::masters(const QString &name) const
+{
+ auto iter = m_ESPsByName.find(name.toLower());
+ if (iter == m_ESPsByName.end()) {
+ return QStringList();
+ } else {
+ QStringList result;
+ foreach (const QString &master, m_ESPs[iter->second].m_Masters) {
+ result.append(master);
+ }
+ return result;
+ }
+}
+
QString PluginList::origin(const QString &name) const
{
auto iter = m_ESPsByName.find(name.toLower());
diff --git a/src/pluginlist.h b/src/pluginlist.h
index 8c06fefd..729c6f8b 100644
--- a/src/pluginlist.h
+++ b/src/pluginlist.h
@@ -224,6 +224,7 @@ public:
virtual int priority(const QString &name) const;
virtual int loadOrder(const QString &name) const;
virtual bool isMaster(const QString &name) const;
+ virtual QStringList masters(const QString &name) const;
virtual QString origin(const QString &name) const;
virtual bool onRefreshed(const std::function<void()> &callback);
virtual bool onPluginMoved(const std::function<void (const QString &, int, int)> &func);