MauiKit Controls

appsettings.cpp
1#include "appsettings.h"
2
3SettingSection::SettingSection(QObject *parent)
4 : QObject(parent)
5{
6}
7
8QString SettingSection::key() const
9{
10 return m_key;
11}
12
13QString SettingSection::group() const
14{
15 return m_group;
16}
17
18QVariant SettingSection::value() const
19{
20 return AppSettings::local().load(m_key, m_group, m_defaultValue);
21}
22
23QVariant SettingSection::defaultValue() const
24{
25 return m_defaultValue;
26}
27
28void SettingSection::setKey(QString key)
29{
30 if (m_key == key)
31 return;
32
33 m_key = key;
34 Q_EMIT keyChanged(m_key);
35}
36
37void SettingSection::setGroup(QString group)
38{
39 if (m_group == group)
40 return;
41
42 m_group = group;
43 Q_EMIT groupChanged(m_group);
44}
45
46void SettingSection::setValue(QVariant value)
47{
48 AppSettings::local().save(m_key, value, m_group);
49}
50
51void SettingSection::setDefaultValue(QVariant defaultValue)
52{
53 if (m_defaultValue == defaultValue)
54 return;
55
56 m_defaultValue = defaultValue;
57 Q_EMIT defaultValueChanged(m_defaultValue);
58}
59
61{
62 return QUrl::fromLocalFile(m_settings->fileName());
63}
64
65QVariant AppSettings::load(const QString &key, const QString &group, const QVariant &defaultValue) const
66{
67 QVariant variant;
68 m_settings->beginGroup(group);
69 variant = m_settings->value(key, defaultValue);
70 m_settings->endGroup();
71 return variant;
72}
73
74void AppSettings::save(const QString &key, const QVariant &value, const QString &group)
75{
76 m_settings->beginGroup(group);
77 m_settings->setValue(key, value);
78 m_settings->endGroup();
79 Q_EMIT this->settingChanged(url(), key, value, group);
80}
81
82AppSettings::AppSettings(QString app, QString org)
83 : QObject(nullptr)
84 , m_app(app)
85 , m_org(org)
86 , m_settings(new QSettings(m_org, m_app, this))
87{
88}
QVariant load(const QString &key, const QString &group, const QVariant &defaultValue) const
load
static AppSettings & local()
local
Definition appsettings.h:54
QUrl url() const
url
void save(const QString &key, const QVariant &value, const QString &group)
save
void settingChanged(QUrl url, QString key, QVariant value, QString group)
settingChanged
Q_EMITQ_EMIT
QUrl fromLocalFile(const QString &localFile)
void setValue(QVariant &&value)
T value() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 11:57:11 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.