diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-09-18 00:00:35 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-09-18 00:00:35 +0200 |
commit | b979d0ce5da515793a02802a6421ef607a498323 (patch) | |
tree | 1431d15e7a3e89e87708564a5be9fea05a5647ab /logic/net/DownloadJob.h | |
parent | d38b90530b3ba3a49c4eb072eb344ae2b0836913 (diff) | |
download | MultiMC-b979d0ce5da515793a02802a6421ef607a498323.tar MultiMC-b979d0ce5da515793a02802a6421ef607a498323.tar.gz MultiMC-b979d0ce5da515793a02802a6421ef607a498323.tar.lz MultiMC-b979d0ce5da515793a02802a6421ef607a498323.tar.xz MultiMC-b979d0ce5da515793a02802a6421ef607a498323.zip |
Implement legacy forge button!
Many refactors of the task system.
Progress dialog now accepts generic ProgressProvider objects
Diffstat (limited to 'logic/net/DownloadJob.h')
-rw-r--r-- | logic/net/DownloadJob.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/logic/net/DownloadJob.h b/logic/net/DownloadJob.h index 69a49e59..c8f6a9d7 100644 --- a/logic/net/DownloadJob.h +++ b/logic/net/DownloadJob.h @@ -5,6 +5,7 @@ #include "FileDownload.h" #include "CacheDownload.h" #include "HttpMetaCache.h" +#include "logic/tasks/ProgressProvider.h" class DownloadJob; typedef QSharedPointer<DownloadJob> DownloadJobPtr; @@ -12,12 +13,12 @@ typedef QSharedPointer<DownloadJob> DownloadJobPtr; /** * A single file for the downloader/cache to process. */ -class DownloadJob : public QObject +class DownloadJob : public ProgressProvider { Q_OBJECT public: explicit DownloadJob(QString job_name) - :QObject(), m_job_name(job_name){}; + :ProgressProvider(), m_job_name(job_name){}; ByteArrayDownloadPtr add(QUrl url); FileDownloadPtr add(QUrl url, QString rel_target_path); @@ -37,6 +38,19 @@ public: { return downloads.size(); } + virtual void getProgress(qint64& current, qint64& total) + { + current = current_progress; + total = total_progress; + }; + virtual QString getStatus() const + { + return m_job_name; + }; + virtual bool isRunning() const + { + return m_running; + }; signals: void started(); void progress(qint64 current, qint64 total); @@ -56,5 +70,6 @@ private: qint64 total_progress = 0; int num_succeeded = 0; int num_failed = 0; + bool m_running = false; }; |