This repository has been archived on 2024-06-03. You can view files and clone it, but cannot push or open issues or pull requests.
shared-libraries/ScStwLibraries/headers/scstwsetting.h

38 lines
713 B
C
Raw Normal View History

#ifndef SCSTWQMLSETTING_H
#define SCSTWQMLSETTING_H
#include <QObject>
#include <QVariant>
class ScStwSetting : public QObject
{
Q_OBJECT
Q_PROPERTY(QVariant value READ getValue WRITE setValue NOTIFY valueChanged)
protected:
explicit ScStwSetting(QObject *parent = nullptr);
int key;
int keyLevel;
bool hasToReload;
virtual bool writeSetting(int, int, QVariant) = 0;
virtual QVariant readSetting(int, int) = 0;
private:
QVariant valueCache;
public slots:
QVariant getValue();
void setValue(QVariant value);
protected slots:
void handleSettingChange(int key, int keyLevel, QVariant value);
signals:
void valueChanged();
};
#endif // SCSTWQMLSETTING_H