From 07f1ac7a96dcf4c91a24bb1d30af92851ecda78f Mon Sep 17 00:00:00 2001
From: isanae <14251494+isanae@users.noreply.github.com>
Date: Sat, 3 Aug 2019 01:55:21 -0400
Subject: split into GeometrySettings removed most of storeSettings() from
OrganizerCore: QSettings handles saving by itself, no need for that removed
topLevelSplitter from ui, unused since the log widget is in a dock removed
QSettings from MainWindow::readSettings() replaced return values for some of
the new getters in Settings to std::optional
---
src/executableslist.cpp | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
(limited to 'src/executableslist.cpp')
diff --git a/src/executableslist.cpp b/src/executableslist.cpp
index 3f76bb6f..2b3219df 100644
--- a/src/executableslist.cpp
+++ b/src/executableslist.cpp
@@ -21,6 +21,7 @@ along with Mod Organizer. If not, see .
#include "iplugingame.h"
#include "utility.h"
+#include "settings.h"
#include
#include
@@ -64,7 +65,7 @@ bool ExecutablesList::empty() const
return m_Executables.empty();
}
-void ExecutablesList::load(const MOBase::IPluginGame* game, QSettings& settings)
+void ExecutablesList::load(const MOBase::IPluginGame* game, const Settings& s)
{
log::debug("loading executables");
@@ -74,6 +75,8 @@ void ExecutablesList::load(const MOBase::IPluginGame* game, QSettings& settings)
// executables from 2.2.0, see upgradeFromCustom()
bool needsUpgrade = false;
+ auto& settings = const_cast(s.directInterface());
+
int numCustomExecutables = settings.beginReadArray("customExecutables");
for (int i = 0; i < numCustomExecutables; ++i) {
settings.setArrayIndex(i);
@@ -108,8 +111,10 @@ void ExecutablesList::load(const MOBase::IPluginGame* game, QSettings& settings)
dump();
}
-void ExecutablesList::store(QSettings& settings)
+void ExecutablesList::store(Settings& s)
{
+ auto& settings = s.directInterface();
+
settings.remove("customExecutables");
settings.beginWriteArray("customExecutables");
--
cgit v1.3.1