Atlas Game Manager
A game manager for f95 and dlsite written in c++
Loading...
Searching...
No Matches
AtlasUpdater.hpp
Go to the documentation of this file.
1
2
3#pragma once
4#ifndef ATLASGAMEMANAGER_ATLASUPDATER_HPP
5#define ATLASGAMEMANAGER_ATLASUPDATER_HPP
6
7#include <QNetworkReply>
8#include <QProgressDialog>
9#include <QThread>
10
11class QNetworkReply;
12
14
15#include <filesystem>
16
17namespace atlas
18{
19 //Manage Updates for Atlas
20 class AtlasUpdater final : public QObject
21 {
22 //Q_DISABLE_COPY_MOVE( AtlasUpdater )
23 Q_OBJECT
24
25 //QThread m_thread {};
26 QNetworkAccessManager m_manager {};
27
28 public:
29
31 AtlasUpdater( const AtlasUpdater& ) = delete;
32 AtlasUpdater& operator=( const AtlasUpdater& ) = delete;
34 //AtlasUpdater(QObject* parent, std::shared_ptr<gui_settings> gui_settings);
35 void check_for_updates( bool isManual );
36
37 private:
38
39 std::uint64_t converToEpoch( QString time );
40 std::uint64_t converToShortEpoch( QString time );
41 void handleJsonResponse( QNetworkReply* reply, bool isManual );
42 void handleManifestError( QNetworkReply::NetworkError error, QNetworkReply* reply );
43 void downloadUpdate( QString url );
44 void saveFile( QNetworkReply* reply );
45 int updateMessageBox( QString message, QString windowTitle, bool includeChangelog );
46 void downloadProgress( int ist, int max );
47 std::unique_ptr< UpdateDialog > ud { std::make_unique< UpdateDialog >() };
48 };
49
50 void initUpdateHandler( bool isManual );
52} // namespace atlas
53
54#endif //ATLASGAMEMANAGER_ATLASUPDATER_HPP
~AtlasUpdater()
Definition AtlasUpdater.cpp:60
std::unique_ptr< UpdateDialog > ud
Definition AtlasUpdater.hpp:47
void downloadUpdate(QString url)
Definition AtlasUpdater.cpp:224
std::uint64_t converToEpoch(QString time)
Definition AtlasUpdater.cpp:386
int updateMessageBox(QString message, QString windowTitle, bool includeChangelog)
Definition AtlasUpdater.cpp:417
void check_for_updates(bool isManual)
Definition AtlasUpdater.cpp:65
AtlasUpdater & operator=(const AtlasUpdater &)=delete
void handleJsonResponse(QNetworkReply *reply, bool isManual)
Definition AtlasUpdater.cpp:88
AtlasUpdater()
Definition AtlasUpdater.cpp:53
QNetworkAccessManager m_manager
Definition AtlasUpdater.hpp:26
AtlasUpdater(const AtlasUpdater &)=delete
void handleManifestError(QNetworkReply::NetworkError error, QNetworkReply *reply)
Definition AtlasUpdater.cpp:306
std::uint64_t converToShortEpoch(QString time)
Definition AtlasUpdater.cpp:401
void downloadProgress(int ist, int max)
Definition AtlasUpdater.cpp:435
void saveFile(QNetworkReply *reply)
Definition AtlasUpdater.cpp:246
Definition Column.hpp:15
void shutdownUpdateHandler()
Definition AtlasUpdater.cpp:48
void initUpdateHandler(bool isManual)
Definition AtlasUpdater.cpp:41