WaterLevelSensor/configinterface.h

63 lines
1.7 KiB
C
Raw Normal View History

2026-04-01 18:33:19 +05:30
#ifndef CONFIGINTERFACE_H
#define CONFIGINTERFACE_H
#include <QObject>
#include <QQmlEngine>
#include <QFile>
#include <QDir>
#include <QStandardPaths>
#include <QJsonObject>
#include <QJsonValue>
#include <QJsonDocument>
class ConfigInterface : public QObject
{
Q_OBJECT
QML_ELEMENT
Q_PROPERTY(QString min READ min WRITE setMin NOTIFY minChanged FINAL)
Q_PROPERTY(QString max READ max WRITE setMax NOTIFY maxChanged FINAL)
Q_PROPERTY(QString alert READ alert WRITE setAlert NOTIFY alertChanged FINAL)
2026-04-13 17:49:08 +05:30
Q_PROPERTY(QString mode READ mode WRITE setMode NOTIFY modeChanged FINAL)
Q_PROPERTY(QString url READ url WRITE setUrl NOTIFY urlChanged FINAL)
2026-04-03 18:46:34 +05:30
Q_PROPERTY(bool flipBits READ flipBits WRITE setFlipBits NOTIFY flipBitsChanged FINAL)
2026-04-01 18:33:19 +05:30
public:
explicit ConfigInterface(QObject *parent = nullptr);
QString alert() const;
void setAlert(const QString &newAlert);
QString max() const;
void setMax(const QString &newMax);
QString min() const;
void setMin(const QString &newMin);
2026-04-03 18:46:34 +05:30
bool flipBits() const;
void setFlipBits(bool newFlipBits);
2026-04-13 17:49:08 +05:30
QString mode() const;
void setMode(const QString &newMode);
QString url() const;
void setUrl(const QString &newUrl);
2026-04-01 18:33:19 +05:30
signals:
2026-04-13 17:49:08 +05:30
void configData(QString max, QString min, QString alert, bool flipbits, QString mode, QString url);
2026-04-01 18:33:19 +05:30
void alertChanged();
void maxChanged();
void minChanged();
2026-04-03 18:46:34 +05:30
void flipBitsChanged();
2026-04-13 17:49:08 +05:30
void modeChanged();
void urlChanged();
2026-04-03 18:46:34 +05:30
2026-04-01 18:33:19 +05:30
public slots:
2026-04-13 17:49:08 +05:30
void saveConfig(QString max, QString min, QString alert, bool flipbits, QString mode, QString url);
2026-04-01 18:33:19 +05:30
private:
QString m_alert;
QString m_max;
QString m_min;
2026-04-03 18:46:34 +05:30
bool m_flipBits;
2026-04-13 17:49:08 +05:30
QString m_mode;
QString m_url;
2026-04-01 18:33:19 +05:30
};
#endif // CONFIGINTERFACE_H