1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
// SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
//
// SPDX-License-Identifier: LGPL-3.0-or-later
#include "dummysettings.h"
#include <QDebug>
class DummySettingsPrivate : public QObject
{
public:
DummySettingsPrivate(DummySettings *q, const QString &domain, QObject *parent = nullptr);
~DummySettingsPrivate();
protected:
QString domain;
QByteArrayList keys;
DummySettings *q_ptr = nullptr;
bool initialized = true;
Q_DECLARE_PUBLIC(DummySettings)
};
DummySettingsPrivate::DummySettingsPrivate(DummySettings *q, const QString &domain, QObject *parent)
: QObject(parent)
, domain(domain)
, q_ptr(q)
{
}
DummySettingsPrivate::~DummySettingsPrivate()
{
}
DummySettings::DummySettings(const QString &domain)
:d_ptr(new DummySettingsPrivate(this, domain))
{
}
DummySettings::~DummySettings()
{
}
bool DummySettings::initialized() const
{
Q_D(const DummySettings);
return d->initialized;
}
bool DummySettings::isEmpty() const
{
Q_D(const DummySettings);
return d->keys.isEmpty();
}
bool DummySettings::contains(const QByteArray &property) const
{
Q_D(const DummySettings);
return d->property(property.data()).isValid();
}
QVariant DummySettings::setting(const QByteArray &property) const
{
Q_D(const DummySettings);
return d->property(property.data());
}
void DummySettings::setSetting(const QByteArray &property, const QVariant &value)
{
if (setting(property) == value)
return;
Q_D(DummySettings);
if (!d->keys.contains(property))
d->keys << property;
d->setProperty(property.data(), value);
// call baseobject's propertychanged
handlePropertyChanged(property, value);
}
QByteArrayList DummySettings::settingKeys() const
{
Q_D(const DummySettings);
return d->keys;
}
void DummySettings::emitSignal(const QByteArray &signal, qint32 data1, qint32 data2)
{
qInfo() << "emitSignal[" << signal << "] "<< data1 << data2;
}
|