summaryrefslogtreecommitdiff
path: root/src/downloadmanagerproxy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/downloadmanagerproxy.h')
-rw-r--r--src/downloadmanagerproxy.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/downloadmanagerproxy.h b/src/downloadmanagerproxy.h
new file mode 100644
index 00000000..f41b60c6
--- /dev/null
+++ b/src/downloadmanagerproxy.h
@@ -0,0 +1,31 @@
+#ifndef DOWNLOADMANAGERPROXY_H
+#define DOWNLOADMANAGERPROXY_H
+
+#include <idownloadmanager.h>
+
+class OrganizerProxy;
+
+class DownloadManagerProxy : public MOBase::IDownloadManager
+{
+
+public:
+
+ DownloadManagerProxy(OrganizerProxy* oproxy, IDownloadManager* downloadManager);
+ virtual ~DownloadManagerProxy() { }
+
+ int startDownloadURLs(const QStringList& urls) override;
+ int startDownloadNexusFile(int modID, int fileID) override;
+ QString downloadPath(int id) override;
+
+ bool onDownloadComplete(const std::function<void(int)>& callback) override;
+ bool onDownloadPaused(const std::function<void(int)>& callback) override;
+ bool onDownloadFailed(const std::function<void(int)>& callback) override;
+ bool onDownloadRemoved(const std::function<void(int)>& callback) override;
+
+private:
+
+ OrganizerProxy* m_OrganizerProxy;
+ IDownloadManager* m_Proxied;
+};
+
+#endif // ORGANIZERPROXY_H