Changeset View
Changeset View
Standalone View
Standalone View
testclient/mainwindow.cpp
Show First 20 Lines • Show All 48 Lines • ▼ Show 20 Line(s) | 42 | { | |||
---|---|---|---|---|---|
49 | 49 | | |||
50 | connect(core, &AtCore::atcoreMessage, logWidget, &LogWidget::appendLog); | 50 | connect(core, &AtCore::atcoreMessage, logWidget, &LogWidget::appendLog); | ||
51 | logWidget->appendLog(tr("Attempting to locate Serial Ports")); | 51 | logWidget->appendLog(tr("Attempting to locate Serial Ports")); | ||
52 | core->setSerialTimerInterval(1000); | 52 | core->setSerialTimerInterval(1000); | ||
53 | 53 | | |||
54 | connect(core, &AtCore::stateChanged, this, &MainWindow::printerStateChanged); | 54 | connect(core, &AtCore::stateChanged, this, &MainWindow::printerStateChanged); | ||
55 | connect(core, &AtCore::portsChanged, this, &MainWindow::locateSerialPort); | 55 | connect(core, &AtCore::portsChanged, this, &MainWindow::locateSerialPort); | ||
56 | connect(core, &AtCore::sdCardFileListChanged, sdWidget, &SdWidget::updateFilelist); | 56 | connect(core, &AtCore::sdCardFileListChanged, sdWidget, &SdWidget::updateFilelist); | ||
57 | connect(core, &AtCore::autoTemperatureReportChanged, this, &MainWindow::updateAutoTemperatureReport); | ||||
57 | comboPort->setFocus(Qt::OtherFocusReason); | 58 | comboPort->setFocus(Qt::OtherFocusReason); | ||
58 | } | 59 | } | ||
59 | 60 | | |||
60 | void MainWindow::initMenu() | 61 | void MainWindow::initMenu() | ||
61 | { | 62 | { | ||
62 | QMenu *menuFile = new QMenu(tr("File")); | 63 | QMenu *menuFile = new QMenu(tr("File")); | ||
63 | QAction *actionQuit = new QAction(style()->standardIcon(QStyle::SP_DialogCloseButton), tr("Quit")); | 64 | QAction *actionQuit = new QAction(style()->standardIcon(QStyle::SP_DialogCloseButton), tr("Quit")); | ||
64 | connect(actionQuit, &QAction::triggered, this, &MainWindow::close); | 65 | connect(actionQuit, &QAction::triggered, this, &MainWindow::close); | ||
▲ Show 20 Lines • Show All 129 Lines • ▼ Show 20 Line(s) | 174 | { | |||
194 | plotWidget->addPlot(tr("Target Ext.1")); | 195 | plotWidget->addPlot(tr("Target Ext.1")); | ||
195 | connect(core->temperature().get(), &Temperature::extruderTargetTemperatureChanged, this, [this](float temp) { | 196 | connect(core->temperature().get(), &Temperature::extruderTargetTemperatureChanged, this, [this](float temp) { | ||
196 | checkTemperature(0x03, 0, temp); | 197 | checkTemperature(0x03, 0, temp); | ||
197 | plotWidget->appendPoint(tr("Target Ext.1"), temp); | 198 | plotWidget->appendPoint(tr("Target Ext.1"), temp); | ||
198 | }); | 199 | }); | ||
199 | 200 | | |||
200 | auto timerLayout = new QHBoxLayout; | 201 | auto timerLayout = new QHBoxLayout; | ||
201 | auto lblTimer = new QLabel(tr("Seconds Between Temperature Checks"), this); | 202 | auto lblTimer = new QLabel(tr("Seconds Between Temperature Checks"), this); | ||
202 | auto sbTemperatureTimer = new QSpinBox(this); | 203 | sbTemperatureTimer = new QSpinBox(this); | ||
203 | sbTemperatureTimer->setRange(0, 90); | 204 | sbTemperatureTimer->setRange(0, 90); | ||
204 | | ||||
205 | connect(sbTemperatureTimer, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int value) { | 205 | connect(sbTemperatureTimer, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int value) { | ||
206 | core->setTemperatureTimerInterval(value * 1000); | 206 | core->setTemperatureTimerInterval(value * 1000); | ||
207 | }); | 207 | }); | ||
208 | 208 | connect(core, &AtCore::temperatureTimerIntervalChanged, this, [this](int value) { | |||
209 | connect(core, &AtCore::temperatureTimerIntervalChanged, this, [sbTemperatureTimer](int value) { | | |||
210 | if (value != sbTemperatureTimer->value()) { | 209 | if (value != sbTemperatureTimer->value()) { | ||
211 | sbTemperatureTimer->blockSignals(true); | 210 | sbTemperatureTimer->blockSignals(true); | ||
212 | sbTemperatureTimer->setValue(value / 1000); | 211 | sbTemperatureTimer->setValue(value / 1000); | ||
213 | sbTemperatureTimer->blockSignals(false); | 212 | sbTemperatureTimer->blockSignals(false); | ||
214 | } | 213 | } | ||
215 | }); | 214 | }); | ||
216 | 215 | | |||
217 | timerLayout->addWidget(lblTimer); | 216 | timerLayout->addWidget(lblTimer); | ||
▲ Show 20 Lines • Show All 329 Lines • ▼ Show 20 Line(s) | 545 | case AtCore::BUSY: | |||
547 | stateString = tr("Printing"); | 546 | stateString = tr("Printing"); | ||
548 | printWidget->setPrintText(tr("Pause Print")); | 547 | printWidget->setPrintText(tr("Pause Print")); | ||
549 | break; | 548 | break; | ||
550 | 549 | | |||
551 | case AtCore::DISCONNECTED: | 550 | case AtCore::DISCONNECTED: | ||
552 | if (connectionTimer->isActive()) { | 551 | if (connectionTimer->isActive()) { | ||
553 | connectionTimer->stop(); | 552 | connectionTimer->stop(); | ||
554 | } | 553 | } | ||
554 | sbTemperatureTimer->setValue(0); | ||||
555 | stateString = QStringLiteral("Not Connected"); | 555 | stateString = QStringLiteral("Not Connected"); | ||
556 | buttonConnect->setText(tr("Connect")); | 556 | buttonConnect->setText(tr("Connect")); | ||
557 | setConnectionWidgetsEnabled(true); | 557 | setConnectionWidgetsEnabled(true); | ||
558 | setDangeriousDocksDisabled(true); | 558 | setDangeriousDocksDisabled(true); | ||
559 | break; | 559 | break; | ||
560 | 560 | | |||
561 | case AtCore::CONNECTING: | 561 | case AtCore::CONNECTING: | ||
562 | stateString = QStringLiteral("Connecting"); | 562 | stateString = QStringLiteral("Connecting"); | ||
▲ Show 20 Lines • Show All 55 Lines • ▼ Show 20 Line(s) | |||||
618 | } | 618 | } | ||
619 | 619 | | |||
620 | void MainWindow::setConnectionWidgetsEnabled(bool enabled) | 620 | void MainWindow::setConnectionWidgetsEnabled(bool enabled) | ||
621 | { | 621 | { | ||
622 | comboBAUD->setEnabled(enabled); | 622 | comboBAUD->setEnabled(enabled); | ||
623 | comboPlugin->setEnabled(enabled); | 623 | comboPlugin->setEnabled(enabled); | ||
624 | comboPort->setEnabled(enabled); | 624 | comboPort->setEnabled(enabled); | ||
625 | } | 625 | } | ||
626 | | ||||
627 | void MainWindow::updateAutoTemperatureReport(bool autoReport) | ||||
628 | { | ||||
629 | disconnect(sbTemperatureTimer, QOverload<int>::of(&QSpinBox::valueChanged), this, {}); | ||||
630 | disconnect(core, &AtCore::temperatureTimerIntervalChanged, this, {}); | ||||
631 | disconnect(core, &AtCore::autoCheckTemperatureIntervalChanged, this, {}); | ||||
632 | | ||||
633 | if (autoReport) { | ||||
634 | connect(sbTemperatureTimer, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int value) { | ||||
635 | core->setAutoCheckTemperatureInterval(value); | ||||
636 | }); | ||||
637 | connect(core, &AtCore::autoCheckTemperatureIntervalChanged, this, [this](int value) { | ||||
638 | if (value != sbTemperatureTimer->value()) { | ||||
639 | sbTemperatureTimer->blockSignals(true); | ||||
640 | sbTemperatureTimer->setValue(value); | ||||
641 | sbTemperatureTimer->blockSignals(false); | ||||
642 | } | ||||
643 | }); | ||||
644 | } else { | ||||
645 | connect(sbTemperatureTimer, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int value) { | ||||
646 | core->setTemperatureTimerInterval(value * 1000); | ||||
647 | }); | ||||
648 | connect(core, &AtCore::temperatureTimerIntervalChanged, this, [this](int value) { | ||||
649 | if (value != sbTemperatureTimer->value()) { | ||||
650 | sbTemperatureTimer->blockSignals(true); | ||||
651 | sbTemperatureTimer->setValue(value / 1000); | ||||
652 | sbTemperatureTimer->blockSignals(false); | ||||
653 | } | ||||
654 | }); | ||||
655 | } | ||||
patrickelectric: would it be easier to do the if/else with value and 1000 ? | |||||
656 | } |
would it be easier to do the if/else with value and 1000 ?