kopia lustrzana https://gitlab.com/eliggett/wfview
Added click-drag tuning. Needs refinement but it's a start.
rodzic
0c530303c7
commit
65b4a9cc17
29
wfmain.cpp
29
wfmain.cpp
|
@ -724,6 +724,8 @@ void wfmain::setupPlots()
|
|||
connect(wf, SIGNAL(mouseDoubleClick(QMouseEvent*)), this, SLOT(handleWFDoubleClick(QMouseEvent*)));
|
||||
connect(plot, SIGNAL(mousePress(QMouseEvent*)), this, SLOT(handlePlotClick(QMouseEvent*)));
|
||||
connect(wf, SIGNAL(mousePress(QMouseEvent*)), this, SLOT(handleWFClick(QMouseEvent*)));
|
||||
connect(plot, SIGNAL(mouseRelease(QMouseEvent*)), this, SLOT(handlePlotMouseRelease(QMouseEvent*)));
|
||||
connect(plot, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(handlePlotMouseMove(QMouseEvent *)));
|
||||
connect(wf, SIGNAL(mouseWheel(QWheelEvent*)), this, SLOT(handleWFScroll(QWheelEvent*)));
|
||||
connect(plot, SIGNAL(mouseWheel(QWheelEvent*)), this, SLOT(handlePlotScroll(QWheelEvent*)));
|
||||
spectrumDrawLock = false;
|
||||
|
@ -3969,6 +3971,31 @@ void wfmain::handlePlotClick(QMouseEvent *me)
|
|||
{
|
||||
double x = plot->xAxis->pixelToCoord(me->pos().x());
|
||||
showStatusBarText(QString("Selected %1 MHz").arg(x));
|
||||
this->mousePressFreq = x;
|
||||
}
|
||||
|
||||
void wfmain::handlePlotMouseRelease(QMouseEvent *me)
|
||||
{
|
||||
this->mouseReleaseFreq = plot->xAxis->pixelToCoord(me->pos().x());
|
||||
double delta = mouseReleaseFreq - mousePressFreq;
|
||||
qInfo(logGui()) << "Mouse release delta: " << delta;
|
||||
}
|
||||
|
||||
void wfmain::handlePlotMouseMove(QMouseEvent *me)
|
||||
{
|
||||
if(me->buttons() == Qt::LeftButton)
|
||||
{
|
||||
double delta = plot->xAxis->pixelToCoord(me->pos().x()) - mousePressFreq;
|
||||
qInfo(logGui()) << "Mouse moving delta: " << delta;
|
||||
if( (( delta < -0.0001 ) || (delta > 0.0001)) && ((delta < 0.501) && (delta > -0.501)) )
|
||||
{
|
||||
freqt freqGo;
|
||||
freqGo.Hz = ( freq.MHzDouble + delta)*1E6;
|
||||
//freqGo.Hz = roundFrequency(freqGo.Hz, tsWfScrollHz);
|
||||
freqGo.MHzDouble = (float)freqGo.Hz / 1E6;
|
||||
issueCmdUniquePriority(cmdSetFreq, freqGo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void wfmain::handleWFClick(QMouseEvent *me)
|
||||
|
@ -5311,7 +5338,7 @@ void wfmain::receivePassband(quint8 pass)
|
|||
}
|
||||
passBand = (double)(calc / 1000000.0);
|
||||
|
||||
qInfo() << "Got Passband" << passBand << "(" << pass << ")";
|
||||
qDebug(logGui()) << "Got Passband" << passBand << "(" << pass << ")";
|
||||
}
|
||||
|
||||
void wfmain::receiveMeter(meterKind inMeter, unsigned char level)
|
||||
|
|
5
wfmain.h
5
wfmain.h
|
@ -283,6 +283,8 @@ private slots:
|
|||
void receiveStatusUpdate(networkStatus status);
|
||||
void receiveNetworkAudioLevels(networkAudioLevels l);
|
||||
void handlePlotClick(QMouseEvent *);
|
||||
void handlePlotMouseRelease(QMouseEvent *);
|
||||
void handlePlotMouseMove(QMouseEvent *);
|
||||
void handlePlotDoubleClick(QMouseEvent *);
|
||||
void handleWFClick(QMouseEvent *);
|
||||
void handleWFDoubleClick(QMouseEvent *);
|
||||
|
@ -787,6 +789,9 @@ private:
|
|||
double oldPlotCeiling = 999;
|
||||
double passBand = 0.0;
|
||||
|
||||
double mousePressFreq = 0.0;
|
||||
double mouseReleaseFreq = 0.0;
|
||||
|
||||
QVector <QByteArray> wfimage;
|
||||
unsigned int wfLengthMax;
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue