From b0982148609a8a6f0d73d801ec9fcd1a22930f98 Mon Sep 17 00:00:00 2001 From: Tom Tanner Date: Wed, 5 Aug 2015 22:40:49 +0100 Subject: More work on the executables list Apart from an off by one in the popup list which had crept back in, reworked the underlying code even more, which now seems to get the list behaving in a predictable way. --- src/organizercore.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'src/organizercore.cpp') diff --git a/src/organizercore.cpp b/src/organizercore.cpp index 1a81d33b..a4746ddd 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -229,7 +229,7 @@ QSettings::Status OrganizerCore::storeSettings(const QString &fileName) settings.setValue("binary", item.m_BinaryInfo.absoluteFilePath()); settings.setValue("arguments", item.m_Arguments); settings.setValue("workingDirectory", item.m_WorkingDirectory); - settings.setValue("closeOnStart", item.m_CloseMO == ExecutableInfo::CloseMOStyle::DEFAULT_CLOSE); + settings.setValue("closeOnStart", item.closeOnExecution()); settings.setValue("steamAppID", item.m_SteamAppID); } } @@ -327,22 +327,22 @@ void OrganizerCore::updateExecutablesList(QSettings &settings) int numCustomExecutables = settings.beginReadArray("customExecutables"); for (int i = 0; i < numCustomExecutables; ++i) { settings.setArrayIndex(i); - ExecutableInfo::CloseMOStyle closeMO = - settings.value("closeOnStart").toBool() ? ExecutableInfo::CloseMOStyle::DEFAULT_CLOSE - : ExecutableInfo::CloseMOStyle::DEFAULT_STAY; - Executable::Flags flags; - if (settings.value("custom", true).toBool()) flags |= Executable::CustomExecutable; - if (settings.value("toolbar", false).toBool()) flags |= Executable::ShowInToolbar; - if (settings.value("ownicon", false).toBool()) flags |= Executable::UseApplicationIcon; + Executable::OtherFlags other; + if (settings.value("custom", true).toBool()) other |= Executable::CustomExecutable; + if (settings.value("toolbar", false).toBool()) other |= Executable::ShowInToolbar; + + Executable::SettableFlags settable; + if (settings.value("closeOnStart", false).toBool()) settable |= Executable::CloseOnExecution; + if (settings.value("ownicon", false).toBool()) settable |= Executable::UseApplicationIcon; m_ExecutablesList.addExecutable(settings.value("title").toString(), settings.value("binary").toString(), settings.value("arguments").toString(), settings.value("workingDirectory", "").toString(), - closeMO, settings.value("steamAppID", "").toString(), - flags); + settable, + other); } settings.endArray(); -- cgit v1.3.1