diff options
| author | LostDragonist <lost.dragonist@gmail.com> | 2019-01-11 16:21:43 -0600 |
|---|---|---|
| committer | LostDragonist <lost.dragonist@gmail.com> | 2019-01-11 16:21:43 -0600 |
| commit | 64a242d9220868a5b564c32f75f191efb01ad18e (patch) | |
| tree | 9c616f7135e982d8d9cb0bad00f756a070dfd943 /src | |
| parent | b41c99b742bbb9eee854f177a26da3218f24f2ac (diff) | |
Remove profile-specific executable settings when removing the executable
Diffstat (limited to 'src')
| -rw-r--r-- | src/editexecutablesdialog.cpp | 4 | ||||
| -rw-r--r-- | src/profile.cpp | 7 | ||||
| -rw-r--r-- | src/profile.h | 3 |
3 files changed, 11 insertions, 3 deletions
diff --git a/src/editexecutablesdialog.cpp b/src/editexecutablesdialog.cpp index 4b1cdb5d..bea497ef 100644 --- a/src/editexecutablesdialog.cpp +++ b/src/editexecutablesdialog.cpp @@ -124,7 +124,7 @@ void EditExecutablesDialog::saveExecutable() m_Profile->removeSetting("custom_overwrites", ui->titleEdit->text()); } - m_Profile->saveForcedLibraries(ui->titleEdit->text(), m_ForcedLibraries); + m_Profile->storeForcedLibraries(ui->titleEdit->text(), m_ForcedLibraries); m_Profile->setForcedLibrariesEnabled(ui->titleEdit->text(), ui->forceLoadCheckBox->isChecked()); } @@ -218,6 +218,8 @@ void EditExecutablesDialog::on_removeButton_clicked() { if (QMessageBox::question(this, tr("Confirm"), tr("Really remove \"%1\" from executables?").arg(ui->titleEdit->text()), QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes) { + m_Profile->removeSetting("custom_overwrites", ui->titleEdit->text()); + m_Profile->removeForcedLibraries(ui->titleEdit->text()); m_ExecutablesList.remove(ui->titleEdit->text()); } diff --git a/src/profile.cpp b/src/profile.cpp index 02257de9..afe6fdc7 100644 --- a/src/profile.cpp +++ b/src/profile.cpp @@ -1014,7 +1014,7 @@ QList<ExecutableForcedLoadSetting> Profile::determineForcedLibraries(const QStri return results; } -void Profile::saveForcedLibraries(const QString &executable, const QList<ExecutableForcedLoadSetting> &values) +void Profile::storeForcedLibraries(const QString &executable, const QList<ExecutableForcedLoadSetting> &values) { QList<QVariantMap> rawSettings; for (auto setting : values) { @@ -1026,3 +1026,8 @@ void Profile::saveForcedLibraries(const QString &executable, const QList<Executa } storeSettingsByArray("forced_libraries/" + executable, rawSettings); } + +void Profile::removeForcedLibraries(const QString &executable) +{ + m_Settings->remove("forced_libraries/" + executable); +} diff --git a/src/profile.h b/src/profile.h index d7fb7785..dea933ad 100644 --- a/src/profile.h +++ b/src/profile.h @@ -323,7 +323,8 @@ public: bool forcedLibrariesEnabled(const QString &executable); void setForcedLibrariesEnabled(const QString &executable, bool enabled); QList<MOBase::ExecutableForcedLoadSetting> determineForcedLibraries(const QString &executable); - void saveForcedLibraries(const QString &executable, const QList<MOBase::ExecutableForcedLoadSetting> &values); + void storeForcedLibraries(const QString &executable, const QList<MOBase::ExecutableForcedLoadSetting> &values); + void removeForcedLibraries(const QString &executable); signals: |
