Polyphase Game Engine
Loading...
Searching...
No Matches
UpdatesModule.h
Go to the documentation of this file.
1#pragma once
2
3#if EDITOR
4
5#include "../PreferencesModule.h"
6#include <string>
7#include <cstdint>
8
9class UpdatesModule : public PreferencesModule
10{
11public:
12 DECLARE_PREFERENCES_MODULE(UpdatesModule)
13
14 UpdatesModule();
15 virtual ~UpdatesModule();
16
17 virtual const char* GetName() const override { return GetStaticName(); }
18 virtual const char* GetParentPath() const override { return GetStaticParentPath(); }
19 virtual void Render() override;
20 virtual void LoadSettings(const rapidjson::Document& doc) override;
21 virtual void SaveSettings(rapidjson::Document& doc) override;
22
23 bool GetCheckOnStartup() const { return mCheckOnStartup; }
24 int GetCheckIntervalHours() const { return mCheckIntervalHours; }
25 int64_t GetLastCheckTime() const { return mLastCheckTime; }
26 const std::string& GetSkippedVersion() const { return mSkippedVersion; }
27
28 void SetCheckOnStartup(bool enabled);
29 void SetCheckIntervalHours(int hours);
30 void SetLastCheckTime(int64_t time);
31 void SetSkippedVersion(const std::string& version);
32 void ClearSkippedVersion();
33
34 static UpdatesModule* Get();
35
36private:
37 bool mCheckOnStartup = true;
38 int mCheckIntervalHours = 24;
39 int64_t mLastCheckTime = 0;
40 std::string mSkippedVersion;
41
42 static UpdatesModule* sInstance;
43};
44
45#endif
Definition JsonHelpers.h:15