diff options
author | Alex Blasche <alexander.blasche@theqtcompany.com> | 2015-10-23 13:54:25 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-10-25 19:24:36 +0000 |
commit | 8e162b633e80082c8def85550758d9871402745a (patch) | |
tree | e61375da863fca0ea8f727dc3a7fb875ad78e149 | |
parent | f01665a0519a85ca42811a8368de9a3194428039 (diff) |
Display Modbus server errors in slave example
Change-Id: I08d37d98b916f54986233e1a197b289464afbd32
Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
-rw-r--r-- | examples/serialbus/modbus/slave/mainwindow.cpp | 10 | ||||
-rw-r--r-- | examples/serialbus/modbus/slave/mainwindow.h | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/examples/serialbus/modbus/slave/mainwindow.cpp b/examples/serialbus/modbus/slave/mainwindow.cpp index 7511706..6f29d9c 100644 --- a/examples/serialbus/modbus/slave/mainwindow.cpp +++ b/examples/serialbus/modbus/slave/mainwindow.cpp @@ -93,9 +93,19 @@ void MainWindow::on_connectType_currentIndexChanged(int index) } else { connect(modbusDevice, &QModbusClient::stateChanged, this, &MainWindow::onStateChanged); + connect(modbusDevice, &QModbusServer::errorOccurred, + this, &MainWindow::handleDeviceError); } } +void MainWindow::handleDeviceError(QModbusDevice::ModbusError newError) +{ + if (newError == QModbusDevice::NoError || !modbusDevice) + return; + + ui->errorLabel->setText(modbusDevice->errorString()); +} + void MainWindow::on_connectButton_clicked() { bool intendToConnect = (modbusDevice->state() == QModbusDevice::UnconnectedState); diff --git a/examples/serialbus/modbus/slave/mainwindow.h b/examples/serialbus/modbus/slave/mainwindow.h index ca5c06f..c3802bd 100644 --- a/examples/serialbus/modbus/slave/mainwindow.h +++ b/examples/serialbus/modbus/slave/mainwindow.h @@ -76,6 +76,8 @@ private Q_SLOTS: void on_connectType_currentIndexChanged(int); + void handleDeviceError(QModbusDevice::ModbusError newError); + private: void setupDeviceData(); void setupWidgetContainers(); |