2021-11-01 13:14:00 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <QWidget>
|
2021-11-09 11:44:27 -05:00
|
|
|
#include <QListWidget>
|
2021-11-09 12:06:30 -05:00
|
|
|
#include <QComboBox>
|
2021-11-09 12:10:52 -05:00
|
|
|
#include <QLineEdit>
|
2021-11-09 12:32:18 -05:00
|
|
|
#include <QCheckBox>
|
2021-11-09 12:46:27 -05:00
|
|
|
#include <QLabel>
|
2021-11-09 13:04:22 -05:00
|
|
|
#include <QPushButton>
|
2021-11-01 13:14:00 -04:00
|
|
|
|
|
|
|
class LauncherWindow;
|
2021-11-09 12:10:52 -05:00
|
|
|
struct ProfileSettings;
|
2021-11-01 13:14:00 -04:00
|
|
|
|
|
|
|
class SettingsWindow : public QWidget {
|
|
|
|
public:
|
|
|
|
SettingsWindow(LauncherWindow& window, QWidget* parent = nullptr);
|
|
|
|
|
2021-11-09 11:44:27 -05:00
|
|
|
public slots:
|
|
|
|
void reloadControls();
|
|
|
|
|
2021-11-01 13:14:00 -04:00
|
|
|
private:
|
2021-11-03 06:31:02 -04:00
|
|
|
void openPath(const QString path);
|
2021-11-09 12:10:52 -05:00
|
|
|
ProfileSettings& getCurrentProfile();
|
2021-11-03 06:31:02 -04:00
|
|
|
|
2021-11-09 12:06:30 -05:00
|
|
|
QListWidget* profileWidget = nullptr;
|
2021-11-09 13:44:37 -05:00
|
|
|
QPushButton* deleteProfileButton = nullptr;
|
2021-11-09 12:10:52 -05:00
|
|
|
|
2021-11-09 13:04:22 -05:00
|
|
|
// game
|
2021-11-09 12:10:52 -05:00
|
|
|
QLineEdit* nameEdit = nullptr;
|
2021-11-09 12:06:30 -05:00
|
|
|
QComboBox* directXCombo = nullptr;
|
2021-11-09 12:46:27 -05:00
|
|
|
QLabel* currentGameDirectory = nullptr;
|
2021-11-09 12:38:18 -05:00
|
|
|
|
2021-11-09 13:04:22 -05:00
|
|
|
// wine
|
|
|
|
QComboBox* wineVersionCombo;
|
|
|
|
QPushButton* selectWineButton;
|
|
|
|
QLabel* winePathLabel;
|
|
|
|
QLabel* winePrefixDirectory;
|
|
|
|
|
2021-11-09 13:08:25 -05:00
|
|
|
QCheckBox* useGamescope, *useEsync, *useGamemode;
|
|
|
|
|
2021-11-09 13:04:22 -05:00
|
|
|
// login
|
2021-11-09 21:13:21 -05:00
|
|
|
QCheckBox* encryptArgumentsBox = nullptr;
|
2021-11-09 12:38:18 -05:00
|
|
|
QComboBox* serverType = nullptr;
|
2021-11-09 12:50:37 -05:00
|
|
|
QLineEdit* lobbyServerURL = nullptr;
|
2021-11-09 12:32:18 -05:00
|
|
|
QCheckBox* rememberUsernameBox = nullptr, *rememberPasswordBox = nullptr;
|
2021-11-09 12:06:30 -05:00
|
|
|
|
|
|
|
bool currentlyReloadingControls = false;
|
2021-11-09 11:44:27 -05:00
|
|
|
|
2021-11-01 13:14:00 -04:00
|
|
|
LauncherWindow& window;
|
|
|
|
};
|