summaryrefslogtreecommitdiff
path: root/src/settingsdialogpaths.cpp
diff options
context:
space:
mode:
authorMikaël Capelle <capelle.mikael@gmail.com>2022-05-17 11:47:01 +0200
committerMikaël Capelle <capelle.mikael@gmail.com>2023-07-09 17:20:40 +0200
commitd13f6bb870cdda71257f665367be8ef9fca86255 (patch)
tree52e214718478f1e52856572f5aa1a2ac58537f9f /src/settingsdialogpaths.cpp
parent86bb01ba9eac879d3685c439ac9da0028bc4bc80 (diff)
Apply clang-format.
Diffstat (limited to 'src/settingsdialogpaths.cpp')
-rw-r--r--src/settingsdialogpaths.cpp169
1 files changed, 104 insertions, 65 deletions
diff --git a/src/settingsdialogpaths.cpp b/src/settingsdialogpaths.cpp
index aafa750c..1907b7fa 100644
--- a/src/settingsdialogpaths.cpp
+++ b/src/settingsdialogpaths.cpp
@@ -1,89 +1,121 @@
#include "settingsdialogpaths.h"
-#include "ui_settingsdialog.h"
#include "shared/appconfig.h"
+#include "ui_settingsdialog.h"
#include <iplugingame.h>
PathsSettingsTab::PathsSettingsTab(Settings& s, SettingsDialog& d)
- : SettingsTab(s, d), m_gameDir(settings().game().plugin()->gameDirectory())
+ : SettingsTab(s, d), m_gameDir(settings().game().plugin()->gameDirectory())
{
ui->baseDirEdit->setText(settings().paths().base());
- ui->managedGameDirEdit->setText(
- QDir::toNativeSeparators(m_gameDir.absoluteFilePath(settings().game().plugin()->binaryName())));
+ ui->managedGameDirEdit->setText(QDir::toNativeSeparators(
+ m_gameDir.absoluteFilePath(settings().game().plugin()->binaryName())));
QString basePath = settings().paths().base();
QDir baseDir(basePath);
- for (const auto &dir : {
- std::make_pair(ui->downloadDirEdit, settings().paths().downloads(false)),
- std::make_pair(ui->modDirEdit, settings().paths().mods(false)),
- std::make_pair(ui->cacheDirEdit, settings().paths().cache(false)),
- std::make_pair(ui->profilesDirEdit, settings().paths().profiles(false)),
- std::make_pair(ui->overwriteDirEdit, settings().paths().overwrite(false))
- }) {
+ for (const auto& dir :
+ {std::make_pair(ui->downloadDirEdit, settings().paths().downloads(false)),
+ std::make_pair(ui->modDirEdit, settings().paths().mods(false)),
+ std::make_pair(ui->cacheDirEdit, settings().paths().cache(false)),
+ std::make_pair(ui->profilesDirEdit, settings().paths().profiles(false)),
+ std::make_pair(ui->overwriteDirEdit, settings().paths().overwrite(false))}) {
QString storePath = baseDir.relativeFilePath(dir.second);
- storePath = dir.second;
+ storePath = dir.second;
dir.first->setText(storePath);
}
- QObject::connect(ui->browseBaseDirBtn, &QPushButton::clicked, [&]{ on_browseBaseDirBtn_clicked(); });
- QObject::connect(ui->browseCacheDirBtn, &QPushButton::clicked, [&]{ on_browseCacheDirBtn_clicked(); });
- QObject::connect(ui->browseDownloadDirBtn, &QPushButton::clicked, [&]{ on_browseDownloadDirBtn_clicked(); });
- QObject::connect(ui->browseGameDirBtn, &QPushButton::clicked, [&]{ on_browseGameDirBtn_clicked(); });
- QObject::connect(ui->browseModDirBtn, &QPushButton::clicked, [&]{ on_browseModDirBtn_clicked(); });
- QObject::connect(ui->browseOverwriteDirBtn, &QPushButton::clicked, [&]{ on_browseOverwriteDirBtn_clicked(); });
- QObject::connect(ui->browseProfilesDirBtn, &QPushButton::clicked, [&]{ on_browseProfilesDirBtn_clicked(); });
+ QObject::connect(ui->browseBaseDirBtn, &QPushButton::clicked, [&] {
+ on_browseBaseDirBtn_clicked();
+ });
+ QObject::connect(ui->browseCacheDirBtn, &QPushButton::clicked, [&] {
+ on_browseCacheDirBtn_clicked();
+ });
+ QObject::connect(ui->browseDownloadDirBtn, &QPushButton::clicked, [&] {
+ on_browseDownloadDirBtn_clicked();
+ });
+ QObject::connect(ui->browseGameDirBtn, &QPushButton::clicked, [&] {
+ on_browseGameDirBtn_clicked();
+ });
+ QObject::connect(ui->browseModDirBtn, &QPushButton::clicked, [&] {
+ on_browseModDirBtn_clicked();
+ });
+ QObject::connect(ui->browseOverwriteDirBtn, &QPushButton::clicked, [&] {
+ on_browseOverwriteDirBtn_clicked();
+ });
+ QObject::connect(ui->browseProfilesDirBtn, &QPushButton::clicked, [&] {
+ on_browseProfilesDirBtn_clicked();
+ });
- QObject::connect(ui->baseDirEdit, &QLineEdit::editingFinished, [&]{ on_baseDirEdit_editingFinished(); });
- QObject::connect(ui->cacheDirEdit, &QLineEdit::editingFinished, [&]{ on_cacheDirEdit_editingFinished(); });
- QObject::connect(ui->downloadDirEdit, &QLineEdit::editingFinished, [&]{ on_downloadDirEdit_editingFinished(); });
- QObject::connect(ui->modDirEdit, &QLineEdit::editingFinished, [&]{ on_modDirEdit_editingFinished(); });
- QObject::connect(ui->overwriteDirEdit, &QLineEdit::editingFinished, [&]{ on_overwriteDirEdit_editingFinished(); });
- QObject::connect(ui->profilesDirEdit, &QLineEdit::editingFinished, [&]{ on_profilesDirEdit_editingFinished(); });
+ QObject::connect(ui->baseDirEdit, &QLineEdit::editingFinished, [&] {
+ on_baseDirEdit_editingFinished();
+ });
+ QObject::connect(ui->cacheDirEdit, &QLineEdit::editingFinished, [&] {
+ on_cacheDirEdit_editingFinished();
+ });
+ QObject::connect(ui->downloadDirEdit, &QLineEdit::editingFinished, [&] {
+ on_downloadDirEdit_editingFinished();
+ });
+ QObject::connect(ui->modDirEdit, &QLineEdit::editingFinished, [&] {
+ on_modDirEdit_editingFinished();
+ });
+ QObject::connect(ui->overwriteDirEdit, &QLineEdit::editingFinished, [&] {
+ on_overwriteDirEdit_editingFinished();
+ });
+ QObject::connect(ui->profilesDirEdit, &QLineEdit::editingFinished, [&] {
+ on_profilesDirEdit_editingFinished();
+ });
}
void PathsSettingsTab::update()
{
- using Setter = void (PathSettings::*)(const QString&);
+ using Setter = void (PathSettings::*)(const QString&);
using Directory = std::tuple<QString, Setter, std::wstring>;
QString basePath = settings().paths().base();
- for (const Directory &dir :{
- Directory{ui->downloadDirEdit->text(), &PathSettings::setDownloads, AppConfig::downloadPath()},
- Directory{ui->cacheDirEdit->text(), &PathSettings::setCache, AppConfig::cachePath()},
- Directory{ui->modDirEdit->text(), &PathSettings::setMods, AppConfig::modsPath()},
- Directory{ui->overwriteDirEdit->text(), &PathSettings::setOverwrite, AppConfig::overwritePath()},
- Directory{ui->profilesDirEdit->text(), &PathSettings::setProfiles, AppConfig::profilesPath()}
- }) {
+ for (const Directory& dir :
+ {Directory{ui->downloadDirEdit->text(), &PathSettings::setDownloads,
+ AppConfig::downloadPath()},
+ Directory{ui->cacheDirEdit->text(), &PathSettings::setCache,
+ AppConfig::cachePath()},
+ Directory{ui->modDirEdit->text(), &PathSettings::setMods,
+ AppConfig::modsPath()},
+ Directory{ui->overwriteDirEdit->text(), &PathSettings::setOverwrite,
+ AppConfig::overwritePath()},
+ Directory{ui->profilesDirEdit->text(), &PathSettings::setProfiles,
+ AppConfig::profilesPath()}}) {
QString path;
Setter setter;
std::wstring defaultName;
std::tie(path, setter, defaultName) = dir;
QString realPath = path;
- realPath = PathSettings::resolve(realPath, ui->baseDirEdit->text());
+ realPath = PathSettings::resolve(realPath, ui->baseDirEdit->text());
if (!QDir(realPath).exists()) {
if (!QDir().mkpath(realPath)) {
- QMessageBox::warning(parentWidget(), QObject::tr("Error"),
- QObject::tr("Failed to create \"%1\", you may not have the "
- "necessary permissions. Path remains unchanged.")
- .arg(realPath));
+ QMessageBox::warning(
+ parentWidget(), QObject::tr("Error"),
+ QObject::tr("Failed to create \"%1\", you may not have the "
+ "necessary permissions. Path remains unchanged.")
+ .arg(realPath));
continue;
}
}
- if (QFileInfo(realPath) != QFileInfo(basePath + "/" + QString::fromStdWString(defaultName))) {
+ if (QFileInfo(realPath) !=
+ QFileInfo(basePath + "/" + QString::fromStdWString(defaultName))) {
(settings().paths().*setter)(path);
} else {
(settings().paths().*setter)("");
}
}
- if (QFileInfo(ui->baseDirEdit->text()) != QFileInfo(qApp->property("dataPath").toString())) {
+ if (QFileInfo(ui->baseDirEdit->text()) !=
+ QFileInfo(qApp->property("dataPath").toString())) {
settings().paths().setBase(ui->baseDirEdit->text());
} else {
settings().paths().setBase("");
@@ -97,7 +129,7 @@ void PathsSettingsTab::update()
void PathsSettingsTab::on_browseBaseDirBtn_clicked()
{
QString temp = QFileDialog::getExistingDirectory(
- &dialog(), QObject::tr("Select base directory"), ui->baseDirEdit->text());
+ &dialog(), QObject::tr("Select base directory"), ui->baseDirEdit->text());
if (!temp.isEmpty()) {
ui->baseDirEdit->setText(temp);
}
@@ -106,9 +138,10 @@ void PathsSettingsTab::on_browseBaseDirBtn_clicked()
void PathsSettingsTab::on_browseDownloadDirBtn_clicked()
{
QString searchPath = ui->downloadDirEdit->text();
- searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
+ searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
- QString temp = QFileDialog::getExistingDirectory(&dialog(), QObject::tr("Select download directory"), searchPath);
+ QString temp = QFileDialog::getExistingDirectory(
+ &dialog(), QObject::tr("Select download directory"), searchPath);
if (!temp.isEmpty()) {
ui->downloadDirEdit->setText(temp);
}
@@ -117,9 +150,10 @@ void PathsSettingsTab::on_browseDownloadDirBtn_clicked()
void PathsSettingsTab::on_browseModDirBtn_clicked()
{
QString searchPath = ui->modDirEdit->text();
- searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
+ searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
- QString temp = QFileDialog::getExistingDirectory(&dialog(), QObject::tr("Select mod directory"), searchPath);
+ QString temp = QFileDialog::getExistingDirectory(
+ &dialog(), QObject::tr("Select mod directory"), searchPath);
if (!temp.isEmpty()) {
ui->modDirEdit->setText(temp);
}
@@ -128,9 +162,10 @@ void PathsSettingsTab::on_browseModDirBtn_clicked()
void PathsSettingsTab::on_browseCacheDirBtn_clicked()
{
QString searchPath = ui->cacheDirEdit->text();
- searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
+ searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
- QString temp = QFileDialog::getExistingDirectory(&dialog(), QObject::tr("Select cache directory"), searchPath);
+ QString temp = QFileDialog::getExistingDirectory(
+ &dialog(), QObject::tr("Select cache directory"), searchPath);
if (!temp.isEmpty()) {
ui->cacheDirEdit->setText(temp);
}
@@ -139,9 +174,10 @@ void PathsSettingsTab::on_browseCacheDirBtn_clicked()
void PathsSettingsTab::on_browseProfilesDirBtn_clicked()
{
QString searchPath = ui->profilesDirEdit->text();
- searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
+ searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
- QString temp = QFileDialog::getExistingDirectory(&dialog(), QObject::tr("Select profiles directory"), searchPath);
+ QString temp = QFileDialog::getExistingDirectory(
+ &dialog(), QObject::tr("Select profiles directory"), searchPath);
if (!temp.isEmpty()) {
ui->profilesDirEdit->setText(temp);
}
@@ -150,9 +186,10 @@ void PathsSettingsTab::on_browseProfilesDirBtn_clicked()
void PathsSettingsTab::on_browseOverwriteDirBtn_clicked()
{
QString searchPath = ui->overwriteDirEdit->text();
- searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
+ searchPath = PathSettings::resolve(searchPath, ui->baseDirEdit->text());
- QString temp = QFileDialog::getExistingDirectory(&dialog(), QObject::tr("Select overwrite directory"), searchPath);
+ QString temp = QFileDialog::getExistingDirectory(
+ &dialog(), QObject::tr("Select overwrite directory"), searchPath);
if (!temp.isEmpty()) {
ui->overwriteDirEdit->setText(temp);
}
@@ -162,7 +199,9 @@ void PathsSettingsTab::on_browseGameDirBtn_clicked()
{
QFileInfo oldGameExe(ui->managedGameDirEdit->text());
- QString temp = QFileDialog::getOpenFileName(&dialog(), QObject::tr("Select game executable"), oldGameExe.absolutePath(), oldGameExe.fileName());
+ QString temp =
+ QFileDialog::getOpenFileName(&dialog(), QObject::tr("Select game executable"),
+ oldGameExe.absolutePath(), oldGameExe.fileName());
if (temp.isEmpty()) {
return;
@@ -177,23 +216,23 @@ void PathsSettingsTab::on_browseGameDirBtn_clicked()
//
QFileInfo newExe(temp);
const auto binaryPath = settings().game().plugin()->binaryName();
- QDir folder = newExe.absoluteDir();
- while (folder.exists() && !folder.isRoot()
- && QFileInfo(folder.filePath(binaryPath)) != newExe) {
+ QDir folder = newExe.absoluteDir();
+ while (folder.exists() && !folder.isRoot() &&
+ QFileInfo(folder.filePath(binaryPath)) != newExe) {
folder.cdUp();
}
if (folder.exists(binaryPath)) {
m_gameDir = folder;
- ui->managedGameDirEdit->setText(
- QDir::toNativeSeparators(m_gameDir.absoluteFilePath(settings().game().plugin()->binaryName())));
- }
- else {
- QMessageBox::warning(parentWidget(), QObject::tr("Error"),
- QObject::tr("The given path was not recognized as a valid game installation. "
- "The current game plugin requires the executable to be in a \"%1\" subfolder of the game directory.")
- .arg(QFileInfo(binaryPath).path()));
-
+ ui->managedGameDirEdit->setText(QDir::toNativeSeparators(
+ m_gameDir.absoluteFilePath(settings().game().plugin()->binaryName())));
+ } else {
+ QMessageBox::warning(
+ parentWidget(), QObject::tr("Error"),
+ QObject::tr("The given path was not recognized as a valid game installation. "
+ "The current game plugin requires the executable to be in a \"%1\" "
+ "subfolder of the game directory.")
+ .arg(QFileInfo(binaryPath).path()));
}
}
@@ -227,7 +266,7 @@ void PathsSettingsTab::on_overwriteDirEdit_editingFinished()
normalizePath(ui->overwriteDirEdit);
}
-void PathsSettingsTab::normalizePath(QLineEdit *lineEdit)
+void PathsSettingsTab::normalizePath(QLineEdit* lineEdit)
{
QString text = lineEdit->text();
while (text.endsWith('/') || text.endsWith('\\')) {