summaryrefslogtreecommitdiffstats
path: root/examples/serialbus/modbus/adueditor
diff options
context:
space:
mode:
Diffstat (limited to 'examples/serialbus/modbus/adueditor')
-rw-r--r--examples/serialbus/modbus/adueditor/adueditor.pro16
-rw-r--r--examples/serialbus/modbus/adueditor/mainwindow.cpp43
-rw-r--r--examples/serialbus/modbus/adueditor/modbustcpclient_p.h21
-rw-r--r--examples/serialbus/modbus/adueditor/plaintextedit.h6
4 files changed, 47 insertions, 39 deletions
diff --git a/examples/serialbus/modbus/adueditor/adueditor.pro b/examples/serialbus/modbus/adueditor/adueditor.pro
index facba76..77a6158 100644
--- a/examples/serialbus/modbus/adueditor/adueditor.pro
+++ b/examples/serialbus/modbus/adueditor/adueditor.pro
@@ -7,9 +7,19 @@ QT += serialbus-private core-private
requires(qtConfig(combobox))
requires(qtConfig(modbus-serialport))
-FORMS += interface.ui
-SOURCES += main.cpp mainwindow.cpp modbustcpclient.cpp
-HEADERS += mainwindow.h plaintextedit.h modbustcpclient.h modbustcpclient_p.h
+SOURCES += \
+ main.cpp \
+ mainwindow.cpp \
+ modbustcpclient.cpp
+
+HEADERS += \
+ mainwindow.h \
+ modbustcpclient.h \
+ modbustcpclient_p.h \
+ plaintextedit.h
+
+FORMS += \
+ interface.ui
target.path = $$[QT_INSTALL_EXAMPLES]/serialbus/modbus/adueditor
INSTALLS += target
diff --git a/examples/serialbus/modbus/adueditor/mainwindow.cpp b/examples/serialbus/modbus/adueditor/mainwindow.cpp
index 862be6a..995cfc9 100644
--- a/examples/serialbus/modbus/adueditor/mainwindow.cpp
+++ b/examples/serialbus/modbus/adueditor/mainwindow.cpp
@@ -52,8 +52,8 @@
#include "modbustcpclient.h"
#include <QLoggingCategory>
-#include <QModbusRtuSerialMaster>
#include <QModbusPdu>
+#include <QModbusRtuSerialMaster>
#include <QSerialPortInfo>
#ifndef QT_STATIC
@@ -84,7 +84,7 @@ MainWindow::MainWindow(QWidget *parent)
for (const QSerialPortInfo &info : ports)
serialPortCombo->addItem(info.portName(), false);
serialPortCombo->insertSeparator(serialPortCombo->count());
- serialPortCombo->addItem(QStringLiteral("Add port..."), true);
+ serialPortCombo->addItem(tr("Add port..."), true);
serialPortCombo->setInsertPolicy(QComboBox::InsertAtTop);
connect(tcpRadio, &QRadioButton::toggled, this, [this](bool toggled) {
@@ -119,14 +119,14 @@ void MainWindow::on_sendButton_clicked()
return;
}
- const quint8 address = (isSerial ? addressSpin : ui1Spin)->value();
+ const quint8 address = quint8((isSerial ? addressSpin : ui1Spin)->value());
if (isCustom) {
qDebug() << "Send: Sending custom PDU.";
reply = m_device->sendRawRequest(QModbusRequest(QModbusRequest::FunctionCode(
pduData[0]), pduData.mid(1)), address);
} else {
qDebug() << "Send: Sending PDU with predefined function code.";
- quint16 fc = (isSerial ? fcSerialDrop : fcTcpDrop)->currentText().left(4).toShort(0, 16);
+ quint16 fc = (isSerial ? fcSerialDrop : fcTcpDrop)->currentText().left(4).toUShort(0, 16);
reply = m_device->sendRawRequest(QModbusRequest(QModbusRequest::FunctionCode(fc), pduData),
address);
}
@@ -149,24 +149,23 @@ void MainWindow::on_connectButton_clicked()
{
if (tcpRadio->isChecked()) {
auto device = new ModbusTcpClient;
- using signature = void (QSpinBox::*)(int);
- connect(ti1Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
- connect(ti2Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
-
- connect(pi1Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
- connect(pi2Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
-
- connect(l1Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
- connect(l2Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
-
- connect(ui1Spin, static_cast<signature>(&QSpinBox::valueChanged), device,
- &ModbusTcpClient::valueChanged);
+ connect(ti1Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+ connect(ti2Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+
+ connect(pi1Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+ connect(pi2Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+
+ connect(l1Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+ connect(l2Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
+
+ connect(ui1Spin, QOverload<int>::of(&QSpinBox::valueChanged),
+ device, &ModbusTcpClient::valueChanged);
m_device = device;
device->valueChanged(0); // trigger update
diff --git a/examples/serialbus/modbus/adueditor/modbustcpclient_p.h b/examples/serialbus/modbus/adueditor/modbustcpclient_p.h
index 9d091d8..a563b6f 100644
--- a/examples/serialbus/modbus/adueditor/modbustcpclient_p.h
+++ b/examples/serialbus/modbus/adueditor/modbustcpclient_p.h
@@ -73,7 +73,7 @@ public:
QDataStream output(&buffer, QIODevice::WriteOnly);
output << m_tId << m_pId << m_length << m_uId << request;
- int writtenBytes = m_socket->write(buffer);
+ qint64 writtenBytes = m_socket->write(buffer);
if (writtenBytes == -1 || writtenBytes < buffer.size()) {
Q_Q(ModbusTcpClient);
qDebug() << "Cannot write request to socket.";
@@ -91,14 +91,13 @@ public:
Q_Q(ModbusTcpClient);
auto reply = new QModbusReply(type, m_uId, q);
- const auto element = QueueElement{ reply, request, unit, m_numberOfRetries,
- m_responseTimeoutDuration };
+ const auto element = QueueElement{reply, request, unit, m_numberOfRetries,
+ m_responseTimeoutDuration};
m_transactionStore.insert(m_tId, element);
- using TypeId = void (QTimer::*)(int);
q->connect(q, &QModbusClient::timeoutChanged,
- element.timer.data(), static_cast<TypeId>(&QTimer::setInterval));
- QObject::connect(element.timer.data(), &QTimer::timeout, [this, writeToSocket]() {
+ element.timer.data(), QOverload<int>::of(&QTimer::setInterval));
+ q->connect(element.timer.data(), &QTimer::timeout, [this, writeToSocket]() {
if (!m_transactionStore.contains(m_tId))
return;
@@ -120,13 +119,13 @@ public:
}
});
element.timer->start();
- return reply;
+ return reply;
}
- quint16 m_tId;
- quint16 m_pId;
- quint16 m_length;
- quint8 m_uId;
+ quint16 m_tId = 0;
+ quint16 m_pId = 0;
+ quint16 m_length = 0;
+ quint8 m_uId = 0;
};
#endif // MODBUSTCPCLIENT_P_H
diff --git a/examples/serialbus/modbus/adueditor/plaintextedit.h b/examples/serialbus/modbus/adueditor/plaintextedit.h
index 3cbbaaf..cbc590c 100644
--- a/examples/serialbus/modbus/adueditor/plaintextedit.h
+++ b/examples/serialbus/modbus/adueditor/plaintextedit.h
@@ -81,12 +81,12 @@ public:
void contextMenuEvent(QContextMenuEvent *event)
{
QMenu menu(this);
- menu.addAction(QStringLiteral("Clear"), this, &QPlainTextEdit::clear);
+ menu.addAction(tr("Clear"), this, &QPlainTextEdit::clear);
#ifndef QT_NO_CLIPBOARD
- menu.addAction(QStringLiteral("Copy"), this, &QPlainTextEdit::copy, QKeySequence::Copy);
+ menu.addAction(tr("Copy"), this, &QPlainTextEdit::copy, QKeySequence::Copy);
#endif
menu.addSeparator();
- menu.addAction(QStringLiteral("Select All"), this, &QPlainTextEdit::selectAll,
+ menu.addAction(tr("Select All"), this, &QPlainTextEdit::selectAll,
QKeySequence::SelectAll);
menu.exec(event->globalPos());
}