mirror of
https://github.com/MultiMC/MultiMC5.git
synced 2024-11-20 08:10:11 +00:00
458944ad91
It is all develop from now on, we no longer make stable releases. This means no maintenance of version numbers and removal of all the overhead associated with making stable releases. MultiMC 6 might have a better system, but with how infrequent and stable MultiMC releases are getting, there's no need to have a distinction between `stable` and `develop` anymore.
61 lines
1.1 KiB
C++
61 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
|
|
#include "net/NetJob.h"
|
|
#include "net/Download.h"
|
|
|
|
class NotificationChecker : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit NotificationChecker(QObject *parent = 0);
|
|
|
|
void setNotificationsUrl(const QUrl ¬ificationsUrl);
|
|
void setApplicationPlatform(QString platform);
|
|
void setApplicationFullVersion(QString version);
|
|
|
|
struct NotificationEntry
|
|
{
|
|
int id;
|
|
QString message;
|
|
enum
|
|
{
|
|
Critical,
|
|
Warning,
|
|
Information
|
|
} type;
|
|
QString channel;
|
|
QString platform;
|
|
QString from;
|
|
QString to;
|
|
};
|
|
|
|
QList<NotificationEntry> notificationEntries() const;
|
|
|
|
public
|
|
slots:
|
|
void checkForNotifications();
|
|
|
|
private
|
|
slots:
|
|
void downloadSucceeded(int);
|
|
|
|
signals:
|
|
void notificationCheckFinished();
|
|
|
|
private:
|
|
bool entryApplies(const NotificationEntry &entry) const;
|
|
|
|
private:
|
|
QList<NotificationEntry> m_entries;
|
|
QUrl m_notificationsUrl;
|
|
NetJob::Ptr m_checkJob;
|
|
Net::Download::Ptr m_download;
|
|
|
|
QString m_appVersionChannel;
|
|
QString m_appPlatform;
|
|
QString m_appFullVersion;
|
|
};
|