[Settings] Split cache_settings monolith into multiple SettingsManager sub-classes (#7050)

* [Settings] Split cache_settings into multiple files

Took 9 minutes

Took 4 minutes

* [Settings] Fwd declare settings classes in cache_settings

Took 15 minutes

* Fix oracle includes.

Took 8 minutes

* Address comments, fix windows CI

Took 8 minutes

* fix copy constructor visibility

Took 3 minutes

* lint

Took 2 minutes

* Fix native format tests.

Took 5 minutes

* Remove test header guard

Took 4 seconds

* Remove tests invalid in CI environ

Took 24 seconds

* Adjust to rebase.

Took 11 minutes

* Change settings file name.

Took 8 minutes

---------

Co-authored-by: Lukas Brübach <lukas.bruebach@bdosecurity.de>
Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
This commit is contained in:
BruebachL 2026-07-27 11:25:39 +02:00 committed by GitHub
parent cf0b453e75
commit 12f0f59453
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
166 changed files with 5589 additions and 3066 deletions

View file

@ -0,0 +1,104 @@
#include "updates_settings.h"
#include <QDateTime>
UpdatesSettings::UpdatesSettings(const QString &settingPath, QObject *parent)
: SettingsManager(settingPath + "updates.ini", "updates", QString(), parent)
{
}
bool UpdatesSettings::getCheckUpdatesOnStartup() const
{
return getValue("startupUpdateCheck", QString(), QString(), true).toBool();
}
bool UpdatesSettings::getStartupCardUpdateCheckPromptForUpdate()
{
return getValue("startupCardUpdateCheckPromptForUpdate", QString(), QString(), true).toBool();
}
bool UpdatesSettings::getStartupCardUpdateCheckAlwaysUpdate()
{
return getValue("startupCardUpdateCheckAlwaysUpdate", QString(), QString(), false).toBool();
}
int UpdatesSettings::getCardUpdateCheckInterval() const
{
return getValue("cardUpdateCheckInterval", QString(), QString(), 7).toInt();
}
QDate UpdatesSettings::getLastCardUpdateCheck() const
{
return getValue("lastCardUpdateCheck", QString(), QString(), QDateTime::currentDateTime().date()).toDate();
}
bool UpdatesSettings::getCardUpdateCheckRequired() const
{
return getLastCardUpdateCheck().daysTo(QDateTime::currentDateTime().date()) >= getCardUpdateCheckInterval() &&
getLastCardUpdateCheck() != QDateTime::currentDateTime().date();
}
bool UpdatesSettings::getAlwaysEnableNewSets() const
{
return getValue("alwaysEnableNewSets", QString(), QString(), false).toBool();
}
bool UpdatesSettings::getNotifyAboutUpdates() const
{
return getValue("updatenotification", QString(), QString(), true).toBool();
}
bool UpdatesSettings::getNotifyAboutNewVersion() const
{
return getValue("newversionnotification", QString(), QString(), true).toBool();
}
int UpdatesSettings::getUpdateReleaseChannelIndex() const
{
return getValue("updatereleasechannel", QString(), QString(), 0).toInt();
}
void UpdatesSettings::setCheckUpdatesOnStartup(bool value)
{
setValue(value, "startupUpdateCheck");
}
void UpdatesSettings::setStartupCardUpdateCheckPromptForUpdate(bool value)
{
setValue(value, "startupCardUpdateCheckPromptForUpdate");
}
void UpdatesSettings::setStartupCardUpdateCheckAlwaysUpdate(bool value)
{
setValue(value, "startupCardUpdateCheckAlwaysUpdate");
}
void UpdatesSettings::setCardUpdateCheckInterval(int value)
{
setValue(value, "cardUpdateCheckInterval");
}
void UpdatesSettings::setLastCardUpdateCheck(QDate value)
{
setValue(value, "lastCardUpdateCheck");
}
void UpdatesSettings::setAlwaysEnableNewSets(bool value)
{
setValue(value, "alwaysEnableNewSets");
}
void UpdatesSettings::setNotifyAboutUpdates(bool _notifyaboutupdate)
{
setValue(_notifyaboutupdate, "updatenotification");
}
void UpdatesSettings::setNotifyAboutNewVersion(bool _notifyaboutnewversion)
{
setValue(_notifyaboutnewversion, "newversionnotification");
}
void UpdatesSettings::setUpdateReleaseChannelIndex(int value)
{
setValue(value, "updatereleasechannel");
}