50 lines
1.2 KiB
C++
50 lines
1.2 KiB
C++
#include "NetworkSettingsLogic.h"
|
|
|
|
#include "defines.h"
|
|
#include "utils.h"
|
|
|
|
NetworkSettingsLogic::NetworkSettingsLogic(UiLogic *logic, QObject *parent):
|
|
PageLogicBase(logic, parent),
|
|
m_ipAddressValidatorRegex{Utils::ipAddressRegExp().pattern()}
|
|
{
|
|
|
|
}
|
|
|
|
void NetworkSettingsLogic::onUpdatePage()
|
|
{
|
|
set_lineEditDns1Text(m_settings.primaryDns());
|
|
set_lineEditDns2Text(m_settings.secondaryDns());
|
|
}
|
|
|
|
void NetworkSettingsLogic::onLineEditDns1EditFinished(const QString &text)
|
|
{
|
|
QRegExp reg{getIpAddressValidatorRegex()};
|
|
if (reg.exactMatch(text)) {
|
|
m_settings.setPrimaryDns(text);
|
|
}
|
|
}
|
|
|
|
void NetworkSettingsLogic::onLineEditDns2EditFinished(const QString &text)
|
|
{
|
|
QRegExp reg{getIpAddressValidatorRegex()};
|
|
if (reg.exactMatch(text)) {
|
|
m_settings.setSecondaryDns(text);
|
|
}
|
|
}
|
|
|
|
void NetworkSettingsLogic::onPushButtonResetDns1Clicked()
|
|
{
|
|
m_settings.setPrimaryDns(m_settings.cloudFlareNs1);
|
|
onUpdatePage();
|
|
}
|
|
|
|
void NetworkSettingsLogic::onPushButtonResetDns2Clicked()
|
|
{
|
|
m_settings.setSecondaryDns(m_settings.cloudFlareNs2);
|
|
onUpdatePage();
|
|
}
|
|
|
|
QString NetworkSettingsLogic::getIpAddressValidatorRegex() const
|
|
{
|
|
return m_ipAddressValidatorRegex;
|
|
}
|