diff options
Diffstat (limited to 'examples/serialport/terminal/mainwindow.cpp')
-rw-r--r-- | examples/serialport/terminal/mainwindow.cpp | 108 |
1 files changed, 53 insertions, 55 deletions
diff --git a/examples/serialport/terminal/mainwindow.cpp b/examples/serialport/terminal/mainwindow.cpp index f6e86cc..e8ac9d7 100644 --- a/examples/serialport/terminal/mainwindow.cpp +++ b/examples/serialport/terminal/mainwindow.cpp @@ -54,73 +54,71 @@ #include "console.h" #include "settingsdialog.h" -#include <QMessageBox> #include <QLabel> -#include <QtSerialPort/QSerialPort> +#include <QMessageBox> //! [0] MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), - ui(new Ui::MainWindow) -{ -//! [0] - ui->setupUi(this); - console = new Console; - console->setEnabled(false); - setCentralWidget(console); + m_ui(new Ui::MainWindow), + m_status(new QLabel), + m_console(new Console), + m_settings(new SettingsDialog), //! [1] - serial = new QSerialPort(this); + m_serial(new QSerialPort(this)) //! [1] - settings = new SettingsDialog; +{ +//! [0] + m_ui->setupUi(this); + m_console->setEnabled(false); + setCentralWidget(m_console); - ui->actionConnect->setEnabled(true); - ui->actionDisconnect->setEnabled(false); - ui->actionQuit->setEnabled(true); - ui->actionConfigure->setEnabled(true); + m_ui->actionConnect->setEnabled(true); + m_ui->actionDisconnect->setEnabled(false); + m_ui->actionQuit->setEnabled(true); + m_ui->actionConfigure->setEnabled(true); - status = new QLabel; - ui->statusBar->addWidget(status); + m_ui->statusBar->addWidget(m_status); initActionsConnections(); - connect(serial, static_cast<void (QSerialPort::*)(QSerialPort::SerialPortError)>(&QSerialPort::error), - this, &MainWindow::handleError); + connect(m_serial, &QSerialPort::errorOccurred, this, &MainWindow::handleError); //! [2] - connect(serial, &QSerialPort::readyRead, this, &MainWindow::readData); + connect(m_serial, &QSerialPort::readyRead, this, &MainWindow::readData); //! [2] - connect(console, &Console::getData, this, &MainWindow::writeData); + connect(m_console, &Console::getData, this, &MainWindow::writeData); //! [3] } //! [3] MainWindow::~MainWindow() { - delete settings; - delete ui; + delete m_settings; + delete m_ui; } //! [4] void MainWindow::openSerialPort() { - SettingsDialog::Settings p = settings->settings(); - serial->setPortName(p.name); - serial->setBaudRate(p.baudRate); - serial->setDataBits(p.dataBits); - serial->setParity(p.parity); - serial->setStopBits(p.stopBits); - serial->setFlowControl(p.flowControl); - if (serial->open(QIODevice::ReadWrite)) { - console->setEnabled(true); - console->setLocalEchoEnabled(p.localEchoEnabled); - ui->actionConnect->setEnabled(false); - ui->actionDisconnect->setEnabled(true); - ui->actionConfigure->setEnabled(false); + const SettingsDialog::Settings p = m_settings->settings(); + m_serial->setPortName(p.name); + m_serial->setBaudRate(p.baudRate); + m_serial->setDataBits(p.dataBits); + m_serial->setParity(p.parity); + m_serial->setStopBits(p.stopBits); + m_serial->setFlowControl(p.flowControl); + if (m_serial->open(QIODevice::ReadWrite)) { + m_console->setEnabled(true); + m_console->setLocalEchoEnabled(p.localEchoEnabled); + m_ui->actionConnect->setEnabled(false); + m_ui->actionDisconnect->setEnabled(true); + m_ui->actionConfigure->setEnabled(false); showStatusMessage(tr("Connected to %1 : %2, %3, %4, %5, %6") .arg(p.name).arg(p.stringBaudRate).arg(p.stringDataBits) .arg(p.stringParity).arg(p.stringStopBits).arg(p.stringFlowControl)); } else { - QMessageBox::critical(this, tr("Error"), serial->errorString()); + QMessageBox::critical(this, tr("Error"), m_serial->errorString()); showStatusMessage(tr("Open error")); } @@ -130,12 +128,12 @@ void MainWindow::openSerialPort() //! [5] void MainWindow::closeSerialPort() { - if (serial->isOpen()) - serial->close(); - console->setEnabled(false); - ui->actionConnect->setEnabled(true); - ui->actionDisconnect->setEnabled(false); - ui->actionConfigure->setEnabled(true); + if (m_serial->isOpen()) + m_serial->close(); + m_console->setEnabled(false); + m_ui->actionConnect->setEnabled(true); + m_ui->actionDisconnect->setEnabled(false); + m_ui->actionConfigure->setEnabled(true); showStatusMessage(tr("Disconnected")); } //! [5] @@ -151,15 +149,15 @@ void MainWindow::about() //! [6] void MainWindow::writeData(const QByteArray &data) { - serial->write(data); + m_serial->write(data); } //! [6] //! [7] void MainWindow::readData() { - QByteArray data = serial->readAll(); - console->putData(data); + const QByteArray data = m_serial->readAll(); + m_console->putData(data); } //! [7] @@ -167,7 +165,7 @@ void MainWindow::readData() void MainWindow::handleError(QSerialPort::SerialPortError error) { if (error == QSerialPort::ResourceError) { - QMessageBox::critical(this, tr("Critical Error"), serial->errorString()); + QMessageBox::critical(this, tr("Critical Error"), m_serial->errorString()); closeSerialPort(); } } @@ -175,16 +173,16 @@ void MainWindow::handleError(QSerialPort::SerialPortError error) void MainWindow::initActionsConnections() { - connect(ui->actionConnect, &QAction::triggered, this, &MainWindow::openSerialPort); - connect(ui->actionDisconnect, &QAction::triggered, this, &MainWindow::closeSerialPort); - connect(ui->actionQuit, &QAction::triggered, this, &MainWindow::close); - connect(ui->actionConfigure, &QAction::triggered, settings, &SettingsDialog::show); - connect(ui->actionClear, &QAction::triggered, console, &Console::clear); - connect(ui->actionAbout, &QAction::triggered, this, &MainWindow::about); - connect(ui->actionAboutQt, &QAction::triggered, qApp, &QApplication::aboutQt); + connect(m_ui->actionConnect, &QAction::triggered, this, &MainWindow::openSerialPort); + connect(m_ui->actionDisconnect, &QAction::triggered, this, &MainWindow::closeSerialPort); + connect(m_ui->actionQuit, &QAction::triggered, this, &MainWindow::close); + connect(m_ui->actionConfigure, &QAction::triggered, m_settings, &SettingsDialog::show); + connect(m_ui->actionClear, &QAction::triggered, m_console, &Console::clear); + connect(m_ui->actionAbout, &QAction::triggered, this, &MainWindow::about); + connect(m_ui->actionAboutQt, &QAction::triggered, qApp, &QApplication::aboutQt); } void MainWindow::showStatusMessage(const QString &message) { - status->setText(message); + m_status->setText(message); } |