From 8173cc99e81e3d46395158f4eb139f824b129a35 Mon Sep 17 00:00:00 2001 From: Martchus Date: Wed, 10 Oct 2018 21:00:13 +0200 Subject: [PATCH] Move ChecklistModel (de)serialization to qtutilities --- plasmoid/lib/settingsdialog.cpp | 21 ++------------------- plasmoid/lib/settingsdialog.h | 3 --- plasmoid/lib/syncthingapplet.cpp | 2 +- 3 files changed, 3 insertions(+), 23 deletions(-) diff --git a/plasmoid/lib/settingsdialog.cpp b/plasmoid/lib/settingsdialog.cpp index 6532c72..2a4e9b5 100644 --- a/plasmoid/lib/settingsdialog.cpp +++ b/plasmoid/lib/settingsdialog.cpp @@ -87,29 +87,12 @@ AppearanceOptionPage::~AppearanceOptionPage() { } -void AppearanceOptionPage::restoreSelectedStates(SyncthingStatusSelectionModel &statusSelectionModel, const KConfigGroup &config, const char *key) -{ - const auto states = config.readEntry(key, QVariantList()); - int row = 0; - for (auto &item : statusSelectionModel.items()) { - statusSelectionModel.setChecked(row++, states.contains(item.id())); - } -} - bool AppearanceOptionPage::apply() { KConfigGroup config = m_applet->config(); config.writeEntry("size", QSize(ui()->widthSpinBox->value(), ui()->heightSpinBox->value())); config.writeEntry("brightColors", ui()->brightTextColorsCheckBox->isChecked()); - - QVariantList passiveStates; - passiveStates.reserve(m_passiveStatusSelection.items().size()); - for (auto &item : m_passiveStatusSelection.items()) { - if (item.isChecked()) { - passiveStates << item.id(); - } - } - config.writeEntry("passiveStates", passiveStates); + config.writeEntry("passiveStates", m_passiveStatusSelection.toVariantList()); return true; } @@ -121,7 +104,7 @@ void AppearanceOptionPage::reset() ui()->widthSpinBox->setValue(size.width()); ui()->heightSpinBox->setValue(size.height()); ui()->brightTextColorsCheckBox->setChecked(config.readEntry<>("brightColors", false)); - restoreSelectedStates(m_passiveStatusSelection, config, "passiveStates"); + m_passiveStatusSelection.applyVariantList(config.readEntry("passiveStates", QVariantList())); } QWidget *AppearanceOptionPage::setupWidget() diff --git a/plasmoid/lib/settingsdialog.h b/plasmoid/lib/settingsdialog.h index 4b95a06..4811c8c 100644 --- a/plasmoid/lib/settingsdialog.h +++ b/plasmoid/lib/settingsdialog.h @@ -7,8 +7,6 @@ #include -#include - QT_FORWARD_DECLARE_CLASS(QKeySequenceEdit) namespace QtGui { @@ -36,7 +34,6 @@ BEGIN_DECLARE_UI_FILE_BASED_OPTION_PAGE_CUSTOM_CTOR(AppearanceOptionPage) public: AppearanceOptionPage(SyncthingApplet &applet, QWidget *parentWidget = nullptr); Data::SyncthingStatusSelectionModel *passiveStatusSelection(); -static void restoreSelectedStates(Data::SyncthingStatusSelectionModel &statusSelectionModel, const KConfigGroup &config, const char *key); private: DECLARE_SETUP_WIDGETS diff --git a/plasmoid/lib/syncthingapplet.cpp b/plasmoid/lib/syncthingapplet.cpp index 730f30c..48a6510 100644 --- a/plasmoid/lib/syncthingapplet.cpp +++ b/plasmoid/lib/syncthingapplet.cpp @@ -355,7 +355,7 @@ void SyncthingApplet::handleSettingsChanged() if (m_settingsDlg) { setPassiveStates(m_settingsDlg->appearanceOptionPage()->passiveStatusSelection()->items()); } else { - AppearanceOptionPage::restoreSelectedStates(m_passiveSelectionModel, config, "passiveStates"); + m_passiveSelectionModel.applyVariantList(config.readEntry("passiveStates", QVariantList())); } // apply connection config