From 34ff36926e9594107392f202a3d8f19abaaf1d94 Mon Sep 17 00:00:00 2001 From: f4exb Date: Fri, 27 Apr 2018 06:59:36 +0200 Subject: [PATCH] SSB demod: fixed span slider aspect --- plugins/channelrx/demodssb/ssbdemodgui.cpp | 20 +++++------ plugins/channelrx/demodssb/ssbdemodgui.h | 2 +- plugins/channelrx/demodssb/ssbdemodgui.ui | 41 +++++++++++++++------- plugins/channelrx/demodssb/ssbplugin.cpp | 2 +- 4 files changed, 40 insertions(+), 25 deletions(-) diff --git a/plugins/channelrx/demodssb/ssbdemodgui.cpp b/plugins/channelrx/demodssb/ssbdemodgui.cpp index 9a8ad9c3a..42a43237e 100644 --- a/plugins/channelrx/demodssb/ssbdemodgui.cpp +++ b/plugins/channelrx/demodssb/ssbdemodgui.cpp @@ -85,7 +85,7 @@ bool SSBDemodGUI::handleMessage(const Message& message) if (DSPConfigureAudio::match(message)) { qDebug("SSBDemodGUI::handleMessage: DSPConfigureAudio: %d", m_ssbDemod->getAudioSampleRate()); - applyBandwidths(); // will update spectrum details with new sample rate + applyBandwidths(5 - ui->spanLog2->value()); // will update spectrum details with new sample rate return true; } else @@ -136,7 +136,7 @@ void SSBDemodGUI::on_audioFlipChannels_toggled(bool flip) void SSBDemodGUI::on_dsb_toggled(bool dsb) { ui->flipSidebands->setEnabled(!dsb); - applyBandwidths(); + applyBandwidths(5 - ui->spanLog2->value()); } void SSBDemodGUI::on_deltaFrequency_changed(qint64 value) @@ -148,12 +148,12 @@ void SSBDemodGUI::on_deltaFrequency_changed(qint64 value) void SSBDemodGUI::on_BW_valueChanged(int value __attribute__((unused))) { - applyBandwidths(); + applyBandwidths(5 - ui->spanLog2->value()); } void SSBDemodGUI::on_lowCut_valueChanged(int value __attribute__((unused))) { - applyBandwidths(); + applyBandwidths(5 - ui->spanLog2->value()); } void SSBDemodGUI::on_volume_valueChanged(int value) @@ -207,11 +207,11 @@ void SSBDemodGUI::on_audioMute_toggled(bool checked) void SSBDemodGUI::on_spanLog2_valueChanged(int value) { - if ((value < 1) || (value > 5)) { + if ((value < 0) || (value > 4)) { return; } - applyBandwidths(); + applyBandwidths(5 - ui->spanLog2->value()); } void SSBDemodGUI::on_flipSidebands_clicked(bool checked __attribute__((unused))) @@ -311,7 +311,7 @@ SSBDemodGUI::SSBDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban m_iconDSBLSB.addPixmap(QPixmap("://lsb.png"), QIcon::Normal, QIcon::Off); displaySettings(); - applyBandwidths(true); // does applySettings(true) + applyBandwidths(5 - ui->spanLog2->value(), true); // does applySettings(true) } SSBDemodGUI::~SSBDemodGUI() @@ -342,10 +342,10 @@ void SSBDemodGUI::applySettings(bool force) } } -void SSBDemodGUI::applyBandwidths(bool force) +void SSBDemodGUI::applyBandwidths(int spanLog2, bool force) { bool dsb = ui->dsb->isChecked(); - int spanLog2 = ui->spanLog2->value(); + //int spanLog2 = ui->spanLog2->value(); m_spectrumRate = m_ssbDemod->getAudioSampleRate() / (1<BW->value(); int lw = ui->lowCut->value(); @@ -493,7 +493,7 @@ void SSBDemodGUI::displaySettings() ui->BW->blockSignals(true); ui->dsb->setChecked(m_settings.m_dsb); - ui->spanLog2->setValue(m_settings.m_spanLog2); + ui->spanLog2->setValue(5 - m_settings.m_spanLog2); ui->BW->setValue(m_settings.m_rfBandwidth / 100.0); QString s = QString::number(m_settings.m_rfBandwidth/1000.0, 'f', 1); diff --git a/plugins/channelrx/demodssb/ssbdemodgui.h b/plugins/channelrx/demodssb/ssbdemodgui.h index 24eca4639..20639178c 100644 --- a/plugins/channelrx/demodssb/ssbdemodgui.h +++ b/plugins/channelrx/demodssb/ssbdemodgui.h @@ -70,7 +70,7 @@ private: bool blockApplySettings(bool block); void applySettings(bool force = false); - void applyBandwidths(bool force = false); + void applyBandwidths(int spanLog2, bool force = false); void displaySettings(); void displayAGCPowerThreshold(int value); diff --git a/plugins/channelrx/demodssb/ssbdemodgui.ui b/plugins/channelrx/demodssb/ssbdemodgui.ui index 75522cec1..d75d76a66 100644 --- a/plugins/channelrx/demodssb/ssbdemodgui.ui +++ b/plugins/channelrx/demodssb/ssbdemodgui.ui @@ -274,11 +274,20 @@ - - 0 - + + + 50 + 0 + + + + + 50 + 16777215 + + Span @@ -290,33 +299,39 @@ Demod frequency span - 1 + 0 - 5 + 4 1 - 3 + 2 - 3 + 2 Qt::Horizontal - - true - - - true - + + + 50 + 0 + + + + + 50 + 16777215 + + 6.0k diff --git a/plugins/channelrx/demodssb/ssbplugin.cpp b/plugins/channelrx/demodssb/ssbplugin.cpp index af380205a..2e04494ed 100644 --- a/plugins/channelrx/demodssb/ssbplugin.cpp +++ b/plugins/channelrx/demodssb/ssbplugin.cpp @@ -8,7 +8,7 @@ const PluginDescriptor SSBPlugin::m_pluginDescriptor = { QString("SSB Demodulator"), - QString("3.14.4"), + QString("3.14.5"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true,