Scoped group view backed by QSettings.
More...
#include <phosphor-config/include/PhosphorConfig/QSettingsBackend.h>
Public Member Functions | |
| QSettingsGroup (QSettings *settings, QString groupName, QSettingsBackend *backend) | |
| ~QSettingsGroup () override | |
| QString | readString (const QString &key, const QString &defaultValue={}) const override |
| int | readInt (const QString &key, int defaultValue=0) const override |
| bool | readBool (const QString &key, bool defaultValue=false) const override |
| double | readDouble (const QString &key, double defaultValue=0.0) const override |
| QColor | readColor (const QString &key, const QColor &defaultValue={}) const override |
| void | writeString (const QString &key, const QString &value) override |
| Write a string. | |
| void | writeInt (const QString &key, int value) override |
| void | writeBool (const QString &key, bool value) override |
| void | writeDouble (const QString &key, double value) override |
| void | writeColor (const QString &key, const QColor &value) override |
| bool | hasKey (const QString &key) const override |
| void | deleteKey (const QString &key) override |
| QStringList | keyList () const override |
| Enumerate scalar leaf keys directly under this group. | |
Public Member Functions inherited from PhosphorConfig::IGroup | |
| virtual | ~IGroup ()=default |
| virtual void | writeJson (const QString &key, const QJsonValue &value) |
| Write a structured JSON value (array/object/scalar) natively where supported, or as a compact-JSON string for backends without a native representation. | |
| virtual QJsonValue | readJson (const QString &key, const QJsonValue &defaultValue={}) const |
| Read a structured JSON value. | |
| IGroup (const IGroup &)=delete | |
| IGroup & | operator= (const IGroup &)=delete |
Additional Inherited Members | |
Protected Member Functions inherited from PhosphorConfig::IGroup | |
| IGroup ()=default | |
Scoped group view backed by QSettings.
See IGroup for the base contract.
The underlying QSettings is single-threaded and stateful (it tracks "current group"), so only one group view may exist per backend at a time — debug builds assert, release builds warn.
| PhosphorConfig::QSettingsGroup::QSettingsGroup | ( | QSettings * | settings, |
| QString | groupName, | ||
| QSettingsBackend * | backend | ||
| ) |
|
override |
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Enumerate scalar leaf keys directly under this group.
Nested sub-groups (dot-path children in JsonBackend) are NOT included — consumers that want to purge stale keys without touching declared descendants can iterate this list against the schema. Order is implementation-defined.
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Implements PhosphorConfig::IGroup.
|
overridevirtual |
Write a string.
Stored verbatim — no content-dependent reinterpretation.
Callers that need to persist structured data (array/object) should go through writeJson, which preserves the native JSON type where the backend supports it (JsonBackend stores as a native array/object; QSettingsBackend stringifies).
Implements PhosphorConfig::IGroup.