diff options
author | Evgeny Shtanov <shtanov_evgenii@mail.ru> | 2021-03-10 22:33:56 +0300 |
---|---|---|
committer | Evgeny Shtanov <shtanov_evgenii@mail.ru> | 2021-03-19 00:48:34 +0300 |
commit | a72f9e33dc8fe60ef80eee0ecf97965fc8482fe9 (patch) | |
tree | 6af3cd4cbdfdef1a137bb690f076bb15608eb414 /examples/serialbus/can/connectdialog.cpp | |
parent | 55f97fd0178485bafed1e97eaf0d4ebf91a312b5 (diff) |
CAN example: Replace received frames edit with proper table and model
Add a class based on QAbstractTableModel to show the received frames.
Also add a configurable queue to buffer the frames before displaying
them. This should avoid frames loss in flood traffic mode.
Task-number: QTBUG-85611
Change-Id: Iac4671096c1cbfdc8297acf3c99be960b7eaf010
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Diffstat (limited to 'examples/serialbus/can/connectdialog.cpp')
-rw-r--r-- | examples/serialbus/can/connectdialog.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/examples/serialbus/can/connectdialog.cpp b/examples/serialbus/can/connectdialog.cpp index a0430b4..802c25a 100644 --- a/examples/serialbus/can/connectdialog.cpp +++ b/examples/serialbus/can/connectdialog.cpp @@ -82,6 +82,10 @@ ConnectDialog::ConnectDialog(QWidget *parent) : this, &ConnectDialog::pluginChanged); connect(m_ui->interfaceListBox, &QComboBox::currentTextChanged, this, &ConnectDialog::interfaceChanged); + connect(m_ui->ringBufferBox, &QCheckBox::stateChanged, [this](int state){ + m_ui->ringBufferLimitBox->setEnabled(state == Qt::CheckState::Checked); + }); + m_ui->rawFilterEdit->hide(); m_ui->rawFilterLabel->hide(); @@ -195,6 +199,10 @@ void ConnectDialog::updateSettings() m_currentSettings.deviceInterfaceName = m_ui->interfaceListBox->currentText(); m_currentSettings.useConfigurationEnabled = m_ui->useConfigurationBox->isChecked(); + m_currentSettings.useModelRingBuffer = m_ui->ringBufferBox->isChecked(); + m_currentSettings.modelRingBufferSize = m_ui->ringBufferLimitBox->value(); + m_currentSettings.useAutoscroll = m_ui->autoscrollBox->isChecked(); + if (m_currentSettings.useConfigurationEnabled) { m_currentSettings.configurations.clear(); // process LoopBack |