From e1c8d00979793dd00a90d312ccdd275cf48dc4ad Mon Sep 17 00:00:00 2001 From: Tom Tanner Date: Sat, 18 Jul 2015 13:34:10 +0100 Subject: Reworked executable lists to not use 3 bools in addExecutable Think it's more readable --- src/organizercore.cpp | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/organizercore.cpp') diff --git a/src/organizercore.cpp b/src/organizercore.cpp index 01141dd7..589a1595 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -222,15 +222,15 @@ QSettings::Status OrganizerCore::storeSettings(const QString &fileName) const Executable &item = *current; settings.setArrayIndex(count++); settings.setValue("title", item.m_Title); - settings.setValue("custom", item.m_Custom); - settings.setValue("toolbar", item.m_Toolbar); - if (item.m_Custom) { + settings.setValue("custom", item.isCustom()); + settings.setValue("toolbar", item.shownOnToolbar()); + settings.setValue("ownicon", item.usesOwnIcon()); + if (item.isCustom()) { 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("steamAppID", item.m_SteamAppID); - settings.setValue("ownicon", item.m_UseOwnIcon); } } settings.endArray(); @@ -330,15 +330,21 @@ void OrganizerCore::updateExecutablesList(QSettings &settings) ExecutableInfo::CloseMOStyle closeMO = settings.value("closeOnStart").toBool() ? ExecutableInfo::CloseMOStyle::DEFAULT_CLOSE : ExecutableInfo::CloseMOStyle::DEFAULT_STAY; + Executable::Type type = + settings.value("custom", true).toBool() ? Executable::Type::Custom : Executable::Type::Game; + Executable::Toolbar toolbar = + settings.value("toolbar", false).toBool() ? Executable::Toolbar::Enabled : Executable::Toolbar::Disabled; + Executable::Icon icon = + settings.value("ownicon", false).toBool() ? Executable::Icon::Application : Executable::Icon::MO; m_ExecutablesList.addExecutable(settings.value("title").toString(), settings.value("binary").toString(), settings.value("arguments").toString(), settings.value("workingDirectory", "").toString(), closeMO, settings.value("steamAppID", "").toString(), - settings.value("custom", true).toBool(), - settings.value("toolbar", false).toBool(), - settings.value("ownicon", false).toBool()); + type, + toolbar, + icon); } settings.endArray(); -- cgit v1.3.1