1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-09-03 05:37:50 -04:00

Highlight demod frame when the marker is highlighted on the spectrum

This commit is contained in:
f4exb 2017-11-14 22:58:35 +01:00
parent 84113775aa
commit 3db655fe61
24 changed files with 90 additions and 2 deletions

View File

@ -188,6 +188,11 @@ void ChannelAnalyzerGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void ChannelAnalyzerGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void ChannelAnalyzerGUI::tick() void ChannelAnalyzerGUI::tick()
{ {
Real powDb = CalcDb::dbPower(m_channelAnalyzer->getMagSq()); Real powDb = CalcDb::dbPower(m_channelAnalyzer->getMagSq());
@ -368,6 +373,7 @@ ChannelAnalyzerGUI::ChannelAnalyzerGUI(PluginAPI* pluginAPI, DeviceUISet *device
ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope); ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages())); connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
applySettings(); applySettings();

View File

@ -55,6 +55,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::ChannelAnalyzerGUI* ui; Ui::ChannelAnalyzerGUI* ui;

View File

@ -227,6 +227,11 @@ void ChannelAnalyzerNGGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void ChannelAnalyzerNGGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void ChannelAnalyzerNGGUI::tick() void ChannelAnalyzerNGGUI::tick()
{ {
double powDb = CalcDb::dbPower(m_channelAnalyzer->getMagSq()); double powDb = CalcDb::dbPower(m_channelAnalyzer->getMagSq());
@ -432,6 +437,7 @@ ChannelAnalyzerNGGUI::ChannelAnalyzerNGGUI(PluginAPI* pluginAPI, DeviceUISet *de
ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope); ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages())); connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
applySettings(); applySettings();

View File

@ -55,6 +55,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::ChannelAnalyzerNGGUI* ui; Ui::ChannelAnalyzerNGGUI* ui;

View File

