Move ChecklistModel (de)serialization to qtutilities
This commit is contained in:
parent
87a10c5b33
commit
8173cc99e8
|
@ -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<QSize>("size", QSize(ui()->widthSpinBox->value(), ui()->heightSpinBox->value()));
|
||||
config.writeEntry<bool>("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()
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
|
||||
#include <qtutilities/settingsdialog/optionpage.h>
|
||||
|
||||
#include <KConfigGroup>
|
||||
|
||||
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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue