DNS不完全输入 双击可编辑问题
This commit is contained in:
parent
91c99a6e82
commit
8b5fb65f50
|
@ -95,6 +95,12 @@ void CreatNetPage::initComponent() {
|
|||
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()
|
||||
|
|
|
@ -151,6 +151,12 @@ void Ipv4Page::initComponent() {
|
|||
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)
|
||||
|
|
|
@ -241,6 +241,12 @@ void Ipv6Page::initComponent() {
|
|||
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) {
|
||||
|
|
|
@ -45,7 +45,7 @@ void MultipleDnsWidget::initUI()
|
|||
m_dnsListWidget->setBackgroundRole(QPalette::Base);
|
||||
m_dnsListWidget->setFocusPolicy(Qt::FocusPolicy::NoFocus);
|
||||
m_dnsListWidget->setFrameShape(QFrame::Shape::StyledPanel);
|
||||
m_dnsListWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||
m_dnsListWidget->setEditTriggers(QAbstractItemView::DoubleClicked);
|
||||
setDnsListWidgetStyle();
|
||||
|
||||
m_addDnsBtn = new QPushButton(this);
|
||||
|
@ -81,6 +81,10 @@ void MultipleDnsWidget::initComponent()
|
|||
m_removeDnsBtn->setEnabled(true);
|
||||
}
|
||||
});
|
||||
connect(m_dnsListWidget, &QListWidget::itemDoubleClicked, this, [=](QListWidgetItem *item) {
|
||||
m_dnsListWidget->edit(m_dnsListWidget->currentIndex());
|
||||
item->setFlags(item->flags() | Qt::ItemIsEditable);
|
||||
});
|
||||
}
|
||||
|
||||
void MultipleDnsWidget::setEditEnabled(bool state)
|
||||
|
@ -132,6 +136,9 @@ 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)
|
||||
|
|
|
@ -61,6 +61,10 @@ private Q_SLOTS:
|
|||
void setDnsListWidgetStyle();
|
||||
void onAddBtnClicked();
|
||||
void onRemoveBtnClicked();
|
||||
|
||||
Q_SIGNALS:
|
||||
void dnsTextChanged(const QString &);
|
||||
void dnsEditingFinished();
|
||||
};
|
||||
|
||||
#endif // MULTIPLEDNSWIDGET_H
|
||||
|
|
|
@ -29,8 +29,9 @@ ListItemEdit::ListItemEdit(const QRegExp &rx, QObject *parent)
|
|||
QWidget *ListItemEdit::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
|
||||
{
|
||||
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;
|
||||
}
|
||||
|
||||
|
|
|
@ -43,6 +43,10 @@ public:
|
|||
const QModelIndex &index) const override;
|
||||
private:
|
||||
QRegExp m_regExp;
|
||||
|
||||
Q_SIGNALS:
|
||||
void textChanged(const QString &);
|
||||
void editingFinished();
|
||||
};
|
||||
|
||||
#endif // LISTITEMEDIT_H
|
||||
|
|
Loading…
Reference in New Issue