From 048ef1bf67e9ceeaddf19cebacf6314218a580a6 Mon Sep 17 00:00:00 2001 From: f4exb Date: Wed, 17 May 2017 23:22:17 +0200 Subject: [PATCH] DSD demod: use ValueDialZ for channel delta frequency value dial --- plugins/channelrx/demoddsd/dsddemodgui.cpp | 27 ++--------- plugins/channelrx/demoddsd/dsddemodgui.h | 3 +- plugins/channelrx/demoddsd/dsddemodgui.ui | 53 +++++++++++----------- 3 files changed, 32 insertions(+), 51 deletions(-) diff --git a/plugins/channelrx/demoddsd/dsddemodgui.cpp b/plugins/channelrx/demoddsd/dsddemodgui.cpp index c803389e4..81180dc61 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.cpp +++ b/plugins/channelrx/demoddsd/dsddemodgui.cpp @@ -187,27 +187,9 @@ void DSDDemodGUI::viewChanged() applySettings(); } -void DSDDemodGUI::on_deltaMinus_toggled(bool minus) +void DSDDemodGUI::on_deltaFrequency_changed(qint64 value) { - int deltaFrequency = m_channelMarker.getCenterFrequency(); - bool minusDelta = (deltaFrequency < 0); - - if (minus ^ minusDelta) // sign change - { - m_channelMarker.setCenterFrequency(-deltaFrequency); - } -} - -void DSDDemodGUI::on_deltaFrequency_changed(quint64 value) -{ - if (ui->deltaMinus->isChecked()) - { - m_channelMarker.setCenterFrequency(-value); - } - else - { - m_channelMarker.setCenterFrequency(value); - } + m_channelMarker.setCenterFrequency(-value); } void DSDDemodGUI::on_rfBW_valueChanged(int value) @@ -349,7 +331,9 @@ DSDDemodGUI::DSDDemodGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidg ui->audioMute->setStyleSheet("QToolButton { background:rgb(79,79,79); }"); + ui->deltaFrequencyLabel->setText(QString("%1f").arg(QChar(0x94, 0x03))); ui->deltaFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold)); + ui->deltaFrequency->setValueRange(false, 7, -9999999, 9999999); ui->channelPowerMeter->setColorTheme(LevelMeterSignalDB::ColorGreenAndBlue); m_channelizer = new DownChannelizer(m_dsdDemod); @@ -410,8 +394,7 @@ void DSDDemodGUI::applySettings() 48000, m_channelMarker.getCenterFrequency()); - ui->deltaFrequency->setValue(abs(m_channelMarker.getCenterFrequency())); - ui->deltaMinus->setChecked(m_channelMarker.getCenterFrequency() < 0); + ui->deltaFrequency->setValue(m_channelMarker.getCenterFrequency()); ui->rfBWText->setText(QString("%1k").arg(ui->rfBW->value() / 10.0, 0, 'f', 1)); ui->demodGainText->setText(QString("%1").arg(ui->demodGain->value() / 100.0, 0, 'f', 2)); ui->fmDeviationText->setText(QString("%1k").arg(ui->fmDeviation->value() / 10.0, 0, 'f', 1)); diff --git a/plugins/channelrx/demoddsd/dsddemodgui.h b/plugins/channelrx/demoddsd/dsddemodgui.h index cc605d47c..ec86ae1c9 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.h +++ b/plugins/channelrx/demoddsd/dsddemodgui.h @@ -59,8 +59,7 @@ public: private slots: void viewChanged(); void formatStatusText(); - void on_deltaFrequency_changed(quint64 value); - void on_deltaMinus_toggled(bool minus); + void on_deltaFrequency_changed(qint64 value); void on_rfBW_valueChanged(int index); void on_demodGain_valueChanged(int value); void on_volume_valueChanged(int value); diff --git a/plugins/channelrx/demoddsd/dsddemodgui.ui b/plugins/channelrx/demoddsd/dsddemodgui.ui index b3581f135..5b81af8cd 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.ui +++ b/plugins/channelrx/demoddsd/dsddemodgui.ui @@ -6,19 +6,19 @@ 0 0 - 647 + 680 841 - + 0 0 - 640 + 680 0 @@ -36,19 +36,19 @@ 0 0 - 640 - 171 + 678 + 172 - + 0 0 - 632 + 678 0 @@ -78,27 +78,24 @@ + + 6 + - - - Frequency shift direction + + + + 16 + 0 + - ... - - - - :/plus.png - :/minus.png - - - - true + Df - + 0 @@ -126,6 +123,8 @@ Demod shift frequency from center in Hz + deltaFrequencyLabel + deltaFrequencyLabel @@ -972,12 +971,6 @@
gui/rollupwidget.h
1 - - ValueDial - QWidget -
gui/valuedial.h
- 1 -
ButtonSwitch QToolButton @@ -1001,6 +994,12 @@
gui/glscopegui.h
1
+ + ValueDialZ + QWidget +
gui/valuedialz.h
+ 1 +