summaryrefslogtreecommitdiff
path: root/src/editexecutablesdialog.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/editexecutablesdialog.cpp
parent86bb01ba9eac879d3685c439ac9da0028bc4bc80 (diff)
Apply clang-format.
Diffstat (limited to 'src/editexecutablesdialog.cpp')
-rw-r--r--src/editexecutablesdialog.cpp166
1 files changed, 84 insertions, 82 deletions
diff --git a/src/editexecutablesdialog.cpp b/src/editexecutablesdialog.cpp
index ea7d20de..8a01b9f0 100644
--- a/src/editexecutablesdialog.cpp
+++ b/src/editexecutablesdialog.cpp
@@ -18,17 +18,17 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
*/
#include "editexecutablesdialog.h"
-#include "ui_editexecutablesdialog.h"
#include "filedialogmemory.h"
-#include "modlist.h"
#include "forcedloaddialog.h"
+#include "modlist.h"
#include "organizercore.h"
#include "spawn.h"
+#include "ui_editexecutablesdialog.h"
#include <QMessageBox>
#include <Shellapi.h>
-#include <utility.h>
#include <algorithm>
+#include <utility.h>
using namespace MOBase;
using namespace MOShared;
@@ -36,32 +36,25 @@ using namespace MOShared;
class IgnoreChanges
{
public:
- IgnoreChanges(EditExecutablesDialog* d)
- : m_dialog(d)
+ IgnoreChanges(EditExecutablesDialog* d) : m_dialog(d)
{
m_dialog->m_settingUI = true;
}
- ~IgnoreChanges()
- {
- m_dialog->m_settingUI = false;
- }
+ ~IgnoreChanges() { m_dialog->m_settingUI = false; }
- IgnoreChanges(const IgnoreChanges&) = delete;
+ IgnoreChanges(const IgnoreChanges&) = delete;
IgnoreChanges& operator=(const IgnoreChanges&) = delete;
private:
EditExecutablesDialog* m_dialog;
};
-
-EditExecutablesDialog::EditExecutablesDialog(OrganizerCore& oc, int sel, QWidget* parent)
- : TutorableDialog("EditExecutables", parent)
- , ui(new Ui::EditExecutablesDialog)
- , m_organizerCore(oc)
- , m_originalExecutables(*oc.executablesList())
- , m_executablesList(*oc.executablesList())
- , m_settingUI(false)
+EditExecutablesDialog::EditExecutablesDialog(OrganizerCore& oc, int sel,
+ QWidget* parent)
+ : TutorableDialog("EditExecutables", parent), ui(new Ui::EditExecutablesDialog),
+ m_organizerCore(oc), m_originalExecutables(*oc.executablesList()),
+ m_executablesList(*oc.executablesList()), m_settingUI(false)
{
ui->setupUi(this);
ui->splitter->setSizes({200, 1});
@@ -71,15 +64,12 @@ EditExecutablesDialog::EditExecutablesDialog(OrganizerCore& oc, int sel, QWidget
loadCustomOverwrites();
loadForcedLibraries();
-
QStringList modNames;
for (auto&& m : m_organizerCore.modList()->allMods()) {
auto mod = ModInfo::getByName(m);
- if (!mod->hasAnyOfTheseFlags({ ModInfo::FLAG_FOREIGN,
- ModInfo::FLAG_BACKUP,
- ModInfo::FLAG_OVERWRITE,
- ModInfo::FLAG_SEPARATOR })) {
+ if (!mod->hasAnyOfTheseFlags({ModInfo::FLAG_FOREIGN, ModInfo::FLAG_BACKUP,
+ ModInfo::FLAG_OVERWRITE, ModInfo::FLAG_SEPARATOR})) {
ui->mods->addItem(m);
modNames.push_back(m);
}
@@ -90,7 +80,6 @@ EditExecutablesDialog::EditExecutablesDialog(OrganizerCore& oc, int sel, QWidget
c->setCompletionMode(QCompleter::UnfilteredPopupCompletion);
ui->mods->setCompleter(c);
-
fillList();
setDirty(false);
@@ -99,20 +88,42 @@ EditExecutablesDialog::EditExecutablesDialog(OrganizerCore& oc, int sel, QWidget
}
auto* m = new QMenu;
- m->addAction(tr("Add from file..."), [&]{ addFromFile(); });
- m->addAction(tr("Add empty"), [&]{ addEmpty(); });
- m->addAction(tr("Clone selected"), [&]{ clone(); });
+ m->addAction(tr("Add from file..."), [&] {
+ addFromFile();
+ });
+ m->addAction(tr("Add empty"), [&] {
+ addEmpty();
+ });
+ m->addAction(tr("Clone selected"), [&] {
+ clone();
+ });
ui->add->setMenu(m);
// some widgets need to do more than just save() and have their own handler
- connect(ui->binary, &QLineEdit::textChanged, [&]{ save(); });
- connect(ui->workingDirectory, &QLineEdit::textChanged, [&]{ save(); });
- connect(ui->arguments, &QLineEdit::textChanged, [&]{ save(); });
- connect(ui->steamAppID, &QLineEdit::textChanged, [&]{ save(); });
- connect(ui->mods, &QComboBox::currentTextChanged, [&]{ save(); });
- connect(ui->useApplicationIcon, &QCheckBox::toggled, [&]{ save(); });
- connect(ui->hide, &QCheckBox::toggled, [&]{ save(); });
- connect(ui->list->model(), &QAbstractItemModel::rowsMoved, [&]{ saveOrder(); });
+ connect(ui->binary, &QLineEdit::textChanged, [&] {
+ save();
+ });
+ connect(ui->workingDirectory, &QLineEdit::textChanged, [&] {
+ save();
+ });
+ connect(ui->arguments, &QLineEdit::textChanged, [&] {
+ save();
+ });
+ connect(ui->steamAppID, &QLineEdit::textChanged, [&] {
+ save();
+ });
+ connect(ui->mods, &QComboBox::currentTextChanged, [&] {
+ save();
+ });
+ connect(ui->useApplicationIcon, &QCheckBox::toggled, [&] {
+ save();
+ });
+ connect(ui->hide, &QCheckBox::toggled, [&] {
+ save();
+ });
+ connect(ui->list->model(), &QAbstractItemModel::rowsMoved, [&] {
+ saveOrder();
+ });
}
EditExecutablesDialog::~EditExecutablesDialog() = default;
@@ -141,10 +152,8 @@ void EditExecutablesDialog::loadForcedLibraries()
const auto* p = m_organizerCore.currentProfile();
for (const auto& e : m_executablesList) {
- m_forcedLibraries.set(
- e.title(),
- p->forcedLibrariesEnabled(e.title()),
- p->determineForcedLibraries(e.title()));
+ m_forcedLibraries.set(e.title(), p->forcedLibrariesEnabled(e.title()),
+ p->determineForcedLibraries(e.title()));
}
}
@@ -199,16 +208,15 @@ bool EditExecutablesDialog::checkOutputMods(const ExecutablesList& exes)
if (modName && modName->enabled) {
if (modName->value.isEmpty()) {
- QMessageBox::critical(
- this, tr("Empty output mod"),
- tr("The output mod for %2 is empty.").arg(e.title()));
+ QMessageBox::critical(this, tr("Empty output mod"),
+ tr("The output mod for %2 is empty.").arg(e.title()));
return false;
} else if (ModInfo::getIndex(modName->value) == UINT_MAX) {
- QMessageBox::critical(
- this, tr("Output mod not found"),
- tr("The output mod '%1' for %2 does not exist.")
- .arg(modName->value).arg(e.title()));
+ QMessageBox::critical(this, tr("Output mod not found"),
+ tr("The output mod '%1' for %2 does not exist.")
+ .arg(modName->value)
+ .arg(e.title()));
return false;
}
@@ -236,13 +244,13 @@ bool EditExecutablesDialog::commitChanges()
// set the new custom overwrites and forced libraries
for (const auto& e : newExecutables) {
- if (auto modName=m_customOverwrites.find(e.title())) {
+ if (auto modName = m_customOverwrites.find(e.title())) {
if (modName && modName->enabled) {
profile->storeSetting("custom_overwrites", e.title(), modName->value);
}
}
- if (auto libraryList=m_forcedLibraries.find(e.title())) {
+ if (auto libraryList = m_forcedLibraries.find(e.title())) {
if (libraryList && !libraryList->value.empty()) {
profile->setForcedLibrariesEnabled(e.title(), libraryList->enabled);
profile->storeForcedLibraries(e.title(), libraryList->value);
@@ -260,7 +268,7 @@ bool EditExecutablesDialog::commitChanges()
void EditExecutablesDialog::setDirty(bool b)
{
- if (auto* button=ui->buttons->button(QDialogButtonBox::Apply)) {
+ if (auto* button = ui->buttons->button(QDialogButtonBox::Apply)) {
button->setEnabled(b);
}
}
@@ -268,8 +276,8 @@ void EditExecutablesDialog::setDirty(bool b)
void EditExecutablesDialog::selectIndex(int i)
{
if (i >= 0 && i < ui->list->count()) {
- ui->list->selectionModel()->setCurrentIndex(
- ui->list->model()->index(i, 0), QItemSelectionModel::ClearAndSelect);
+ ui->list->selectionModel()->setCurrentIndex(ui->list->model()->index(i, 0),
+ QItemSelectionModel::ClearAndSelect);
}
}
@@ -292,7 +300,7 @@ Executable* EditExecutablesDialog::selectedExe()
}
const auto& title = item->text();
- auto itor = m_executablesList.find(title);
+ auto itor = m_executablesList.find(title);
if (itor == m_executablesList.end()) {
return nullptr;
@@ -305,7 +313,7 @@ void EditExecutablesDialog::fillList()
{
ui->list->clear();
- for(const auto& exe : m_executablesList) {
+ for (const auto& exe : m_executablesList) {
ui->list->addItem(createListItem(exe));
}
@@ -322,8 +330,7 @@ QListWidgetItem* EditExecutablesDialog::createListItem(const Executable& exe)
return new QListWidgetItem(exe.title());
}
-void EditExecutablesDialog::updateUI(
- const QListWidgetItem* item, const Executable* e)
+void EditExecutablesDialog::updateUI(const QListWidgetItem* item, const Executable* e)
{
// the ui is currently being set, ignore changes
IgnoreChanges c(this);
@@ -337,8 +344,7 @@ void EditExecutablesDialog::updateUI(
setButtons(item, e);
}
-void EditExecutablesDialog::setButtons(
- const QListWidgetItem* item, const Executable* e)
+void EditExecutablesDialog::setButtons(const QListWidgetItem* item, const Executable* e)
{
// add and remove are always enabled
@@ -405,10 +411,9 @@ void EditExecutablesDialog::setEdits(const Executable& e)
modIndex = ui->mods->findText(modName->value);
if (modIndex == -1) {
- log::warn(
- "executable '{}' uses mod '{}' as a custom overwrite, but that mod "
- "doesn't exist",
- e.title(), modName->value);
+ log::warn("executable '{}' uses mod '{}' as a custom overwrite, but that mod "
+ "doesn't exist",
+ e.title(), modName->value);
}
}
@@ -420,7 +425,7 @@ void EditExecutablesDialog::setEdits(const Executable& e)
}
{
- const auto libraryList = m_forcedLibraries.find(e.title());
+ const auto libraryList = m_forcedLibraries.find(e.title());
const bool hasForcedLibraries = (libraryList && libraryList->enabled);
ui->forceLoadLibraries->setChecked(hasForcedLibraries);
@@ -557,10 +562,10 @@ void EditExecutablesDialog::on_reset_clicked()
{
const auto title = tr("Reset plugin executables");
- const auto text = tr(
- "This will restore all the executables provided by the game plugin. If "
- "there are existing executables with the same names, they will be "
- "automatically renamed and left unchanged.");
+ const auto text =
+ tr("This will restore all the executables provided by the game plugin. If "
+ "there are existing executables with the same names, they will be "
+ "automatically renamed and left unchanged.");
const auto buttons = QMessageBox::Ok | QMessageBox::Cancel;
@@ -596,7 +601,6 @@ void EditExecutablesDialog::on_remove_clicked()
const int currentRow = ui->list->row(item);
delete item;
-
m_customOverwrites.remove(exe->title());
m_forcedLibraries.remove(exe->title());
@@ -604,7 +608,6 @@ void EditExecutablesDialog::on_remove_clicked()
// exe pointer
m_executablesList.remove(exe->title());
-
// reselecting the same row as before, or the last one
if (currentRow >= ui->list->count()) {
// that was the last item, select the new list item, if any
@@ -678,7 +681,7 @@ void EditExecutablesDialog::on_title_textChanged(const QString& original)
// once the executable is saved, the list item must be changed to match the
// new name
- if (auto* i=selectedItem()) {
+ if (auto* i = selectedItem()) {
i->setText(s);
}
}
@@ -790,7 +793,7 @@ void EditExecutablesDialog::setBinary(const QFileInfo& binary)
// setting title if some variation of "New Executable"
if (ui->title->text().startsWith(tr("New Executable"), Qt::CaseInsensitive)) {
- const auto prefix = binary.completeBaseName();
+ const auto prefix = binary.completeBaseName();
const auto newTitle = m_executablesList.makeNonConflictingTitle(prefix);
if (newTitle) {
@@ -802,8 +805,8 @@ void EditExecutablesDialog::setBinary(const QFileInfo& binary)
void EditExecutablesDialog::on_browseWorkingDirectory_clicked()
{
QString dirName = FileDialogMemory::getExistingDirectory(
- "editExecutableDirectory", this, tr("Select a directory"),
- ui->workingDirectory->text());
+ "editExecutableDirectory", this, tr("Select a directory"),
+ ui->workingDirectory->text());
if (dirName.isNull()) {
// cancelled
@@ -823,7 +826,7 @@ void EditExecutablesDialog::on_configureLibraries_clicked()
ForcedLoadDialog dialog(m_organizerCore.managedGame(), this);
- if (auto libraryList=m_forcedLibraries.find(e->title())) {
+ if (auto libraryList = m_forcedLibraries.find(e->title())) {
dialog.setValues(libraryList->value);
}
@@ -849,12 +852,10 @@ void EditExecutablesDialog::on_buttons_clicked(QAbstractButton* b)
QFileInfo EditExecutablesDialog::browseBinary(const QString& initial)
{
const QString Filters =
- tr("Executables (*.exe *.bat *.jar)") + ";;" +
- tr("All Files (*.*)");
+ tr("Executables (*.exe *.bat *.jar)") + ";;" + tr("All Files (*.*)");
const auto f = FileDialogMemory::getOpenFileName(
- "editExecutableBinary", this, tr("Select an executable"),
- initial, Filters);
+ "editExecutableBinary", this, tr("Select an executable"), initial, Filters);
if (f.isNull()) {
return {};
@@ -869,10 +870,10 @@ void EditExecutablesDialog::setJarBinary(const QFileInfo& binary)
if (java.isEmpty()) {
QMessageBox::information(
- this, tr("Java required"),
- tr("MO requires Java to run this application. If you already "
- "have it installed, select javaw.exe from that installation as "
- "the binary."));
+ this, tr("Java required"),
+ tr("MO requires Java to run this application. If you already "
+ "have it installed, select javaw.exe from that installation as "
+ "the binary."));
}
{
@@ -881,7 +882,8 @@ void EditExecutablesDialog::setJarBinary(const QFileInfo& binary)
ui->binary->setText(java);
ui->workingDirectory->setText(QDir::toNativeSeparators(binary.absolutePath()));
- ui->arguments->setText("-jar \"" + QDir::toNativeSeparators(binary.absoluteFilePath()) + "\"");
+ ui->arguments->setText("-jar \"" +
+ QDir::toNativeSeparators(binary.absoluteFilePath()) + "\"");
}
save();