mirror of
https://github.com/redstrate/Astra.git
synced 2025-04-20 11:47:46 +00:00
52 lines
1.1 KiB
C
52 lines
1.1 KiB
C
![]() |
#pragma once
|
||
|
|
||
|
#include <QMainWindow>
|
||
|
#include <QNetworkAccessManager>
|
||
|
#include <QFuture>
|
||
|
#include <QSettings>
|
||
|
|
||
|
class SapphireLauncher;
|
||
|
class SquareLauncher;
|
||
|
class SquareBoot;
|
||
|
|
||
|
struct LoginInformation {
|
||
|
QString username, password, oneTimePassword;
|
||
|
};
|
||
|
|
||
|
struct LoginAuth {
|
||
|
QString SID;
|
||
|
int region = 2; // america?
|
||
|
int maxExpansion = 1;
|
||
|
|
||
|
// if empty, dont set on the client
|
||
|
QString lobbyhost, frontierHost;
|
||
|
};
|
||
|
|
||
|
class LauncherWindow : public QMainWindow {
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
explicit LauncherWindow(QWidget* parent = nullptr);
|
||
|
|
||
|
~LauncherWindow() override;
|
||
|
|
||
|
QNetworkAccessManager* mgr;
|
||
|
|
||
|
int language = 1; // 1 is english, thats all i know
|
||
|
QString gamePath;
|
||
|
QString bootVersion, gameVersion;
|
||
|
|
||
|
void launch(const LoginAuth auth);
|
||
|
void buildRequest(QNetworkRequest& request);
|
||
|
void setSSL(QNetworkRequest& request);
|
||
|
QString readVersion(QString path);
|
||
|
|
||
|
private:
|
||
|
void readInitialInformation();
|
||
|
|
||
|
SapphireLauncher* sapphireLauncher;
|
||
|
SquareBoot* squareBoot;
|
||
|
SquareLauncher* squareLauncher;
|
||
|
|
||
|
QSettings settings;
|
||
|
};
|