summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Feenstra <26406078+JonathanFeenstra@users.noreply.github.com>2025-01-02 14:10:53 +0100
committerGitHub <noreply@github.com>2025-01-02 14:10:53 +0100
commit9049e65c5e1f29792b596a8e84a749d2de7ea792 (patch)
tree1741d9b7b88f8b31af3e624ab720e14bad826728
parentf8340e16201c214eef5327c4e810432e12b23805 (diff)
Add startDownloadNexusFileForGame (#2181)
-rw-r--r--src/downloadmanager.cpp9
-rw-r--r--src/downloadmanager.h2
-rw-r--r--src/downloadmanagerproxy.cpp9
-rw-r--r--src/downloadmanagerproxy.h2
4 files changed, 15 insertions, 7 deletions
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp
index 730803f6..5156c357 100644
--- a/src/downloadmanager.cpp
+++ b/src/downloadmanager.cpp
@@ -1907,13 +1907,12 @@ int DownloadManager::startDownloadURLs(const QStringList& urls)
return m_ActiveDownloads.size() - 1;
}
-int DownloadManager::startDownloadNexusFile(int modID, int fileID)
+int DownloadManager::startDownloadNexusFile(const QString& gameName, int modID,
+ int fileID)
{
int newID = m_ActiveDownloads.size();
- addNXMDownload(QString("nxm://%1/mods/%2/files/%3")
- .arg(m_ManagedGame->gameShortName())
- .arg(modID)
- .arg(fileID));
+ addNXMDownload(
+ QString("nxm://%1/mods/%2/files/%3").arg(gameName).arg(modID).arg(fileID));
return newID;
}
diff --git a/src/downloadmanager.h b/src/downloadmanager.h
index 1e7a626e..1ebe44c2 100644
--- a/src/downloadmanager.h
+++ b/src/downloadmanager.h
@@ -404,7 +404,7 @@ public:
public: // IDownloadManager interface:
int startDownloadURLs(const QStringList& urls);
- int startDownloadNexusFile(int modID, int fileID);
+ int startDownloadNexusFile(const QString& gameName, int modID, int fileID);
QString downloadPath(int id);
boost::signals2::connection
diff --git a/src/downloadmanagerproxy.cpp b/src/downloadmanagerproxy.cpp
index ab4ed83b..3d7040d8 100644
--- a/src/downloadmanagerproxy.cpp
+++ b/src/downloadmanagerproxy.cpp
@@ -43,7 +43,14 @@ int DownloadManagerProxy::startDownloadURLs(const QStringList& urls)
int DownloadManagerProxy::startDownloadNexusFile(int modID, int fileID)
{
- return m_Proxied->startDownloadNexusFile(modID, fileID);
+ return m_Proxied->startDownloadNexusFile(
+ m_OrganizerProxy->managedGame()->gameNexusName(), modID, fileID);
+}
+
+int DownloadManagerProxy::startDownloadNexusFileForGame(const QString& gameName,
+ int modID, int fileID)
+{
+ return m_Proxied->startDownloadNexusFile(gameName, modID, fileID);
}
QString DownloadManagerProxy::downloadPath(int id)
diff --git a/src/downloadmanagerproxy.h b/src/downloadmanagerproxy.h
index dde4efe1..8dd2e885 100644
--- a/src/downloadmanagerproxy.h
+++ b/src/downloadmanagerproxy.h
@@ -15,6 +15,8 @@ public:
int startDownloadURLs(const QStringList& urls) override;
int startDownloadNexusFile(int modID, int fileID) override;
+ int startDownloadNexusFileForGame(const QString& gameName, int modID,
+ int fileID) override;
QString downloadPath(int id) override;
bool onDownloadComplete(const std::function<void(int)>& callback) override;