summaryrefslogtreecommitdiffstats
path: root/api/logic/trans/TranslationDownloader.h
diff options
context:
space:
mode:
Diffstat (limited to 'api/logic/trans/TranslationDownloader.h')
-rw-r--r--api/logic/trans/TranslationDownloader.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/api/logic/trans/TranslationDownloader.h b/api/logic/trans/TranslationDownloader.h
new file mode 100644
index 00000000..e7893805
--- /dev/null
+++ b/api/logic/trans/TranslationDownloader.h
@@ -0,0 +1,32 @@
+#pragma once
+
+#include <QList>
+#include <QUrl>
+#include <memory>
+#include <QObject>
+#include <net/NetJob.h>
+#include "multimc_logic_export.h"
+
+class ByteArrayDownload;
+class NetJob;
+
+class MULTIMC_LOGIC_EXPORT TranslationDownloader : public QObject
+{
+ Q_OBJECT
+
+public:
+ TranslationDownloader();
+
+ void downloadTranslations();
+
+private slots:
+ void indexRecieved();
+ void indexFailed(QString reason);
+ void dlFailed(QString reason);
+ void dlGood();
+
+private:
+ std::shared_ptr<ByteArrayDownload> m_index_task;
+ NetJobPtr m_dl_job;
+ NetJobPtr m_index_job;
+};