amnezia-client/client/ui/pages_logic/NetworkSettingsLogic.h
2021-09-03 20:17:13 +03:00

61 lines
1.8 KiB
C++

#ifndef NETWORK_SETTINGS_LOGIC_H
#define NETWORK_SETTINGS_LOGIC_H
#include "../pages.h"
#include "settings.h"
class UiLogic;
class NetworkSettingsLogic : public QObject
{
Q_OBJECT
public:
Q_INVOKABLE void updateNetworkSettingsPage();
Q_PROPERTY(QString lineEditNetworkSettingsDns1Text READ getLineEditNetworkSettingsDns1Text WRITE setLineEditNetworkSettingsDns1Text NOTIFY lineEditNetworkSettingsDns1TextChanged)
Q_PROPERTY(QString lineEditNetworkSettingsDns2Text READ getLineEditNetworkSettingsDns2Text WRITE setLineEditNetworkSettingsDns2Text NOTIFY lineEditNetworkSettingsDns2TextChanged)
Q_PROPERTY(QString ipAddressValidatorRegex READ getIpAddressValidatorRegex CONSTANT)
Q_INVOKABLE void onLineEditNetworkSettingsDns1EditFinished(const QString& text);
Q_INVOKABLE void onLineEditNetworkSettingsDns2EditFinished(const QString& text);
Q_INVOKABLE void onPushButtonNetworkSettingsResetdns1Clicked();
Q_INVOKABLE void onPushButtonNetworkSettingsResetdns2Clicked();
public:
explicit NetworkSettingsLogic(UiLogic *uiLogic, QObject *parent = nullptr);
~NetworkSettingsLogic() = default;
QString getLineEditNetworkSettingsDns1Text() const;
void setLineEditNetworkSettingsDns1Text(const QString &lineEditNetworkSettingsDns1Text);
QString getLineEditNetworkSettingsDns2Text() const;
void setLineEditNetworkSettingsDns2Text(const QString &lineEditNetworkSettingsDns2Text);
QString getIpAddressValidatorRegex() const;
signals:
void lineEditNetworkSettingsDns1TextChanged();
void lineEditNetworkSettingsDns2TextChanged();
private:
private slots:
private:
Settings m_settings;
UiLogic *m_uiLogic;
QString m_lineEditNetworkSettingsDns1Text;
QString m_lineEditNetworkSettingsDns2Text;
QString m_ipAddressValidatorRegex;
};
#endif // NETWORK_SETTINGS_LOGIC_H