From 89ee26aed4d67dbc30df735118d5549b6ac07c9a Mon Sep 17 00:00:00 2001 From: Duke Date: Sat, 16 Mar 2024 10:42:51 -0400 Subject: [PATCH] Add checkbox to enable/disable auto refresh --- src/mainwindow.cpp | 32 +++++++++++++++++++++----------- src/mainwindow.ui | 5 ++++- 2 files changed, 25 insertions(+), 12 deletions(-) diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index e04ad2c..3a5113a 100755 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -2045,18 +2045,28 @@ void MainWindow::setupDebugLogTab() { ui->debugLog->setPlainText( readDebugLines() ); - // Set up timer - QTimer* debugTimer = new QTimer(); - QObject::connect(debugTimer, &QTimer::timeout, [=]() { - uint32_t debugLines = ui->debugLines->text().trimmed().toInt(); - if (debugLines == 0) { debugLines = 50; } - ui->debugLog->setPlainText( readDebugLines(debugLines) ); - DEBUG("Refreshed debug data with debugLines=" << debugLines); + QObject::connect(ui->debugAuto, &QCheckBox::stateChanged, [=](auto checked) { + if(checked) { + QTimer* debugTimer = new QTimer(); + DEBUG("debugAuto checkbox checked"); + // Set up timer + QObject::connect(debugTimer, &QTimer::timeout, [=]() { + uint32_t debugLines = ui->debugLines->text().trimmed().toInt(); + if (debugLines == 0) { debugLines = 50; } + ui->debugLog->setPlainText( readDebugLines(debugLines) ); + DEBUG("Refreshed debug data with debugLines=" << debugLines); + }); + //TODO: allow customizing refresh speed + uint32_t debugRefreshSpeed = 30*1000; + debugTimer->start(debugRefreshSpeed); + DEBUG("started debug refresh at speed=" << debugRefreshSpeed); //Settings::debugRefreshSpeed; + } else { + DEBUG("debugAuto checkbox unchecked"); + //TODO: store debugTimer in class so we can access it here and stop it + // debugTimer->stop(); + } }); - //TODO: allow customizing refresh speed - uint32_t debugRefreshSpeed = 30*1000; - debugTimer->start(debugRefreshSpeed); - DEBUG("started debug refresh at speed=" << debugRefreshSpeed); //Settings::debugRefreshSpeed; + } void MainWindow::setupPeersTab() { diff --git a/src/mainwindow.ui b/src/mainwindow.ui index 242e94b..9b88ada 100644 --- a/src/mainwindow.ui +++ b/src/mainwindow.ui @@ -1183,13 +1183,16 @@ - + Auto refresh false + + true +