Chatterino
Updates.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <QString>
4 #include <pajlada/signals/signal.hpp>
5 
6 namespace chatterino {
7 
8 class Updates
9 {
10  Updates();
11 
12 public:
13  enum Status {
22  };
23 
24  // fourtf: don't add this class to the application class
25  static Updates &instance();
26 
27  void checkForUpdates();
28  const QString &getCurrentVersion() const;
29  const QString &getOnlineVersion() const;
30  void installUpdates();
31  Status getStatus() const;
32 
33  bool shouldShowUpdateButton() const;
34  bool isError() const;
35  bool isDowngrade() const;
36 
37  pajlada::Signals::Signal<Status> statusUpdated;
38 
39 private:
40  QString currentVersion_;
41  QString onlineVersion_;
42  Status status_ = None;
43  bool isDowngrade_{};
44 
45  QString updateExe_;
46  QString updatePortable_;
47  QString updateGuideLink_;
48 
49  void setStatus_(Status status);
50 };
51 
52 } // namespace chatterino
bool isDowngrade() const
Definition: Updates.cpp:363
bool isError() const
Definition: Updates.cpp:349
Definition: Updates.hpp:17
Definition: Updates.hpp:21
Definition: Updates.hpp:8
Status getStatus() const
Definition: Updates.cpp:328
static Updates & instance()
Definition: Updates.cpp:65
pajlada::Signals::Signal< Status > statusUpdated
Definition: Updates.hpp:37
Definition: Updates.hpp:16
const QString & getOnlineVersion() const
Definition: Updates.cpp:78
void installUpdates()
Definition: Updates.cpp:83
Definition: Application.cpp:48
const QString & getCurrentVersion() const
Definition: Updates.cpp:73
Definition: Updates.hpp:15
bool shouldShowUpdateButton() const
Definition: Updates.cpp:333
Definition: Updates.hpp:14
Status
Definition: Updates.hpp:13
Definition: Updates.hpp:18
void checkForUpdates()
Definition: Updates.cpp:233
Definition: Updates.hpp:19
Definition: Updates.hpp:20