多DNS按钮逻辑调整 删除无效代码

This commit is contained in:
zhangyuanyuan1 2022-10-25 10:53:57 +08:00
parent 1cf2aeb8ca
commit 76db59ecef
9 changed files with 19 additions and 209 deletions

View File

@ -36,16 +36,12 @@ void CreatNetPage::initUI()
ipv4addressEdit = new LineEdit(this);
netMaskEdit = new LineEdit(this);
gateWayEdit = new LineEdit(this);
// firstDnsEdit = new LineEdit(this);
// secondDnsEdit = new LineEdit(this);
m_connNameLabel = new QLabel(this);
m_configLabel = new QLabel(this);
m_addressLabel = new QLabel(this);
m_maskLabel = new QLabel(this);
m_gateWayLabel = new QLabel(this);
// m_dnsLabel = new QLabel(this);
// m_secDnsLabel = new QLabel(this);
// IP的正则格式限制
QRegExp rx("\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b");
@ -56,8 +52,6 @@ void CreatNetPage::initUI()
m_addressLabel->setText(tr("Address"));
m_maskLabel->setText(tr("Netmask"));
m_gateWayLabel->setText(tr("Default Gateway"));
// m_dnsLabel->setText(tr("Prefs DNS"));
// m_secDnsLabel->setText(tr("Alternative DNS"));
m_detailLayout = new QFormLayout(this);
m_detailLayout->setContentsMargins(0, 0, 0, 0);
@ -67,8 +61,6 @@ void CreatNetPage::initUI()
m_detailLayout->addRow(m_addressLabel,ipv4addressEdit);
m_detailLayout->addRow(m_maskLabel,netMaskEdit);
m_detailLayout->addRow(m_gateWayLabel,gateWayEdit);
// m_detailLayout->addRow(m_dnsLabel,firstDnsEdit);
// m_detailLayout->addRow(m_secDnsLabel,secondDnsEdit);
m_detailLayout->addRow(m_dnsWidget);
ipv4ConfigCombox->addItem(tr("Auto(DHCP)"), AUTO_CONFIG); //"自动(DHCP)"
@ -77,8 +69,6 @@ void CreatNetPage::initUI()
ipv4addressEdit->setValidator(new QRegExpValidator(rx, this));
gateWayEdit->setValidator(new QRegExpValidator(rx, this));
netMaskEdit->setValidator(new QRegExpValidator(rx, this));
// firstDnsEdit->setValidator(new QRegExpValidator(rx, this));
// secondDnsEdit->setValidator(new QRegExpValidator(rx, this));
}
void CreatNetPage::initComponent() {
@ -93,14 +83,6 @@ void CreatNetPage::initComponent() {
connect(ipv4ConfigCombox, SIGNAL(currentIndexChanged(int)), this, SLOT(setEnableOfSaveBtn()));
connect(netMaskEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(gateWayEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(firstDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(secondDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(m_dnsWidget, &MultipleDnsWidget::dnsTextChanged, this, [=]() {
setCreatePageState(false);
});
connect(m_dnsWidget, &MultipleDnsWidget::dnsEditingFinished, this, [=]() {
setCreatePageState(true);
});
}
bool CreatNetPage::checkConnectBtnIsEnabled()
@ -122,28 +104,6 @@ bool CreatNetPage::checkConnectBtnIsEnabled()
qDebug() << "create ipv4 netMask empty or invalid";
return false;
}
#if 0
if (gateWayEdit->text().isEmpty() || !getTextEditState(gateWayEdit->text())) {
qDebug() << "create ipv4 gateway empty or invalid";
return false;
}
if (firstDnsEdit->text().isEmpty() && !secondDnsEdit->text().isEmpty()) {
qDebug() << "create ipv4 dns sort invalid";
return false;
}
if (!getTextEditState(firstDnsEdit->text())) {
qDebug() << "create ipv4 first dns invalid";
return false;
}
if (!getTextEditState(secondDnsEdit->text())) {
qDebug() << "create ipv4 second dns invalid";
return false;
}
#endif
}
return true;
}
@ -162,16 +122,12 @@ void CreatNetPage::setLineEnabled(bool check) {
ipv4addressEdit->setEnabled(check);
netMaskEdit->setEnabled(check);
gateWayEdit->setEnabled(check);
// firstDnsEdit->setEnabled(check);
// secondDnsEdit->setEnabled(check);
m_dnsWidget->setEditEnabled(check);
if (!check) {
ipv4addressEdit->clear();
netMaskEdit->clear();
gateWayEdit->clear();
// firstDnsEdit->clear();
// secondDnsEdit->clear();
ipv4addressEdit->setPlaceholderText(" ");
netMaskEdit->setPlaceholderText(" ");
@ -210,20 +166,14 @@ void CreatNetPage::constructIpv4Info(KyConnectSetting &setting)
QStringList dnsList;
dnsList.clear();
#if 0
if (!firstDnsEdit->text().isEmpty()) {
dnsList << firstDnsEdit->text();
if (!secondDnsEdit->text().isEmpty()) {
dnsList << secondDnsEdit->text();
}
}
#endif
QList<QHostAddress> ipv4dnsList;
ipv4dnsList.clear();
ipv4dnsList = m_dnsWidget->getDns();
for (QHostAddress str: ipv4dnsList) {
dnsList << str.toString();
if (!dnsList.contains(str.toString())) {
dnsList << str.toString();
}
}
if (ipv4ConfigCombox->currentData() == AUTO_CONFIG) {

View File

@ -47,8 +47,6 @@ private:
LineEdit *ipv4addressEdit;
LineEdit *netMaskEdit;
LineEdit *gateWayEdit;
// LineEdit *firstDnsEdit;
// LineEdit *secondDnsEdit;
QFormLayout *m_detailLayout;
QVBoxLayout *mvBoxLayout;
@ -57,8 +55,6 @@ private:
QLabel *m_addressLabel;
QLabel *m_maskLabel;
QLabel *m_gateWayLabel;
// QLabel *m_dnsLabel;
// QLabel *m_secDnsLabel;
MultipleDnsWidget *m_dnsWidget = nullptr;
private:

View File

@ -39,15 +39,11 @@ void Ipv4Page::initUI() {
ipv4addressEdit = new LineEdit(this);
netMaskEdit = new LineEdit(this);
gateWayEdit = new LineEdit(this);
// firstDnsEdit = new LineEdit(this);
// secondDnsEdit = new LineEdit(this);
m_configLabel = new QLabel(this);
m_addressLabel = new QLabel(this);
m_maskLabel = new QLabel(this);
m_gateWayLabel = new QLabel(this);
// m_dnsLabel = new QLabel(this);
// m_secDnsLabel = new QLabel(this);
m_configEmptyLabel = new QLabel(this);
m_configEmptyLabel->setFixedHeight(LABEL_HEIGHT);
@ -68,8 +64,6 @@ void Ipv4Page::initUI() {
m_addressLabel->setText(tr("Address"));
m_maskLabel->setText(tr("Netmask"));
m_gateWayLabel->setText(tr("Default Gateway"));
// m_dnsLabel->setText(tr("Prefs DNS"));
// m_secDnsLabel->setText(tr("Alternative DNS"));
m_statusLabel = new QLabel(this);
m_statusLabel->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
@ -109,8 +103,6 @@ void Ipv4Page::initUI() {
m_detailLayout->addRow(m_maskLabel,maskWidget);
m_detailLayout->addRow(m_gateWayLabel,gateWayEdit);
m_detailLayout->addRow(m_gateWayEmptyLabel);
// m_detailLayout->addRow(m_dnsLabel,firstDnsEdit);
// m_detailLayout->addRow(m_secDnsLabel,secondDnsEdit);
m_detailLayout->addRow(m_dnsWidget);
ipv4ConfigCombox->addItem(tr("Auto(DHCP)")); //"自动(DHCP)"
@ -127,8 +119,6 @@ void Ipv4Page::initUI() {
ipv4addressEdit->setValidator(new QRegExpValidator(rx, this));
gateWayEdit->setValidator(new QRegExpValidator(rx, this));
netMaskEdit->setValidator(new QRegExpValidator(rx, this));
// firstDnsEdit->setValidator(new QRegExpValidator(rx, this));
// secondDnsEdit->setValidator(new QRegExpValidator(rx, this));
initLoadingIcon();
}
@ -149,14 +139,6 @@ void Ipv4Page::initComponent() {
connect(ipv4addressEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(netMaskEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(gateWayEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(firstDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(secondDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(m_dnsWidget, &MultipleDnsWidget::dnsTextChanged, this, [=]() {
setIpv4PageState(false);
});
connect(m_dnsWidget, &MultipleDnsWidget::dnsEditingFinished, this, [=]() {
setIpv4PageState(true);
});
}
void Ipv4Page::setIpv4Config(KyIpConfigType ipv4Config)
@ -183,18 +165,6 @@ void Ipv4Page::setMulDns(const QList<QHostAddress> &dns)
m_dnsWidget->setDnsListText(dns);
}
#if 0
void Ipv4Page::setIpv4FirDns(const QString &ipv4FirDns)
{
firstDnsEdit->setText(ipv4FirDns);
}
void Ipv4Page::setIpv4SecDns(const QString &ipv4SecDns)
{
secondDnsEdit->setText(ipv4SecDns);
}
#endif
void Ipv4Page::setGateWay(const QString &gateWay)
{
gateWayEdit->setText(gateWay);
@ -231,24 +201,17 @@ bool Ipv4Page::checkIsChanged(const ConInfo info, KyConnectSetting &setting)
if(info.strIPV4Address != ipv4addressEdit->text()
|| info.strIPV4NetMask != /*netMaskEdit->text()*/getNetMaskText(netMaskEdit->text())
|| info.strIPV4GateWay != gateWayEdit->text()
// || info.strIPV4FirDns != firstDnsEdit->text()
// || info.strIPV4SecDns != secondDnsEdit->text()
|| info.ipv4DnsList != ipv4dnsList) {
qDebug() << "ipv4 info changed";
QStringList dnsList;
dnsList.clear();
for (QHostAddress str: ipv4dnsList) {
dnsList << str.toString();
}
#if 0
if (!firstDnsEdit->text().isEmpty()) {
dnsList << firstDnsEdit->text();
if (!secondDnsEdit->text().isEmpty()) {
dnsList << secondDnsEdit->text();
if (!dnsList.contains(str.toString())) {
dnsList << str.toString();
}
}
#endif
QString ipv4address =ipv4addressEdit->text();
QString netMask = getNetMaskText(netMaskEdit->text());
QString gateWay = gateWayEdit->text();
@ -276,28 +239,6 @@ bool Ipv4Page::checkConnectBtnIsEnabled()
qDebug() << "ipv4 netMask empty or invalid";
return false;
}
// if (gateWayEdit->text().isEmpty() || !getTextEditState(gateWayEdit->text())) {
// qDebug() << "ipv4 gateway empty or invalid";
// return false;
// }
#if 0
if (firstDnsEdit->text().isEmpty() && !secondDnsEdit->text().isEmpty()) {
qDebug() << "ipv4 dns sort invalid";
return false;
}
if (!getTextEditState(firstDnsEdit->text())) {
qDebug() << "ipv4 first dns invalid";
return false;
}
if (!getTextEditState(secondDnsEdit->text())) {
qDebug() << "ipv4 second dns invalid";
return false;
}
#endif
}
return true;
}
@ -347,8 +288,6 @@ void Ipv4Page::setLineEnabled(bool check) {
ipv4addressEdit->clear();
netMaskEdit->clear();
gateWayEdit->clear();
// firstDnsEdit->clear();
// secondDnsEdit->clear();
ipv4addressEdit->setPlaceholderText(" ");
netMaskEdit->setPlaceholderText(" ");
@ -361,8 +300,6 @@ void Ipv4Page::setLineEnabled(bool check) {
ipv4addressEdit->setEnabled(check);
netMaskEdit->setEnabled(check);
gateWayEdit->setEnabled(check);
// firstDnsEdit->setEnabled(check);
// secondDnsEdit->setEnabled(check);
m_dnsWidget->setEditEnabled(check);
}

View File

@ -43,8 +43,6 @@ public:
void setIpv4Config(KyIpConfigType ipv4Config);
void setIpv4(const QString &ipv4);
void setNetMask(const QString &netMask);
// void setIpv4FirDns(const QString &ipv4FirDns);
// void setIpv4SecDns(const QString &ipv4SecDns);
void setMulDns(const QList<QHostAddress> &dns);
void setGateWay(const QString &gateWay);
@ -59,8 +57,6 @@ private:
LineEdit *ipv4addressEdit;
LineEdit *netMaskEdit;
LineEdit *gateWayEdit;
// LineEdit *firstDnsEdit;
// LineEdit *secondDnsEdit;
QFormLayout *m_detailLayout;
QVBoxLayout *mvBoxLayout;
@ -68,8 +64,6 @@ private:
QLabel *m_addressLabel;
QLabel *m_maskLabel;
QLabel *m_gateWayLabel;
// QLabel *m_dnsLabel;
// QLabel *m_secDnsLabel;
QLabel *m_configEmptyLabel;
QLabel *m_addressHintLabel;

View File

@ -57,18 +57,6 @@ void Ipv6Page::setMulDns(const QList<QHostAddress> &dns)
m_dnsWidget->setDnsListText(dns);
}
#if 0
void Ipv6Page::setIpv6FirDns(const QString &ipv6FirDns)
{
firstDnsEdit->setText(ipv6FirDns);
}
void Ipv6Page::setIpv6SecDns(const QString &ipv6SecDns)
{
secondDnsEdit->setText(ipv6SecDns);
}
#endif
void Ipv6Page::setGateWay(const QString &gateWay)
{
gateWayEdit->setText(gateWay);
@ -102,24 +90,17 @@ bool Ipv6Page::checkIsChanged(const ConInfo info, KyConnectSetting &setting)
if(info.strIPV6Address != ipv6AddressEdit->text()
|| info.iIPV6Prefix != lengthEdit->text().toInt()
|| info.strIPV6GateWay != gateWayEdit->text()
// || info.strIPV6FirDns != firstDnsEdit->text()
// || info.strIPV6SecDns != secondDnsEdit->text()
|| info.ipv6DnsList != ipv6dnsList) {
qDebug() << "ipv6 info changed";
QStringList dnsList;
dnsList.clear();
for (QHostAddress str: ipv6dnsList) {
dnsList << str.toString();
}
#if 0
if (!firstDnsEdit->text().isEmpty()) {
dnsList << firstDnsEdit->text();
if (!secondDnsEdit->text().isEmpty()) {
dnsList << secondDnsEdit->text();
if (!dnsList.contains(str.toString())) {
dnsList << str.toString();
}
}
#endif
QString ipv6address =ipv6AddressEdit->text();
QString prefix = lengthEdit->text();
QString gateWay = gateWayEdit->text();
@ -136,15 +117,11 @@ void Ipv6Page::initUI() {
ipv6AddressEdit = new LineEdit(this);
lengthEdit = new LineEdit(this);
gateWayEdit = new LineEdit(this);
// firstDnsEdit = new LineEdit(this);
// secondDnsEdit = new LineEdit(this);
m_configLabel = new QLabel(this);
m_addressLabel = new QLabel(this);
m_subnetLabel = new QLabel(this);
m_gateWayLabel = new QLabel(this);
// m_dnsLabel = new QLabel(this);
// m_secDnsLabel = new QLabel(this);
m_configEmptyLabel = new QLabel(this);
m_configEmptyLabel->setFixedHeight(LABEL_HEIGHT);
@ -165,8 +142,6 @@ void Ipv6Page::initUI() {
m_addressLabel->setText(tr("Address"));
m_subnetLabel->setText(tr("Subnet prefix Length"));
m_gateWayLabel->setText(tr("Default Gateway"));
// m_dnsLabel->setText(tr("Prefs DNS"));
// m_secDnsLabel->setText(tr("Alternative DNS"));
m_statusLabel = new QLabel(this);
m_statusLabel->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
@ -205,8 +180,6 @@ void Ipv6Page::initUI() {
m_detailLayout->addRow(m_subnetLabel,lengthEdit);
m_detailLayout->addRow(m_subnetEmptyLabel);
m_detailLayout->addRow(m_gateWayLabel,gateWayWidget);
// m_detailLayout->addRow(m_dnsLabel,firstDnsEdit);
// m_detailLayout->addRow(m_secDnsLabel,secondDnsEdit);
m_detailLayout->addRow(m_dnsWidget);
ipv6ConfigCombox->addItem(tr("Auto(DHCP)")); //"自动(DHCP)"
@ -214,8 +187,6 @@ void Ipv6Page::initUI() {
ipv6AddressEdit->setValidator(new QRegExpValidator(ipv6_rx, this));
gateWayEdit->setValidator(new QRegExpValidator(ipv6_rx, this));
// firstDnsEdit->setValidator(new QRegExpValidator(ipv6_rx, this));
// secondDnsEdit->setValidator(new QRegExpValidator(ipv6_rx, this));
QRegExp prefix_rx("\\b(?:(?:12[0-8]|1[0-1][0-9]|^[1-9][0-9]?$)\\.){3}(?:12[0-8]|1[0-1][0-9]|^[1-9][0-9]?$)\\b");
lengthEdit->setValidator(new QRegExpValidator(prefix_rx,this));
@ -239,14 +210,6 @@ void Ipv6Page::initComponent() {
connect(ipv6AddressEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(lengthEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(gateWayEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(firstDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
// connect(secondDnsEdit, SIGNAL(textChanged(QString)), this, SLOT(setEnableOfSaveBtn()));
connect(m_dnsWidget, &MultipleDnsWidget::dnsTextChanged, this, [=]() {
setIpv6PageState(false);
});
connect(m_dnsWidget, &MultipleDnsWidget::dnsEditingFinished, this, [=]() {
setIpv6PageState(true);
});
}
void Ipv6Page::configChanged(int index) {
@ -264,8 +227,6 @@ void Ipv6Page::setControlEnabled(bool check)
ipv6AddressEdit->clear();
lengthEdit->clear();
gateWayEdit->clear();
// firstDnsEdit->clear();
// secondDnsEdit->clear();
ipv6AddressEdit->setPlaceholderText(" ");
lengthEdit->setPlaceholderText(" ");
@ -279,8 +240,6 @@ void Ipv6Page::setControlEnabled(bool check)
ipv6AddressEdit->setEnabled(check);
lengthEdit->setEnabled(check);
gateWayEdit->setEnabled(check);
// firstDnsEdit->setEnabled(check);
// secondDnsEdit->setEnabled(check);
m_dnsWidget->setEditEnabled(check);
}
@ -338,22 +297,6 @@ bool Ipv6Page::checkConnectBtnIsEnabled()
qDebug() << "ipv6 gateway empty or invalid";
return false;
}
#if 0
if (firstDnsEdit->text().isEmpty() && !secondDnsEdit->text().isEmpty()) {
qDebug() << "ipv6 dns sort invalid";
return false;
}
if (!getIpv6EditState(firstDnsEdit->text())) {
qDebug() << "ipv6 first dns invalid";
return false;
}
if (!getIpv6EditState(secondDnsEdit->text())) {
qDebug() << "ipv6 second dns invalid";
return false;
}
#endif
}
return true;
}

View File

@ -86,8 +86,6 @@ void MultipleDnsWidget::initComponent()
item->setFlags(item->flags() | Qt::ItemIsEditable);
ListItemEdit *dnsListItemEdit = new ListItemEdit(m_regExp);
m_dnsListWidget ->setItemDelegateForRow(m_dnsListWidget->currentIndex().row(), dnsListItemEdit);
connect(dnsListItemEdit, SIGNAL(textChanged(QString)), this, SIGNAL(dnsTextChanged(QString)));
connect(dnsListItemEdit, SIGNAL(editingFinished()), this, SIGNAL(dnsEditingFinished()));
});
}
@ -110,7 +108,7 @@ QList<QHostAddress> MultipleDnsWidget::getDns() const
QString aDns;
while (m_dnsListWidget->count() > row) {
aDns = m_dnsListWidget->item(row)->text();
if (!dnsList.contains(aDns)) {
if (!dnsList.contains(aDns) && !aDns.isEmpty()) {
dnsList << aDns;
ipv4dnsList << QHostAddress(aDns);
}
@ -140,9 +138,6 @@ void MultipleDnsWidget::AddOneDnsItem(QListWidget *listWidget)
ListItemEdit *dnsListItemEdit = new ListItemEdit(m_regExp);
listWidget->setItemDelegateForRow(listWidget->currentIndex().row() , dnsListItemEdit);
listWidget->editItem(dnsListWidgetItem);
connect(dnsListItemEdit, SIGNAL(textChanged(QString)), this, SIGNAL(dnsTextChanged(QString)));
connect(dnsListItemEdit, SIGNAL(editingFinished()), this, SIGNAL(dnsEditingFinished()));
}
void MultipleDnsWidget::RemoveOneDnsItem(QListWidgetItem *aItem, QListWidget *listWidget)
@ -164,15 +159,19 @@ void MultipleDnsWidget::setDnsListWidgetStyle()
void MultipleDnsWidget::onAddBtnClicked()
{
AddOneDnsItem(m_dnsListWidget);
//避免重复添加空白项
if (m_dnsListWidget->currentItem()) {
if (m_dnsListWidget->currentItem()->text().isEmpty()) {
m_dnsListWidget->removeItemWidget(m_dnsListWidget->currentItem());
delete m_dnsListWidget->currentItem();
int row = m_dnsListWidget->count() - 1;
while (row >= 0) {
if (!m_dnsListWidget->item(row)->isSelected()
&& m_dnsListWidget->item(row)->text().isEmpty()) {
m_dnsListWidget->removeItemWidget(m_dnsListWidget->item(row));
delete m_dnsListWidget->item(row);
}
row --;
}
AddOneDnsItem(m_dnsListWidget);
m_removeDnsBtn->setEnabled(true);
}

View File

@ -61,10 +61,6 @@ private Q_SLOTS:
void setDnsListWidgetStyle();
void onAddBtnClicked();
void onRemoveBtnClicked();
Q_SIGNALS:
void dnsTextChanged(const QString &);
void dnsEditingFinished();
};
#endif // MULTIPLEDNSWIDGET_H

View File

@ -30,8 +30,6 @@ QWidget *ListItemEdit::createEditor(QWidget *parent, const QStyleOptionViewItem
{
QLineEdit *editor = new QLineEdit(parent);
editor->setValidator(new QRegExpValidator(m_regExp, parent));
connect(editor, SIGNAL(textChanged(QString)), this, SIGNAL(textChanged(QString)));
connect(editor, SIGNAL(editingFinished()), this, SIGNAL(editingFinished()));
return editor;
}

View File

@ -44,9 +44,6 @@ public:
private:
QRegExp m_regExp;
Q_SIGNALS:
void textChanged(const QString &);
void editingFinished();
};
#endif // LISTITEMEDIT_H