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/client/scstwsetting.h

48 lines
1.1 KiB
C++

#ifndef SCSTWQMLSETTING_H
#define SCSTWQMLSETTING_H
#include <scstwsettings.h>
#include <QObject>
class ScStwSetting : public QObject
{
Q_OBJECT
Q_PROPERTY(ScStwSettings* scStwSettings READ getScStwSettings WRITE setScStwSettings NOTIFY scStwSettingsChanged)
Q_PROPERTY(int key READ getKey WRITE setKey NOTIFY keyChanged)
Q_PROPERTY(int keyLevel READ getKeyLevel WRITE setKeyLevel NOTIFY keyLevelChanged)
Q_PROPERTY(QVariant value READ getValue WRITE setValue NOTIFY valueChanged)
public:
explicit ScStwSetting(QObject *parent = nullptr);
private:
ScStwSettings* scStwSettings;
int key;
int keyLevel;
QVariant valueCache;
public slots:
ScStwSettings* getScStwSettings();
void setScStwSettings(ScStwSettings* scStwSettings);
int getKey();
void setKey(int key);
int getKeyLevel();
void setKeyLevel(int keyLevel);
QVariant getValue();
void setValue(QVariant value);
private slots:
void handleSettingChange(int key, int keyLevel);
signals:
void scStwSettingsChanged();
void keyChanged();
void keyLevelChanged();
void valueChanged();
};
#endif // SCSTWQMLSETTING_H