You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
wheeldetect/src/tpMain/qipconfigdlg.cpp

83 lines
2.8 KiB
C++

#include "qipconfigdlg.h"
#include "InfoFile.h"
#include <QLineEdit>
#include <QRegExpValidator>
QIPConfigDlg::QIPConfigDlg(QWidget *parent)
: QDialog(parent)
{
ui.setupUi(this);
setWindowIcon(QIcon(":/image/leaper"));
// setWindowFlags(Qt::WindowFullscreenButtonHint);
// setWindowFlags(Qt::WindowMinimizeButtonHint);
// setWindowFlags(Qt::WindowTitleHint);
setWindowFlags(Qt::WindowCloseButtonHint);
//setWindowFlags(Qt::Tool);
QRegExp regExpIP("((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])[\\.]){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])");
QRegExp regExpNetPort("((6553[0-5])|[655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{3}|[1-9][0-9]{2}|[1-9][0-9]|[0-9])");
QRegExp regExpChannel("[0-5]");
ui.lineEdit_ServerIP->setValidator(new QRegExpValidator(regExpIP, this));
ui.lineEdit_ServerPort->setValidator(new QRegExpValidator(regExpNetPort, this));
ui.lineEdit_ClientIP->setValidator(new QRegExpValidator(regExpIP, this));
ui.lineEdit_ClientPort->setValidator(new QRegExpValidator(regExpNetPort, this));
connect(ui.pushButton_Close, SIGNAL(clicked()), this, SLOT(SlotCloseServer()));
connect(ui.pushButton_open, SIGNAL(clicked()), this, SLOT(SlotOpenServer()));
connect(ui.pushButton_OK, SIGNAL(clicked()), this, SLOT(SlotOK()));
ui.lineEdit_ServerIP->setDisabled(true);
ui.lineEdit_ServerPort->setDisabled(true);
ui.pushButton_open->setDisabled(true);
}
QIPConfigDlg::~QIPConfigDlg()
{
}
void QIPConfigDlg::SetIPData(const IPConfig *m_IPdata)
{
ui.lineEdit_ServerIP->setText(m_IPdata->m_TcpAddress);
ui.lineEdit_ServerPort->setText(QString::number(m_IPdata->m_TcpPort));
ui.lineEdit_ClientIP->setText(m_IPdata->m_ClientAddress);
ui.lineEdit_ClientPort->setText(QString::number(m_IPdata->m_ClientPort));
}
void QIPConfigDlg::GetIPData(IPConfig *m_IPdata)
{
m_IPdata->m_TcpAddress = ui.lineEdit_ServerIP->text();
m_IPdata->m_TcpPort = ui.lineEdit_ServerPort->text().toInt();
m_IPdata->m_ClientAddress = ui.lineEdit_ClientIP->text();
m_IPdata->m_ClientPort = ui.lineEdit_ClientPort->text().toInt();
}
Q_SLOT void QIPConfigDlg::SlotCloseServer()
{
emit(SignalCloseServer());
ui.pushButton_Close->setDisabled(true);
ui.pushButton_open->setDisabled(false);
ui.lineEdit_ServerIP->setDisabled(false);
ui.lineEdit_ServerPort->setDisabled(false);
}
Q_SLOT void QIPConfigDlg::SlotOpenServer()
{
QString m_TcpAddress = ui.lineEdit_ServerIP->text();
int m_TcpPort = ui.lineEdit_ServerPort->text().toInt();
emit(SignalOpenServer(m_TcpAddress, m_TcpPort));
ui.pushButton_Close->setDisabled(false);
ui.pushButton_open->setDisabled(true);
ui.lineEdit_ServerIP->setDisabled(true);
ui.lineEdit_ServerPort->setDisabled(true);
}
Q_SLOT void QIPConfigDlg::SlotOK()
{
QDialog::accept();
}
void QIPConfigDlg::changeEvent(QEvent *event)
{
if (event->type() == QEvent::LanguageChange)
{
ui.retranslateUi(this);
}
}