summaryrefslogtreecommitdiffstats
path: root/logic/GoUpdate.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-12-02 00:55:24 +0100
committerPetr Mrázek <peterix@gmail.com>2013-12-02 00:55:24 +0100
commit6aa9bd0f77dcb5128167fae62e32aa5252fe85c6 (patch)
tree632994a61888929af9289927d338bd19a2b3f32c /logic/GoUpdate.h
parent613699b3626aea750093ab7eaaeccaa28c0e87c6 (diff)
downloadMultiMC-6aa9bd0f77dcb5128167fae62e32aa5252fe85c6.tar
MultiMC-6aa9bd0f77dcb5128167fae62e32aa5252fe85c6.tar.gz
MultiMC-6aa9bd0f77dcb5128167fae62e32aa5252fe85c6.tar.lz
MultiMC-6aa9bd0f77dcb5128167fae62e32aa5252fe85c6.tar.xz
MultiMC-6aa9bd0f77dcb5128167fae62e32aa5252fe85c6.zip
Renew the updater branch
Now with some actual consensus on what the updater will do!
Diffstat (limited to 'logic/GoUpdate.h')
-rw-r--r--logic/GoUpdate.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/logic/GoUpdate.h b/logic/GoUpdate.h
new file mode 100644
index 00000000..756a71cf
--- /dev/null
+++ b/logic/GoUpdate.h
@@ -0,0 +1,43 @@
+#pragma once
+#include "net/NetJob.h"
+
+class GoUpdate : public QObject
+{
+ Q_OBJECT
+
+public:
+ struct version_channel
+ {
+ QString id;
+ QString name;
+ int latestVersion;
+ };
+
+ struct version_summary
+ {
+ int id;
+ QString name;
+ };
+
+signals:
+ void updateAvailable();
+
+private slots:
+ void updateCheckFinished();
+ void updateCheckFailed();
+
+public:
+ GoUpdate();
+ void checkForUpdate();
+private:
+ NetJobPtr index_job;
+ NetJobPtr fromto_job;
+
+ QString repoUrlBase;
+ QString builderName;
+ int currentBuildIndex;
+ int newBuildIndex = -1;
+
+ QList<version_summary> versions;
+ QList<version_channel> channels;
+};