From c380e172b032fa8ec46c8ab4e490ff8850dc19f8 Mon Sep 17 00:00:00 2001 From: Collin Kidder Date: Sun, 11 Feb 2018 18:32:18 -0500 Subject: [PATCH] Add UI elements for a new remote connection system. Just UI and settings for now. --- connections/connectionwindow.cpp | 11 + connections/connectionwindow.h | 1 + mainsettingsdialog.cpp | 9 + ui/connectionwindow.ui | 33 +- ui/mainsettingsdialog.ui | 536 +++++++++++++++++-------------- 5 files changed, 343 insertions(+), 247 deletions(-) diff --git a/connections/connectionwindow.cpp b/connections/connectionwindow.cpp index 492a7aa..9ecd213 100644 --- a/connections/connectionwindow.cpp +++ b/connections/connectionwindow.cpp @@ -52,6 +52,7 @@ ConnectionWindow::ConnectionWindow(QWidget *parent) : connect(ui->rbGVRET, &QAbstractButton::clicked, this, &ConnectionWindow::handleConnTypeChanged); connect(ui->rbKvaser, &QAbstractButton::clicked, this, &ConnectionWindow::handleConnTypeChanged); connect(ui->rbSocketCAN, &QAbstractButton::clicked, this, &ConnectionWindow::handleConnTypeChanged); + connect(ui->rbRemote, &QAbstractButton::clicked, this, &ConnectionWindow::handleConnTypeChanged); connect(ui->tableConnections->selectionModel(), &QItemSelectionModel::currentRowChanged, this, &ConnectionWindow::currentRowChanged); connect(ui->btnActivateAll, &QPushButton::clicked, this, &ConnectionWindow::handleEnableAll); connect(ui->btnDeactivateAll, &QPushButton::clicked, this, &ConnectionWindow::handleDisableAll); @@ -226,6 +227,7 @@ void ConnectionWindow::handleConnTypeChanged() if (ui->rbGVRET->isChecked()) selectSerial(); if (ui->rbKvaser->isChecked()) selectKvaser(); if (ui->rbSocketCAN->isChecked()) selectSocketCan(); + if (ui->rbRemote->isChecked()) selectRemote(); } @@ -327,6 +329,7 @@ void ConnectionWindow::handleSendText() { void ConnectionWindow::selectSerial() { + ui->lPort->setText("Port:"); /* set combobox page visible */ ui->stPort->setCurrentWidget(ui->cbPage); @@ -339,16 +342,24 @@ void ConnectionWindow::selectSerial() void ConnectionWindow::selectKvaser() { + ui->lPort->setText("Port:"); /* set combobox page visible */ ui->stPort->setCurrentWidget(ui->cbPage); } void ConnectionWindow::selectSocketCan() { + ui->lPort->setText("Port:"); /* set edit text page visible */ ui->stPort->setCurrentWidget(ui->etPage); } +void ConnectionWindow::selectRemote() +{ + ui->lPort->setText("Access Key:"); + ui->stPort->setCurrentWidget(ui->etPage); +} + void ConnectionWindow::setSpeed(int speed0) { } diff --git a/connections/connectionwindow.h b/connections/connectionwindow.h index 24bd0a8..3d000ba 100644 --- a/connections/connectionwindow.h +++ b/connections/connectionwindow.h @@ -69,6 +69,7 @@ private: void selectSerial(); void selectKvaser(); void selectSocketCan(); + void selectRemote(); bool isSocketCanAvailable(); int getSpeed(); QString getPortName(); diff --git a/mainsettingsdialog.cpp b/mainsettingsdialog.cpp index 8703855..2dd0a38 100644 --- a/mainsettingsdialog.cpp +++ b/mainsettingsdialog.cpp @@ -28,6 +28,9 @@ MainSettingsDialog::MainSettingsDialog(QWidget *parent) : ui->cbValidate->setChecked(settings->value("Main/ValidateComm", true).toBool()); ui->spinPlaybackSpeed->setValue(settings->value("Playback/DefSpeed", 5).toInt()); ui->lineClockFormat->setText(settings->value("Main/TimeFormat", "MMM-dd HH:mm:ss.zzz").toString()); + ui->lineRemoteHost->setText(settings->value("Remote/Host", "api.savvycan.com").toString()); + ui->lineRemotePort->setText(settings->value("Remote/Port", "21315").toString()); // = 0x5343 = SC. Yep, really creative port number + ui->cbAutoStartRemote->setChecked(settings->value("Remote/AutoStart", false).toBool()); ui->spinFontSize->setValue(settings->value("Main/FontSize", ui->cbDisplayHex->font().pointSize()).toUInt()); @@ -76,6 +79,9 @@ MainSettingsDialog::MainSettingsDialog(QWidget *parent) : connect(ui->cbUseFiltered, SIGNAL(toggled(bool)), this, SLOT(updateSettings())); connect(ui->lineClockFormat, SIGNAL(editingFinished()), this, SLOT(updateSettings())); connect(ui->cbUseOpenGL, SIGNAL(toggled(bool)), this, SLOT(updateSettings())); + connect(ui->cbAutoStartRemote, SIGNAL(toggled(bool)), this, SLOT(updateSettings())); + connect(ui->lineRemoteHost, SIGNAL(editingFinished()), this, SLOT(updateSettings())); + connect(ui->lineRemotePort, SIGNAL(editingFinished()), this, SLOT(updateSettings())); installEventFilter(this); } @@ -130,6 +136,9 @@ void MainSettingsDialog::updateSettings() settings->setValue("Main/UseOpenGL", ui->cbUseOpenGL->isChecked()); settings->setValue("Main/TimeFormat", ui->lineClockFormat->text()); settings->setValue("Main/FontSize", ui->spinFontSize->value()); + settings->setValue("Remote/Host", ui->lineRemoteHost->text()); + settings->setValue("Remote/Port", ui->lineRemotePort->text()); + settings->setValue("Remote/AutoStart", ui->cbAutoStartRemote->isChecked()); settings->sync(); emit updatedSettings(); diff --git a/ui/connectionwindow.ui b/ui/connectionwindow.ui index d8b48f7..197703f 100644 --- a/ui/connectionwindow.ui +++ b/ui/connectionwindow.ui @@ -80,18 +80,8 @@ Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - - - GVRET Serial - - - true - - - - + + false @@ -101,7 +91,17 @@ - + + + + GVRET Serial + + + true + + + + false @@ -111,6 +111,13 @@ + + + + Remote Host + + + diff --git a/ui/mainsettingsdialog.ui b/ui/mainsettingsdialog.ui index c1e2fb8..05c7db9 100644 --- a/ui/mainsettingsdialog.ui +++ b/ui/mainsettingsdialog.ui @@ -6,260 +6,330 @@ 0 0 - 400 - 850 + 965 + 585 Main Settings - + - - - General Settings: - - - - - - Save/Restore window positions and sizes - - - - - - - Display values as hexadecimal - - - - - - - Require validation of GVRET connection - - - - - - - Time Keeping - - - - - - Seconds/Microseconds are dongle based - - - - - - - - - Seconds - - - - - - - Microseconds - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - System Clock - - - - - - - - - - - Time Format String: - - - - - - - - - - - - - - - Use filtered frames in sub-windows - - - - - - - OpenGL Accelerated AntiAliased Graphing - - - - - - - Font Size - - - - - - 7 - - - 15 - - - 9 - - - - - - - - - - - - - Main Form Settings: - - - - - - Autoscroll main frame window by default - - - - - - - - - - Flowview Settings: - - - - - - Use timestamp mode by default - - - - - - - Set Auto Reference by default - - - - - - - - - - Playback Window Settings: - - - - - - Loop by default - - - - - + + + + + Main Form Settings: + + - + - Default playback speed (ms) - - - - - - - 1000 + Autoscroll main frame window by default - - - + + + + + + General Settings: + + - + - Default Sending Bus + Save/Restore window positions and sizes - + + + Display values as hexadecimal + + + + + + + Require validation of GVRET connection + + + + + + + Use filtered frames in sub-windows + + + + + + + OpenGL Accelerated AntiAliased Graphing + + + + + + + Time Keeping + + + + + + Seconds/Microseconds are dongle based + + + + + + + + + Seconds + + + + + + + Microseconds + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + System Clock + + + + + + + + + + + Time Format String: + + + + + + + + + + + + + + + Font Size + + + + + + 7 + + + 15 + + + 9 + + + + + + + + + + Flowview Settings: + + + + + + Use timestamp mode by default + + + + + + + Set Auto Reference by default + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + - - - + + + - - - File Info and Comparator Settings: - - - - - - Auto expand all nodes - - - - - - - - - - Some settings will not take effect until the application is restarted - - - true - - + + + + + Playback Window Settings: + + + + + + Loop by default + + + + + + + + + Default playback speed (ms) + + + + + + + 1000 + + + + + + + + + + + Default Sending Bus + + + + + + + + + + + + + + + File Info and Comparator Settings: + + + + + + Auto expand all nodes + + + + + + + + + + Remote Connection: + + + + + + Host: + + + + + + + Port: + + + + + + + + + + + + + Auto start remote hosting + + + + + + + + + + Some settings will not take effect until the application is restarted + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + @@ -271,8 +341,6 @@ rbMicros rbSysClock lineClockFormat - cbUseFiltered - cbUseOpenGL cbMainAutoScroll cbFlowUseTimestamp cbFlowAutoRef