@ -101,6 +101,11 @@ void AMDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void AMDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void AMDemodGUI::on_deltaFrequency_changed(qint64 value) void AMDemodGUI::on_deltaFrequency_changed(qint64 value)
{ {
m_channelMarker.setCenterFrequency(value); m_channelMarker.setCenterFrequency(value);
@ -216,6 +221,7 @@ AMDemodGUI::AMDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandS
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
displaySettings(); displaySettings();
applySettings(true); applySettings(true);

View File

@ -38,6 +38,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::AMDemodGUI* ui; Ui::AMDemodGUI* ui;

View File

@ -245,6 +245,11 @@ void ATVDemodGUI::channelMarkerChangedByCursor()
applyRFSettings(); applyRFSettings();
} }
void ATVDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void ATVDemodGUI::handleSourceMessages() void ATVDemodGUI::handleSourceMessages()
{ {
Message* message; Message* message;
@ -325,6 +330,7 @@ ATVDemodGUI::ATVDemodGUI(PluginAPI* objPluginAPI, DeviceUISet *deviceUISet, Base
ui->scopeGUI->focusOnTrigger(0); // re-focus to take changes into account in the GUI ui->scopeGUI->focusOnTrigger(0); // re-focus to take changes into account in the GUI
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleSourceMessages())); connect(getInputMessageQueue(), SIGNAL(messageEnqueued()), this, SLOT(handleSourceMessages()));
QChar delta = QChar(0x94, 0x03); QChar delta = QChar(0x94, 0x03);

View File

@ -56,6 +56,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::ATVDemodGUI* ui; Ui::ATVDemodGUI* ui;

View File

@ -143,6 +143,11 @@ void BFMDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void BFMDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void BFMDemodGUI::on_deltaFrequency_changed(qint64 value) void BFMDemodGUI::on_deltaFrequency_changed(qint64 value)
{ {
m_channelMarker.setCenterFrequency(value); m_channelMarker.setCenterFrequency(value);
@ -371,6 +376,7 @@ BFMDemodGUI::BFMDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum);

View File

@ -57,6 +57,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::BFMDemodGUI* ui; Ui::BFMDemodGUI* ui;

View File

@ -296,6 +296,7 @@ DSDDemodGUI::DSDDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope); ui->scopeGUI->setBuddies(m_scopeVis->getInputMessageQueue(), m_scopeVis, ui->glScope);
@ -556,6 +557,10 @@ void DSDDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void DSDDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void DSDDemodGUI::tick() void DSDDemodGUI::tick()
{ {

View File

@ -59,6 +59,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
typedef enum typedef enum

View File

@ -105,6 +105,11 @@ void NFMDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void NFMDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void NFMDemodGUI::on_deltaFrequency_changed(qint64 value) void NFMDemodGUI::on_deltaFrequency_changed(qint64 value)
{ {
m_channelMarker.setCenterFrequency(value); m_channelMarker.setCenterFrequency(value);
@ -293,6 +298,7 @@ NFMDemodGUI::NFMDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
QChar delta = QChar(0x94, 0x03); QChar delta = QChar(0x94, 0x03);
ui->deltaSquelch->setText(delta); ui->deltaSquelch->setText(delta);

View File

@ -40,6 +40,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::NFMDemodGUI* ui; Ui::NFMDemodGUI* ui;

View File

@ -88,6 +88,11 @@ void SSBDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void SSBDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void SSBDemodGUI::on_audioBinaural_toggled(bool binaural) void SSBDemodGUI::on_audioBinaural_toggled(bool binaural)
{ {
m_audioBinaural = binaural; m_audioBinaural = binaural;
@ -242,6 +247,7 @@ SSBDemodGUI::SSBDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum);

View File

@ -40,6 +40,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::SSBDemodGUI* ui; Ui::SSBDemodGUI* ui;

View File

@ -85,6 +85,11 @@ void WFMDemodGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void WFMDemodGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void WFMDemodGUI::on_deltaFrequency_changed(qint64 value) void WFMDemodGUI::on_deltaFrequency_changed(qint64 value)
{ {
m_channelMarker.setCenterFrequency(value); m_channelMarker.setCenterFrequency(value);
@ -197,6 +202,7 @@ WFMDemodGUI::WFMDemodGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, Baseban
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
displaySettings(); displaySettings();
applySettings(true); applySettings(true);

View File

@ -38,6 +38,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::WFMDemodGUI* ui; Ui::WFMDemodGUI* ui;

View File

@ -114,6 +114,11 @@ void TCPSrcGUI::channelMarkerChangedByCursor()
applySettings(); applySettings();
} }
void TCPSrcGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void TCPSrcGUI::tick() void TCPSrcGUI::tick()
{ {
double powDb = CalcDb::dbPower(m_tcpSrc->getMagSq()); double powDb = CalcDb::dbPower(m_tcpSrc->getMagSq());
@ -168,6 +173,7 @@ TCPSrcGUI::TCPSrcGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSam
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum);

View File

@ -41,6 +41,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::TCPSrcGUI* ui; Ui::TCPSrcGUI* ui;

View File

@ -102,6 +102,11 @@ void UDPSrcGUI::channelMarkerChangedByCursor()
applySettingsImmediate(); applySettingsImmediate();
} }
void UDPSrcGUI::channelMarkerHighlightedByCursor()
{
setHighlighted(m_channelMarker.getHighlighted());
}
void UDPSrcGUI::tick() void UDPSrcGUI::tick()
{ {
if (m_tickCount % 4 == 0) if (m_tickCount % 4 == 0)
@ -183,6 +188,7 @@ UDPSrcGUI::UDPSrcGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, BasebandSam
m_deviceUISet->addRollupWidget(this); m_deviceUISet->addRollupWidget(this);
connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor())); connect(&m_channelMarker, SIGNAL(changedByCursor()), this, SLOT(channelMarkerChangedByCursor()));
connect(&m_channelMarker, SIGNAL(highlightedByCursor()), this, SLOT(channelMarkerHighlightedByCursor()));
ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum);

View File

@ -57,6 +57,7 @@ public:
public slots: public slots:
void channelMarkerChangedByCursor(); void channelMarkerChangedByCursor();
void channelMarkerHighlightedByCursor();
private: private:
Ui::UDPSrcGUI* ui; Ui::UDPSrcGUI* ui;

View File

@ -5,7 +5,8 @@
#include "ui_glspectrumgui.h" #include "ui_glspectrumgui.h"
RollupWidget::RollupWidget(QWidget* parent) : RollupWidget::RollupWidget(QWidget* parent) :
QWidget(parent) QWidget(parent),
m_highlighted(false)
{ {
setMinimumSize(250, 150); setMinimumSize(250, 150);
setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
@ -99,6 +100,15 @@ void RollupWidget::setTitleColor(const QColor& c)
update(); update();
} }
void RollupWidget::setHighlighted(bool highlighted)
{
if (m_highlighted != highlighted)
{
m_highlighted = highlighted;
update();
}
}
int RollupWidget::arrangeRollups() int RollupWidget::arrangeRollups()
{ {
QFontMetrics fm(font()); QFontMetrics fm(font());
@ -153,7 +163,7 @@ void RollupWidget::paintEvent(QPaintEvent*)
p.drawRect(width() - 5, height() - 5, 5, 5); p.drawRect(width() - 5, height() - 5, 5, 5);
// Rahmen // Rahmen
p.setPen(frame); p.setPen(m_highlighted ? Qt::white : frame);
p.setBrush(palette().window()); p.setBrush(palette().window());
QRectF r(rect()); QRectF r(rect());
r.adjust(0.5, 0.5, -0.5, -0.5); r.adjust(0.5, 0.5, -0.5, -0.5);

View File

@ -10,6 +10,7 @@ class SDRANGEL_API RollupWidget : public QWidget {
public: public:
RollupWidget(QWidget* parent = NULL); RollupWidget(QWidget* parent = NULL);
void setTitleColor(const QColor& c); void setTitleColor(const QColor& c);
void setHighlighted(bool highlighted);
signals: signals:
void widgetRolled(QWidget* widget, bool rollDown); void widgetRolled(QWidget* widget, bool rollDown);
@ -21,6 +22,7 @@ protected:
QColor m_titleColor; QColor m_titleColor;
QColor m_titleTextColor; QColor m_titleTextColor;
bool m_highlighted;
int arrangeRollups(); int arrangeRollups();