diff --git a/mainwindow.cpp b/mainwindow.cpp index 74e3b33..d5a8e9a 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -2398,6 +2398,7 @@ void MainWindow::readSettings() } setDrift(m_settings->value("TimeDrift", 0).toInt()); ui->actionShow_Waterfall_Controls->setChecked(m_wideGraph->controlsVisible()); + ui->actionShow_Waterfall_Time_Drift_Controls->setChecked(m_wideGraph->timeControlsVisible()); ui->actionShow_Tooltips->setChecked(m_settings->value("ShowTooltips", true).toBool()); ui->actionShow_Statusbar->setChecked(m_settings->value("ShowStatusbar",true).toBool()); ui->statusBar->setVisible(ui->actionShow_Statusbar->isChecked()); @@ -2969,8 +2970,8 @@ void MainWindow::on_menuWindow_aboutToShow(){ auto vsizes = ui->mainSplitter->sizes(); ui->actionShow_Frequency_Clock->setChecked(vsizes.first() > 0); ui->actionShow_Waterfall->setChecked(vsizes.last() > 0); - ui->actionShow_Waterfall_Controls->setChecked(m_wideGraph->controlsVisible()); - ui->actionShow_Waterfall_Controls->setEnabled(ui->actionShow_Waterfall->isChecked()); + ui->actionShow_Waterfall_Controls->setChecked(ui->actionShow_Waterfall->isChecked() && m_wideGraph->controlsVisible()); + ui->actionShow_Waterfall_Time_Drift_Controls->setChecked(ui->actionShow_Waterfall->isChecked() && m_wideGraph->timeControlsVisible()); QMenu * sortBandMenu = new QMenu(this->menuBar()); //ui->menuWindow); buildBandActivitySortByMenu(sortBandMenu); @@ -3168,6 +3169,16 @@ void MainWindow::on_actionShow_Waterfall_triggered(bool checked){ void MainWindow::on_actionShow_Waterfall_Controls_triggered(bool checked){ m_wideGraph->setControlsVisible(checked); + if(checked && !ui->bandHorizontalWidget->isVisible()){ + on_actionShow_Waterfall_triggered(checked); + } +} + +void MainWindow::on_actionShow_Waterfall_Time_Drift_Controls_triggered(bool checked){ + m_wideGraph->setTimeControlsVisible(checked); + if(checked && !ui->bandHorizontalWidget->isVisible()){ + on_actionShow_Waterfall_triggered(checked); + } } void MainWindow::on_actionReset_Window_Sizes_triggered(){ diff --git a/mainwindow.h b/mainwindow.h index b9863f5..dccbfad 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -217,6 +217,7 @@ private slots: void on_actionShow_Call_Activity_triggered(bool checked); void on_actionShow_Waterfall_triggered(bool checked); void on_actionShow_Waterfall_Controls_triggered(bool checked); + void on_actionShow_Waterfall_Time_Drift_Controls_triggered(bool checked); void on_actionReset_Window_Sizes_triggered(); void on_actionSettings_triggered(); void openSettings(int tab=0); diff --git a/widegraph.cpp b/widegraph.cpp index 66aa649..aa3cebe 100644 --- a/widegraph.cpp +++ b/widegraph.cpp @@ -708,10 +708,20 @@ void WideGraph::setDialFreq(double d) //setDialFreq ui->widePlot->setDialFreq(d); } +void WideGraph::setTimeControlsVisible(bool visible){ + setControlsVisible(visible); + ui->tabWidget->setCurrentWidget(ui->timingTab); +} + +bool WideGraph::timeControlsVisible(){ + return controlsVisible() && ui->tabWidget->currentWidget() == ui->timingTab; +} + void WideGraph::setControlsVisible(bool visible) { ui->cbControls->setChecked(!visible); ui->cbControls->setChecked(visible); + ui->tabWidget->setCurrentWidget(ui->controlTab); } bool WideGraph::controlsVisible(){ diff --git a/widegraph.h b/widegraph.h index f5facc7..dd6af7f 100644 --- a/widegraph.h +++ b/widegraph.h @@ -84,6 +84,8 @@ public slots: void wideFreezeDecode(int n); void setFreq2(int rxFreq, int txFreq); void setDialFreq(double d); + void setTimeControlsVisible(bool visible); + bool timeControlsVisible(); void setControlsVisible(bool visible); bool controlsVisible(); void setDrift(int n); diff --git a/widegraph.ui b/widegraph.ui index ce7b81b..cd9960c 100644 --- a/widegraph.ui +++ b/widegraph.ui @@ -1037,6 +1037,12 @@ <html><head/><body><p>Automatically synchronize time drift every second to decodes of NORMAL and SLOW signals observed.</p><p>This process is CPU intensive and may cause abnormal decoder behavior if run for extended periods of time. Default operation should be paired with stopping automatic time drift after signals have been decoded. </p></body></html> + + QPushButton:checked { + font-weight:bold; + color:black; +} + Start Automatic Time Drift