[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r11572 - gnuradio/trunk/gr-qtgui/src/lib
From: |
trondeau |
Subject: |
[Commit-gnuradio] r11572 - gnuradio/trunk/gr-qtgui/src/lib |
Date: |
Tue, 11 Aug 2009 16:02:59 -0600 (MDT) |
Author: trondeau
Date: 2009-08-11 16:02:56 -0600 (Tue, 11 Aug 2009)
New Revision: 11572
Modified:
gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.cc
gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.h
gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.cc
gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.h
gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.cc
gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.h
gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.cc
gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.h
gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.cc
gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.h
gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.cc
gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.h
gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.ui
Log:
Cleaning up Qt code. This mostly reformats the code to be more consistent with
our style. It also changes the layout to use Qt layouts for proper resizing of
the GUI. Only the QwtPlots need to be resized manually.
Modified: gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -32,7 +32,9 @@
}
};
-ConstellationDisplayPlot::ConstellationDisplayPlot(QWidget*
parent):QwtPlot(parent){
+ConstellationDisplayPlot::ConstellationDisplayPlot(QWidget* parent)
+ : QwtPlot(parent)
+{
timespec_reset(&_lastReplot);
resize(parent->width(), parent->height());
@@ -106,7 +108,8 @@
this, SLOT( LegendEntryChecked(QwtPlotItem *, bool ) ));
}
-ConstellationDisplayPlot::~ConstellationDisplayPlot(){
+ConstellationDisplayPlot::~ConstellationDisplayPlot()
+{
delete[] _realDataPoints;
delete[] _imagDataPoints;
@@ -149,7 +152,16 @@
}
}
-void ConstellationDisplayPlot::PlotNewData(const double* realDataPoints, const
double* imagDataPoints, const int64_t numDataPoints){
+void
+ConstellationDisplayPlot::resizeSlot( QSize *s )
+{
+ resize(s->width(), s->height());
+}
+
+void ConstellationDisplayPlot::PlotNewData(const double* realDataPoints,
+ const double* imagDataPoints,
+ const int64_t numDataPoints)
+{
if(numDataPoints > 0){
if(numDataPoints != _numPoints){
@@ -177,7 +189,9 @@
}
}
-void ConstellationDisplayPlot::LegendEntryChecked(QwtPlotItem* plotItem, bool
on){
+void
+ConstellationDisplayPlot::LegendEntryChecked(QwtPlotItem* plotItem, bool on)
+{
plotItem->setVisible(!on);
}
Modified: gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/ConstellationDisplayPlot.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -14,14 +14,16 @@
#include <highResTimeFunctions.h>
#include <qwt_symbol.h>
-class ConstellationDisplayPlot:public QwtPlot{
+class ConstellationDisplayPlot : public QwtPlot
+{
Q_OBJECT
public:
ConstellationDisplayPlot(QWidget*);
virtual ~ConstellationDisplayPlot();
- void PlotNewData(const double* realDataPoints, const double* imagDataPoints,
+ void PlotNewData(const double* realDataPoints,
+ const double* imagDataPoints,
const int64_t numDataPoints);
virtual void replot();
@@ -31,6 +33,9 @@
void set_axis(double xmin, double xmax,
double ymin, double ymax);
+public slots:
+ void resizeSlot( QSize *s );
+
protected slots:
void LegendEntryChecked(QwtPlotItem *plotItem, bool on);
Modified: gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -93,7 +93,7 @@
timespec_reset(&_lastReplot);
resize(parent->width(), parent->height());
-
+
_displayIntervalTime = (1.0/10.0); // 1/10 of a second between updates
_useCenterFrequencyFlag = false;
@@ -314,6 +314,12 @@
_displayIntervalTime = differenceTime;
}
}
+
+void
+FrequencyDisplayPlot::resizeSlot( QSize *s )
+{
+ resize(s->width(), s->height());
+}
void
FrequencyDisplayPlot::PlotNewData(const double* dataPoints, const int64_t
numDataPoints,
Modified: gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/FrequencyDisplayPlot.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -43,12 +43,14 @@
void set_yaxis(double min, double max);
public slots:
+ void resizeSlot( QSize *e );
void SetLowerIntensityLevel(const double);
void SetUpperIntensityLevel(const double);
protected:
private:
+
void _resetXAxisPoints();
double _startFrequency;
Modified: gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -141,8 +141,8 @@
}
-void TimeDomainDisplayPlot::replot(){
-
+void TimeDomainDisplayPlot::replot()
+{
const timespec startTime = get_highres_clock();
QwtPlot::replot();
@@ -156,9 +156,16 @@
}
}
+void
+TimeDomainDisplayPlot::resizeSlot( QSize *s )
+{
+ resize(s->width(), s->height());
+}
+
void TimeDomainDisplayPlot::PlotNewData(const double* realDataPoints,
const double* imagDataPoints,
- const int64_t numDataPoints){
+ const int64_t numDataPoints)
+{
if(numDataPoints > 0){
if(numDataPoints != _numPoints){
Modified: gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/TimeDomainDisplayPlot.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -30,6 +30,9 @@
void set_yaxis(double min, double max);
void set_xaxis(double min, double max);
+public slots:
+ void resizeSlot( QSize *s );
+
protected slots:
void LegendEntryChecked(QwtPlotItem *plotItem, bool on);
Modified: gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -15,15 +15,21 @@
}
-Qwt3D::RGBA Waterfall3DColorMap::operator()(double, double, double z)const{
+Qwt3D::RGBA
+Waterfall3DColorMap::operator()(double, double, double z) const
+{
return Qwt3D::RGBA(Qwt3D::Qt2GL(color(_interval, z)));
}
-void Waterfall3DColorMap::SetInterval(const double minValue, const double
maxValue){
+void
+Waterfall3DColorMap::SetInterval(const double minValue, const double maxValue)
+{
_interval.setInterval(minValue, maxValue);
}
-Qwt3D::ColorVector& Waterfall3DColorMap::createVector(Qwt3D::ColorVector& vec)
{
+Qwt3D::ColorVector&
+Waterfall3DColorMap::createVector(Qwt3D::ColorVector& vec)
+{
// Generate 100 interval values and then return those
Qwt3D::ColorVector colorVec;
for(unsigned int number = 0; number < 100; number++){
@@ -41,7 +47,8 @@
const int Waterfall3DDisplayPlot::INTENSITY_COLOR_MAP_TYPE_INCANDESCENT;
const int Waterfall3DDisplayPlot::INTENSITY_COLOR_MAP_TYPE_USER_DEFINED;
-Waterfall3DDisplayPlot::Waterfall3DDisplayPlot(QWidget*
parent):Qwt3D::SurfacePlot(parent){
+Waterfall3DDisplayPlot::Waterfall3DDisplayPlot(QWidget*
parent):Qwt3D::SurfacePlot(parent)
+{
_startFrequency = 0;
_stopFrequency = 4000;
@@ -76,11 +83,14 @@
enableMouse(true);
}
-Waterfall3DDisplayPlot::~Waterfall3DDisplayPlot(){
+Waterfall3DDisplayPlot::~Waterfall3DDisplayPlot()
+{
delete _waterfallData;
}
-void Waterfall3DDisplayPlot::Init(){
+void
+Waterfall3DDisplayPlot::Init()
+{
if(!_initialized && initializedGL()){
resize(parentWidget()->width(), parentWidget()->height());
@@ -97,7 +107,9 @@
}
}
-void Waterfall3DDisplayPlot::Reset(){
+void
+Waterfall3DDisplayPlot::Reset()
+{
_waterfallData->ResizeData(_startFrequency, _stopFrequency, _numPoints);
_waterfallData->Reset();
@@ -116,7 +128,8 @@
const double constStopFreq,
const double constCenterFreq,
const bool useCenterFrequencyFlag,
- const double units, const std::string
&strunits)
+ const double units,
+ const std::string &strunits)
{
double startFreq = constStartFreq / units;
double stopFreq = constStopFreq / units;
@@ -138,8 +151,10 @@
}
}
-bool Waterfall3DDisplayPlot::loadFromData(double** data, unsigned int columns,
unsigned int rows
- ,double minx, double maxx, double
miny, double maxy){
+bool
+Waterfall3DDisplayPlot::loadFromData(double** data, unsigned int columns,
unsigned int rows
+ ,double minx, double maxx, double miny,
double maxy)
+{
Qwt3D::GridData* gridPtr = (Qwt3D::GridData*)actualData_p;
@@ -196,15 +211,25 @@
return true;
}
-double Waterfall3DDisplayPlot::GetStartFrequency()const{
+double
+Waterfall3DDisplayPlot::GetStartFrequency() const
+{
return _startFrequency;
}
-double Waterfall3DDisplayPlot::GetStopFrequency()const{
+double
+Waterfall3DDisplayPlot::GetStopFrequency() const
+{
return _stopFrequency;
}
-void Waterfall3DDisplayPlot::PlotNewData(const double* dataPoints, const
int64_t numDataPoints, const double timePerFFT, const timespec timestamp, const
int droppedFrames){
+void
+Waterfall3DDisplayPlot::PlotNewData(const double* dataPoints,
+ const int64_t numDataPoints,
+ const double timePerFFT,
+ const timespec timestamp,
+ const int droppedFrames)
+{
if(numDataPoints > 0){
if(numDataPoints != _numPoints){
_numPoints = numDataPoints;
@@ -238,7 +263,10 @@
}
}
-void Waterfall3DDisplayPlot::SetIntensityRange(const double minIntensity,
const double maxIntensity){
+void
+Waterfall3DDisplayPlot::SetIntensityRange(const double minIntensity,
+ const double maxIntensity)
+{
_waterfallData->SetFloorValue(minIntensity);
_waterfallData->setMinZ(0);
_waterfallData->setMaxZ(maxIntensity-minIntensity);
@@ -248,11 +276,14 @@
emit UpdatedLowerIntensityLevel(minIntensity);
emit UpdatedUpperIntensityLevel(maxIntensity);
- SetIntensityColorMapType(_intensityColorMapType,
_userDefinedLowIntensityColor, _userDefinedLowIntensityColor, true);
+ SetIntensityColorMapType(_intensityColorMapType,
+ _userDefinedLowIntensityColor,
+ _userDefinedLowIntensityColor, true);
}
-void Waterfall3DDisplayPlot::replot(){
-
+void
+Waterfall3DDisplayPlot::replot()
+{
if(!_initialized){
Init();
}
@@ -283,11 +314,25 @@
}
}
-int Waterfall3DDisplayPlot::GetIntensityColorMapType()const{
+void
+Waterfall3DDisplayPlot::resizeSlot( QSize *s )
+{
+ resize(s->width(), s->height());
+}
+
+int
+Waterfall3DDisplayPlot::GetIntensityColorMapType() const
+{
return _intensityColorMapType;
}
-void Waterfall3DDisplayPlot::SetIntensityColorMapType(const int newType, const
QColor lowColor, const QColor highColor, const bool forceFlag, const bool
noReplotFlag){
+void
+Waterfall3DDisplayPlot::SetIntensityColorMapType(const int newType,
+ const QColor lowColor,
+ const QColor highColor,
+ const bool forceFlag,
+ const bool noReplotFlag)
+{
if(((_intensityColorMapType != newType) || forceFlag) ||
((newType == INTENSITY_COLOR_MAP_TYPE_USER_DEFINED) &&
(lowColor.isValid() && highColor.isValid()))){
@@ -350,11 +395,15 @@
}
}
-const QColor Waterfall3DDisplayPlot::GetUserDefinedLowIntensityColor()const{
+const QColor
+Waterfall3DDisplayPlot::GetUserDefinedLowIntensityColor() const
+{
return _userDefinedLowIntensityColor;
}
-const QColor Waterfall3DDisplayPlot::GetUserDefinedHighIntensityColor()const{
+const QColor
+Waterfall3DDisplayPlot::GetUserDefinedHighIntensityColor() const
+{
return _userDefinedHighIntensityColor;
}
Modified: gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/Waterfall3DDisplayPlot.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -10,7 +10,8 @@
#include <qwt3d_color.h>
#include <qwt_color_map.h>
-class Waterfall3DColorMap:public Qwt3D::Color, public QwtLinearColorMap{
+class Waterfall3DColorMap: public Qwt3D::Color, public QwtLinearColorMap
+{
public:
Waterfall3DColorMap();
virtual ~Waterfall3DColorMap();
@@ -75,12 +76,14 @@
virtual QString ticLabel(unsigned int idx) const{
if (idx<majors_p.size())
{
- const timespec markerTime = timespec_add(_plot->_dataTimestamp,
-(_plot->_timePerFFT) * majors_p[idx]);
+ const timespec markerTime = timespec_add(_plot->_dataTimestamp,
+ -(_plot->_timePerFFT) *
majors_p[idx]);
struct tm timeTm;
gmtime_r(&markerTime.tv_sec, &timeTm);
char* timeBuffer = new char[128];
- snprintf(timeBuffer, 128, "%02d:%02d:%02d.%03ld", timeTm.tm_hour,
timeTm.tm_min, timeTm.tm_sec, (markerTime.tv_nsec / 1000000));
+ snprintf(timeBuffer, 128, "%02d:%02d:%02d.%03ld", timeTm.tm_hour,
+ timeTm.tm_min, timeTm.tm_sec, (markerTime.tv_nsec /
1000000));
QString returnBuffer(timeBuffer);
delete[] timeBuffer;
return returnBuffer;
@@ -100,10 +103,14 @@
double _centerFrequency;
bool _useCenterFrequencyFlag;
public:
- FrequencyScale(bool useCenterFrequencyFlag, double
centerFrequency):_centerFrequency(centerFrequency),_useCenterFrequencyFlag(useCenterFrequencyFlag){}
+ FrequencyScale(bool useCenterFrequencyFlag, double centerFrequency)
+ :
_centerFrequency(centerFrequency),_useCenterFrequencyFlag(useCenterFrequencyFlag)
+ {}
+
virtual ~FrequencyScale(){}
- virtual QString ticLabel(unsigned int idx) const{
+ virtual QString ticLabel(unsigned int idx) const
+ {
if (idx<majors_p.size())
{
if(!_useCenterFrequencyFlag){
@@ -137,14 +144,18 @@
double GetStartFrequency()const;
double GetStopFrequency()const;
- void PlotNewData(const double* dataPoints, const int64_t numDataPoints,
const double timePerFFT, const timespec timestamp, const int droppedFrames);
+ void PlotNewData(const double* dataPoints, const int64_t numDataPoints,
+ const double timePerFFT, const timespec timestamp,
+ const int droppedFrames);
void SetIntensityRange(const double minIntensity, const double maxIntensity);
virtual void replot(void);
int GetIntensityColorMapType()const;
- void SetIntensityColorMapType( const int, const QColor, const QColor, const
bool forceFlag = false, const bool noReplotFlag = false );
+ void SetIntensityColorMapType( const int, const QColor,
+ const QColor, const bool forceFlag = false,
+ const bool noReplotFlag = false );
const QColor GetUserDefinedLowIntensityColor()const;
const QColor GetUserDefinedHighIntensityColor()const;
@@ -154,6 +165,10 @@
static const int INTENSITY_COLOR_MAP_TYPE_INCANDESCENT = 3;
static const int INTENSITY_COLOR_MAP_TYPE_USER_DEFINED = 4;
+public slots:
+ void resizeSlot( QSize *s );
+
+
signals:
void UpdatedLowerIntensityLevel(const double);
void UpdatedUpperIntensityLevel(const double);
Modified: gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -15,28 +15,33 @@
class FreqOffsetAndPrecisionClass
{
public:
- FreqOffsetAndPrecisionClass(const int freqPrecision){
+ FreqOffsetAndPrecisionClass(const int freqPrecision)
+ {
_frequencyPrecision = freqPrecision;
_centerFrequency = 0;
}
- virtual ~FreqOffsetAndPrecisionClass(){
-
+ virtual ~FreqOffsetAndPrecisionClass()
+ {
}
- virtual unsigned int GetFrequencyPrecision()const{
+ virtual unsigned int GetFrequencyPrecision() const
+ {
return _frequencyPrecision;
}
- virtual void SetFrequencyPrecision(const unsigned int newPrecision){
+ virtual void SetFrequencyPrecision(const unsigned int newPrecision)
+ {
_frequencyPrecision = newPrecision;
}
- virtual double GetCenterFrequency()const{
+ virtual double GetCenterFrequency() const
+ {
return _centerFrequency;
}
- virtual void SetCenterFrequency(const double newFreq){
+ virtual void SetCenterFrequency(const double newFreq)
+ {
_centerFrequency = newFreq;
}
@@ -50,19 +55,23 @@
class WaterfallFreqDisplayScaleDraw: public QwtScaleDraw, public
FreqOffsetAndPrecisionClass{
public:
- WaterfallFreqDisplayScaleDraw(const unsigned int precision):QwtScaleDraw(),
FreqOffsetAndPrecisionClass(precision){
-
+ WaterfallFreqDisplayScaleDraw(const unsigned int precision)
+ : QwtScaleDraw(), FreqOffsetAndPrecisionClass(precision)
+ {
}
- virtual ~WaterfallFreqDisplayScaleDraw(){
-
+ virtual ~WaterfallFreqDisplayScaleDraw()
+ {
}
- QwtText label(double value)const{
- return QString("%1").arg((value + GetCenterFrequency()) /
((GetFrequencyPrecision() == 0) ? 1.0 : 1000.0), 0, 'f',
GetFrequencyPrecision());
+ QwtText label(double value) const
+ {
+ return QString("%1").arg((value + GetCenterFrequency()) /
((GetFrequencyPrecision() == 0) ? 1.0 : 1000.0),
+ 0, 'f', GetFrequencyPrecision());
}
- virtual void initiateUpdate(){
+ virtual void initiateUpdate()
+ {
invalidateCache();
}
@@ -75,29 +84,33 @@
class TimeScaleData
{
public:
- TimeScaleData(){
+ TimeScaleData()
+ {
timespec_reset(&_zeroTime);
_secondsPerLine = 1.0;
-
}
- virtual ~TimeScaleData(){
-
+ virtual ~TimeScaleData()
+ {
}
- virtual timespec GetZeroTime()const{
+ virtual timespec GetZeroTime() const
+ {
return _zeroTime;
}
- virtual void SetZeroTime(const timespec newTime){
+ virtual void SetZeroTime(const timespec newTime)
+ {
_zeroTime = newTime;
}
- virtual void SetSecondsPerLine(const double newTime){
+ virtual void SetSecondsPerLine(const double newTime)
+ {
_secondsPerLine = newTime;
}
- virtual double GetSecondsPerLine()const{
+ virtual double GetSecondsPerLine() const
+ {
return _secondsPerLine;
}
@@ -113,27 +126,32 @@
class QwtTimeScaleDraw: public QwtScaleDraw, public TimeScaleData
{
public:
- QwtTimeScaleDraw():QwtScaleDraw(),TimeScaleData(){
-
+ QwtTimeScaleDraw():QwtScaleDraw(),TimeScaleData()
+ {
}
- virtual ~QwtTimeScaleDraw(){
-
+ virtual ~QwtTimeScaleDraw()
+ {
}
- virtual QwtText label(double value)const{
+ virtual QwtText label(double value) const
+ {
QwtText returnLabel("");
timespec lineTime = timespec_add(GetZeroTime(), (-value) *
GetSecondsPerLine());
struct tm timeTm;
gmtime_r(&lineTime.tv_sec, &timeTm);
- returnLabel = (QString("").sprintf("%04d/%02d/%02d\n%02d:%02d:%02d.%03ld",
timeTm.tm_year+1900, timeTm.tm_mon+1, timeTm.tm_mday, timeTm.tm_hour,
timeTm.tm_min, timeTm.tm_sec, lineTime.tv_nsec/1000000));
-
+ returnLabel = (QString("").sprintf("%04d/%02d/%02d\n%02d:%02d:%02d.%03ld",
+ timeTm.tm_year+1900, timeTm.tm_mon+1,
+ timeTm.tm_mday, timeTm.tm_hour,
timeTm.tm_min,
+ timeTm.tm_sec,
lineTime.tv_nsec/1000000));
return returnLabel;
}
- virtual void initiateUpdate(){
- // Do this in one call rather than when zeroTime and secondsPerLine
updates is to prevent the display from being updated too often...
+ virtual void initiateUpdate()
+ {
+ // Do this in one call rather than when zeroTime and secondsPerLine
+ // updates is to prevent the display from being updated too often...
invalidateCache();
}
@@ -146,16 +164,19 @@
class WaterfallZoomer: public QwtPlotZoomer, public TimeScaleData, public
FreqOffsetAndPrecisionClass
{
public:
- WaterfallZoomer(QwtPlotCanvas* canvas, const unsigned int
freqPrecision):QwtPlotZoomer(canvas), TimeScaleData(),
FreqOffsetAndPrecisionClass(freqPrecision)
+ WaterfallZoomer(QwtPlotCanvas* canvas, const unsigned int freqPrecision)
+ : QwtPlotZoomer(canvas), TimeScaleData(),
+ FreqOffsetAndPrecisionClass(freqPrecision)
{
setTrackerMode(QwtPicker::AlwaysOn);
}
- virtual ~WaterfallZoomer(){
-
+ virtual ~WaterfallZoomer()
+ {
}
- virtual void updateTrackerText(){
+ virtual void updateTrackerText()
+ {
updateDisplay();
}
@@ -167,7 +188,10 @@
timespec lineTime = timespec_add(GetZeroTime(), (-p.y()) *
GetSecondsPerLine());
struct tm timeTm;
gmtime_r(&lineTime.tv_sec, &timeTm);
- yLabel = (QString("").sprintf("%04d/%02d/%02d %02d:%02d:%02d.%03ld",
timeTm.tm_year+1900, timeTm.tm_mon+1, timeTm.tm_mday, timeTm.tm_hour,
timeTm.tm_min, timeTm.tm_sec, lineTime.tv_nsec/1000000));
+ yLabel = (QString("").sprintf("%04d/%02d/%02d %02d:%02d:%02d.%03ld",
+ timeTm.tm_year+1900, timeTm.tm_mon+1,
+ timeTm.tm_mday, timeTm.tm_hour, timeTm.tm_min,
+ timeTm.tm_sec, lineTime.tv_nsec/1000000));
QwtText t(QString("%1 %2, %3").arg((p.x() + GetCenterFrequency()) /
((GetFrequencyPrecision() == 0) ? 1.0 : 1000.0), 0, 'f',
GetFrequencyPrecision()).arg( (GetFrequencyPrecision() == 0) ? "Hz" :
"kHz").arg(yLabel));
@@ -312,15 +336,25 @@
}
-double WaterfallDisplayPlot::GetStartFrequency()const{
+double
+WaterfallDisplayPlot::GetStartFrequency() const
+{
return _startFrequency;
}
-double WaterfallDisplayPlot::GetStopFrequency()const{
+double
+WaterfallDisplayPlot::GetStopFrequency() const
+{
return _stopFrequency;
}
-void WaterfallDisplayPlot::PlotNewData(const double* dataPoints, const int64_t
numDataPoints, const double timePerFFT, const timespec timestamp, const int
droppedFrames){
+void
+WaterfallDisplayPlot::PlotNewData(const double* dataPoints,
+ const int64_t numDataPoints,
+ const double timePerFFT,
+ const timespec timestamp,
+ const int droppedFrames)
+{
if(numDataPoints > 0){
if(numDataPoints != _numPoints){
_numPoints = numDataPoints;
@@ -363,7 +397,10 @@
}
}
-void WaterfallDisplayPlot::SetIntensityRange(const double minIntensity, const
double maxIntensity){
+void
+WaterfallDisplayPlot::SetIntensityRange(const double minIntensity,
+ const double maxIntensity)
+{
_waterfallData->setRange(QwtDoubleInterval(minIntensity, maxIntensity));
emit UpdatedLowerIntensityLevel(minIntensity);
@@ -372,7 +409,9 @@
_UpdateIntensityRangeDisplay();
}
-void WaterfallDisplayPlot::replot(){
+void
+WaterfallDisplayPlot::replot()
+{
const timespec startTime = get_highres_clock();
QwtTimeScaleDraw* timeScale =
(QwtTimeScaleDraw*)axisScaleDraw(QwtPlot::yLeft);
@@ -406,11 +445,23 @@
}
}
-int WaterfallDisplayPlot::GetIntensityColorMapType()const{
+void
+WaterfallDisplayPlot::resizeSlot( QSize *s )
+{
+ resize(s->width(), s->height());
+}
+
+int
+WaterfallDisplayPlot::GetIntensityColorMapType() const
+{
return _intensityColorMapType;
}
-void WaterfallDisplayPlot::SetIntensityColorMapType(const int newType, const
QColor lowColor, const QColor highColor){
+void
+WaterfallDisplayPlot::SetIntensityColorMapType(const int newType,
+ const QColor lowColor,
+ const QColor highColor)
+{
if((_intensityColorMapType != newType) ||
((newType == INTENSITY_COLOR_MAP_TYPE_USER_DEFINED) &&
(lowColor.isValid() && highColor.isValid()))){
@@ -458,15 +509,21 @@
}
}
-const QColor WaterfallDisplayPlot::GetUserDefinedLowIntensityColor()const{
+const QColor
+WaterfallDisplayPlot::GetUserDefinedLowIntensityColor() const
+{
return _userDefinedLowIntensityColor;
}
-const QColor WaterfallDisplayPlot::GetUserDefinedHighIntensityColor()const{
+const QColor
+WaterfallDisplayPlot::GetUserDefinedHighIntensityColor() const
+{
return _userDefinedHighIntensityColor;
}
-void WaterfallDisplayPlot::_UpdateIntensityRangeDisplay(){
+void
+WaterfallDisplayPlot::_UpdateIntensityRangeDisplay()
+{
QwtScaleWidget *rightAxis = axisWidget(QwtPlot::yRight);
rightAxis->setTitle("Intensity (dB)");
rightAxis->setColorBarEnabled(true);
Modified: gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/WaterfallDisplayPlot.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -45,6 +45,9 @@
static const int INTENSITY_COLOR_MAP_TYPE_INCANDESCENT = 3;
static const int INTENSITY_COLOR_MAP_TYPE_USER_DEFINED = 4;
+public slots:
+ void resizeSlot( QSize *s );
+
signals:
void UpdatedLowerIntensityLevel(const double);
void UpdatedUpperIntensityLevel(const double);
Modified: gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.cc
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.cc 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.cc 2009-08-11
22:02:56 UTC (rev 11572)
@@ -15,7 +15,7 @@
_intValidator = new QIntValidator(this);
_intValidator->setBottom(0);
_frequencyDisplayPlot = new FrequencyDisplayPlot(FrequencyPlotDisplayFrame);
- _waterfallDisplayPlot = new WaterfallDisplayPlot(WaterfallPlotDisplayFrame);
+ _waterfallDisplayPlot = new WaterfallDisplayPlot(WaterfallPlotDisplayFrame );
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
_waterfall3DDisplayPlot = new
Waterfall3DDisplayPlot(Waterfall3DPlotDisplayFrame);
@@ -28,8 +28,8 @@
_averagedValues = new double[_numRealDataPoints];
_historyVector = new std::vector<double*>;
- AvgLineEdit->setValidator(_intValidator);
- PowerLineEdit->setValidator(_intValidator);
+ AvgLineEdit->setRange(0, 500); // Set range of Average box
value from 0 to 500
+ PowerLineEdit->setValidator(_intValidator); // Tell GUI this can only be
an integer value
MinHoldCheckBox_toggled( false );
MaxHoldCheckBox_toggled( false );
@@ -110,6 +110,11 @@
void
SpectrumDisplayForm::newFrequencyData( const SpectrumUpdateEvent*
spectrumUpdateEvent)
{
+ //printf("Parent Width: %d Height: %d\n", width(), height());
+ //printf("Frequency Frame Width: %d Height: %d\n",
FrequencyPlotDisplayFrame->width(), FrequencyPlotDisplayFrame->height());
+ //printf("Frequency Plot Width: %d Height: %d\n",
_frequencyDisplayPlot->width(), _frequencyDisplayPlot->height());
+
+
//_lastSpectrumEvent = (SpectrumUpdateEvent)(*spectrumUpdateEvent);
const std::complex<float>* complexDataPoints =
spectrumUpdateEvent->getFFTPoints();
const uint64_t numFFTDataPoints = spectrumUpdateEvent->getNumFFTDataPoints();
@@ -245,113 +250,30 @@
void
SpectrumDisplayForm::resizeEvent( QResizeEvent *e )
{
- // Let the actual window resize its width, but not its height
- QSize newSize(e->size().width(), e->oldSize().height());
- QResizeEvent et(newSize, e->oldSize());
- QWidget::resizeEvent(&et);
+ QSize s;
+ s.setWidth(FrequencyPlotDisplayFrame->width());
+ s.setHeight(FrequencyPlotDisplayFrame->height());
+ emit _frequencyDisplayPlot->resizeSlot(&s);
- // Tell the Tab Window to Resize
- SpectrumTypeTab->resize( e->size().width(), e->size().height()-60);
+ s.setWidth(TimeDomainDisplayFrame->width());
+ s.setHeight(TimeDomainDisplayFrame->height());
+ emit _timeDomainDisplayPlot->resizeSlot(&s);
- // Tell the TabXFreqDisplay to resize
- FrequencyPlotDisplayFrame->resize(e->size().width()-4,
- e->size().height()-140);
- _frequencyDisplayPlot->resize( FrequencyPlotDisplayFrame->width()-4,
- e->size().height()-140);
-
- // Move the Power Lbl and Line Edit
- PowerLabel->move(e->size().width()-(415-324) - PowerLabel->width(),
- e->size().height()-135);
- PowerLineEdit->move(e->size().width()-(415-318) - PowerLineEdit->width(),
- e->size().height()-115);
-
- // Move the Avg Lbl and Line Edit
- AvgLabel->move(e->size().width()-(415-406) - AvgLabel->width(),
- e->size().height()-135);
- AvgLineEdit->move(e->size().width()-(415-400) - AvgLineEdit->width(),
- e->size().height()-115);
-
- // Move Max and Min check boxes
- MaxHoldCheckBox->move(MaxHoldCheckBox->x(),
- e->size().height()-135);
- MaxHoldResetBtn->move(MaxHoldResetBtn->x(),
- e->size().height()-135);
- MinHoldCheckBox->move(MinHoldCheckBox->x(),
- e->size().height()-115);
- MinHoldResetBtn->move(MinHoldResetBtn->x(),
- e->size().height()-115);
+ s.setWidth(WaterfallPlotDisplayFrame->width());
+ s.setHeight(WaterfallPlotDisplayFrame->height());
+ emit _waterfallDisplayPlot->resizeSlot(&s);
- WaterfallPlotDisplayFrame->resize(e->size().width()-4,
- e->size().height()-140);
- _waterfallDisplayPlot->resize( WaterfallPlotDisplayFrame->width()-4,
- e->size().height()-140);
-
- // Move the IntensityWheels and Labels
- WaterfallMaximumIntensityLabel->move(width() - 5 -
- WaterfallMaximumIntensityLabel->width(),
- WaterfallMaximumIntensityLabel->y());
- WaterfallMaximumIntensityWheel->resize(WaterfallMaximumIntensityLabel->x() -
5 -
- WaterfallMaximumIntensityWheel->x(),
-
WaterfallMaximumIntensityWheel->height());
-
- WaterfallMinimumIntensityLabel->move(width() - 5 -
- WaterfallMinimumIntensityLabel->width(),
- height() - 115);
- WaterfallMinimumIntensityWheel->resize(WaterfallMinimumIntensityLabel->x() -
5 -
- WaterfallMinimumIntensityWheel->x(),
-
WaterfallMaximumIntensityWheel->height());
- WaterfallMinimumIntensityWheel->move(WaterfallMinimumIntensityWheel->x(),
- height() - 115);
- WaterfallAutoScaleBtn->move(WaterfallAutoScaleBtn->x(),
- e->size().height()-115);
-
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
- Waterfall3DPlotDisplayFrame->resize(e->size().width()-4,
- e->size().height()-140);
- _waterfall3DDisplayPlot->resize( Waterfall3DPlotDisplayFrame->width()-4,
- e->size().height()-140);
-
- Waterfall3DMaximumIntensityLabel->move(width() - 5 -
-
Waterfall3DMaximumIntensityLabel->width(),
-
Waterfall3DMaximumIntensityLabel->y());
-
Waterfall3DMaximumIntensityWheel->resize(Waterfall3DMaximumIntensityLabel->x()
- 5 -
-
Waterfall3DMaximumIntensityWheel->x(),
-
Waterfall3DMaximumIntensityWheel->height());
- Waterfall3DMinimumIntensityLabel->move(width() - 5 -
-
Waterfall3DMinimumIntensityLabel->width(),
- height() - 115);
-
Waterfall3DMinimumIntensityWheel->resize(Waterfall3DMinimumIntensityLabel->x()
- 5 -
-
Waterfall3DMinimumIntensityWheel->x(),
-
Waterfall3DMaximumIntensityWheel->height());
-
Waterfall3DMinimumIntensityWheel->move(Waterfall3DMinimumIntensityWheel->x(),
- height() - 115);
- Waterfall3DAutoScaleBtn->move(WaterfallAutoScaleBtn->x(),
- e->size().height()-115);
+ s.setWidth(Waterfall3DPlotDisplayFrame->width());
+ s.setHeight(Waterfall3DPlotDisplayFrame->height());
+ emit _waterfall3DDisplayPlot->resizeSlot(&s);
}
-
- TimeDomainDisplayFrame->resize(e->size().width()-4,
- e->size().height()-140);
- _timeDomainDisplayPlot->resize( TimeDomainDisplayFrame->width()-4,
- e->size().height()-140);
-
- ConstellationDisplayFrame->resize(e->size().width()-4,
- e->size().height()-140);
- _constellationDisplayPlot->resize( TimeDomainDisplayFrame->width()-4,
- e->size().height()-140);
-
- // Move the FFT Size Combobox and label
- FFTSizeComboBox->move(width() - 5 - FFTSizeComboBox->width(),
- height()-50);
- FFTSizeLabel->move(width() - 10 - FFTSizeComboBox->width() -
FFTSizeLabel->width(),
- height()-50);
-
- // Move the lower check and combo boxes
- UseRFFrequenciesCheckBox->move(UseRFFrequenciesCheckBox->x(), height()-50);
- WindowLbl->move(WindowLbl->x(), height()-25);
- WindowComboBox->move(WindowComboBox->x(), height()-25);
+
+ s.setWidth(ConstellationDisplayFrame->width());
+ s.setHeight(ConstellationDisplayFrame->height());
+ emit _constellationDisplayPlot->resizeSlot(&s);
}
-
void
SpectrumDisplayForm::customEvent( QEvent * e)
{
@@ -416,16 +338,9 @@
}
void
-SpectrumDisplayForm::AvgLineEdit_textChanged( const QString &valueString )
+SpectrumDisplayForm::AvgLineEdit_valueChanged( int value )
{
- if(!valueString.isEmpty()){
- int value = valueString.toInt();
- if(value > 500){
- value = 500;
- AvgLineEdit->setText("500");
- }
- SetAverageCount(value);
- }
+ SetAverageCount(value);
}
@@ -466,8 +381,8 @@
void
SpectrumDisplayForm::TabChanged(int index)
{
- _frequencyDisplayPlot->replot();
-
+ // This might be dangerous to call this with NULL
+ resizeEvent(NULL);
}
void
Modified: gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.h
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.h 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.h 2009-08-11
22:02:56 UTC (rev 11572)
@@ -36,7 +36,7 @@
public slots:
void resizeEvent( QResizeEvent * e );
void customEvent( QEvent * e );
- void AvgLineEdit_textChanged( const QString & valueString );
+ void AvgLineEdit_valueChanged( int valueString );
void MaxHoldCheckBox_toggled( bool newState );
void MinHoldCheckBox_toggled( bool newState );
void MinHoldResetBtn_clicked();
Modified: gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.ui
===================================================================
--- gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.ui 2009-08-11
15:54:08 UTC (rev 11571)
+++ gnuradio/trunk/gr-qtgui/src/lib/spectrumdisplayform.ui 2009-08-11
22:02:56 UTC (rev 11572)
@@ -5,687 +5,758 @@
<rect>
<x>0</x>
<y>0</y>
- <width>633</width>
- <height>436</height>
+ <width>657</width>
+ <height>536</height>
</rect>
</property>
<property name="windowTitle" >
<string>Spectrum Display</string>
</property>
- <widget class="QCheckBox" name="UseRFFrequenciesCheckBox" >
- <property name="geometry" >
- <rect>
- <x>10</x>
- <y>385</y>
- <width>180</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Display RF Frequencies</string>
- </property>
- </widget>
- <widget class="QComboBox" name="WindowComboBox" >
- <property name="geometry" >
- <rect>
- <x>105</x>
- <y>410</y>
- <width>170</width>
- <height>20</height>
- </rect>
- </property>
- <property name="font" >
- <font>
- <pointsize>9</pointsize>
- </font>
- </property>
- <item>
- <property name="text" >
- <string>Hamming</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Hann</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Blackman</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Rectangular</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Kaiser</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Blackman-harris</string>
- </property>
- </item>
- </widget>
- <widget class="QLabel" name="WindowLbl" >
- <property name="geometry" >
- <rect>
- <x>10</x>
- <y>410</y>
- <width>90</width>
- <height>17</height>
- </rect>
- </property>
- <property name="text" >
- <string>Window:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QLabel" name="FFTSizeLabel" >
- <property name="geometry" >
- <rect>
- <x>405</x>
- <y>385</y>
- <width>116</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>FFT Size:</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QComboBox" name="FFTSizeComboBox" >
- <property name="geometry" >
- <rect>
- <x>525</x>
- <y>385</y>
- <width>100</width>
- <height>20</height>
- </rect>
- </property>
- <item>
- <property name="text" >
- <string>1024</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>2048</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>4096</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>8192</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>16384</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>32768</string>
- </property>
- </item>
- </widget>
- <widget class="QTabWidget" name="SpectrumTypeTab" >
- <property name="geometry" >
- <rect>
- <x>0</x>
- <y>0</y>
- <width>630</width>
- <height>380</height>
- </rect>
- </property>
- <property name="currentIndex" >
- <number>0</number>
- </property>
- <widget class="QWidget" name="FrequencyPage" >
- <attribute name="title" >
- <string>Frequency Display</string>
- </attribute>
- <widget class="QLineEdit" name="PowerLineEdit" >
- <property name="geometry" >
- <rect>
- <x>480</x>
- <y>320</y>
- <width>60</width>
- <height>20</height>
- </rect>
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="1" column="3" >
+ <widget class="QComboBox" name="FFTSizeComboBox" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
</property>
- <property name="text" >
- <string>1</string>
+ <property name="maximumSize" >
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
</property>
- </widget>
- <widget class="QCheckBox" name="MinHoldCheckBox" >
- <property name="geometry" >
- <rect>
- <x>10</x>
- <y>325</y>
- <width>95</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Min Hold</string>
- </property>
- <property name="checked" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QLabel" name="AvgLabel" >
- <property name="geometry" >
- <rect>
- <x>545</x>
- <y>300</y>
- <width>72</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Average</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QPushButton" name="MinHoldResetBtn" >
- <property name="geometry" >
- <rect>
- <x>105</x>
- <y>325</y>
- <width>61</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Reset</string>
- </property>
- </widget>
- <widget class="QLineEdit" name="AvgLineEdit" >
- <property name="geometry" >
- <rect>
- <x>550</x>
- <y>320</y>
- <width>60</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>0</string>
- </property>
- </widget>
- <widget class="QLabel" name="PowerLabel" >
- <property name="geometry" >
- <rect>
- <x>475</x>
- <y>300</y>
- <width>72</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Power</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QPushButton" name="MaxHoldResetBtn" >
- <property name="geometry" >
- <rect>
- <x>105</x>
- <y>300</y>
- <width>61</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Reset</string>
- </property>
- </widget>
- <widget class="QCheckBox" name="MaxHoldCheckBox" >
- <property name="geometry" >
- <rect>
- <x>10</x>
- <y>300</y>
- <width>95</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>Max Hold</string>
- </property>
- <property name="checked" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QFrame" name="FrequencyPlotDisplayFrame" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>5</y>
- <width>620</width>
- <height>290</height>
- </rect>
- </property>
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
- </property>
- </widget>
- </widget>
- <widget class="QWidget" name="WaterfallPage" >
- <attribute name="title" >
- <string>Waterfall Display</string>
- </attribute>
- <widget class="QLabel" name="textLabel1" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>0</y>
- <width>85</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text" >
- <string><font size="-2">Intensity Display:</font></string>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QComboBox" name="WaterfallIntensityComboBox" >
- <property name="geometry" >
- <rect>
- <x>90</x>
- <y>0</y>
- <width>121</width>
- <height>25</height>
- </rect>
- </property>
<item>
<property name="text" >
- <string>Color</string>
+ <string>1024</string>
</property>
</item>
<item>
<property name="text" >
- <string>White Hot</string>
+ <string>2048</string>
</property>
</item>
<item>
<property name="text" >
- <string>Black Hot</string>
+ <string>4096</string>
</property>
</item>
<item>
<property name="text" >
- <string>Incandescent</string>
+ <string>8192</string>
</property>
</item>
<item>
<property name="text" >
- <string>User Defined</string>
+ <string>16384</string>
</property>
</item>
+ <item>
+ <property name="text" >
+ <string>32768</string>
+ </property>
+ </item>
</widget>
- <widget class="QwtWheel" name="WaterfallMaximumIntensityWheel" >
- <property name="geometry" >
- <rect>
- <x>215</x>
- <y>0</y>
- <width>335</width>
- <height>24</height>
- </rect>
- </property>
- <property name="mouseTracking" >
- <bool>true</bool>
- </property>
- <property name="focusPolicy" >
- <enum>Qt::WheelFocus</enum>
- </property>
- <property name="valid" >
- <bool>true</bool>
- </property>
- <property name="totalAngle" >
- <double>200.000000000000000</double>
- </property>
- <property name="viewAngle" >
- <double>20.000000000000000</double>
- </property>
- <property name="mass" >
- <double>0.000000000000000</double>
- </property>
- </widget>
- <widget class="QLabel" name="WaterfallMaximumIntensityLabel" >
- <property name="geometry" >
- <rect>
- <x>563</x>
- <y>3</y>
- <width>55</width>
- <height>21</height>
- </rect>
- </property>
+ </item>
+ <item row="1" column="2" >
+ <widget class="QLabel" name="FFTSizeLabel" >
<property name="text" >
- <string>100 dB</string>
+ <string>FFT Size:</string>
</property>
- <property name="wordWrap" >
- <bool>false</bool>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
- </widget>
- <widget class="QFrame" name="WaterfallPlotDisplayFrame" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>30</y>
- <width>615</width>
- <height>295</height>
- </rect>
- </property>
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
- </property>
- </widget>
- <widget class="QwtWheel" name="WaterfallMinimumIntensityWheel" >
- <property name="geometry" >
- <rect>
- <x>215</x>
- <y>325</y>
- <width>335</width>
- <height>24</height>
- </rect>
- </property>
- <property name="valid" >
- <bool>true</bool>
- </property>
- <property name="totalAngle" >
- <double>200.000000000000000</double>
- </property>
- <property name="viewAngle" >
- <double>20.000000000000000</double>
- </property>
- <property name="mass" >
- <double>0.000000000000000</double>
- </property>
- </widget>
- <widget class="QLabel" name="WaterfallMinimumIntensityLabel" >
- <property name="geometry" >
- <rect>
- <x>565</x>
- <y>325</y>
- <width>55</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>-100 dB</string>
- </property>
<property name="wordWrap" >
<bool>false</bool>
</property>
</widget>
- <widget class="QPushButton" name="WaterfallAutoScaleBtn" >
- <property name="geometry" >
- <rect>
- <x>0</x>
- <y>325</y>
- <width>135</width>
- <height>21</height>
- </rect>
- </property>
- <property name="toolTip" >
- <string>Scales the Intensity to the current data extremes.</string>
- </property>
+ </item>
+ <item row="1" column="0" >
+ <widget class="QCheckBox" name="UseRFFrequenciesCheckBox" >
<property name="text" >
- <string>Auto Scale</string>
+ <string>Display RF Frequencies</string>
</property>
</widget>
- </widget>
- <widget class="QWidget" name="Waterfall3DPage" >
- <attribute name="title" >
- <string>3D Waterfall Display</string>
- </attribute>
- <widget class="QLabel" name="textLabel1_2" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>0</y>
- <width>85</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text" >
- <string><font size="-2">Intensity Display:</font></string>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QLabel" name="Waterfall3DMaximumIntensityLabel" >
- <property name="geometry" >
- <rect>
- <x>563</x>
- <y>3</y>
- <width>55</width>
- <height>21</height>
- </rect>
- </property>
- <property name="text" >
- <string>100 dB</string>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QPushButton" name="Waterfall3DAutoScaleBtn" >
- <property name="geometry" >
- <rect>
- <x>0</x>
- <y>325</y>
- <width>135</width>
- <height>21</height>
- </rect>
- </property>
- <property name="toolTip" >
- <string>Scales the Intensity to the current data extremes.</string>
- </property>
- <property name="text" >
- <string>Auto Scale</string>
- </property>
- </widget>
- <widget class="QwtWheel" name="Waterfall3DMinimumIntensityWheel" >
- <property name="geometry" >
- <rect>
- <x>215</x>
- <y>325</y>
- <width>335</width>
- <height>24</height>
- </rect>
- </property>
- <property name="valid" >
- <bool>true</bool>
- </property>
- <property name="totalAngle" >
- <double>200.000000000000000</double>
- </property>
- <property name="viewAngle" >
- <double>20.000000000000000</double>
- </property>
- <property name="mass" >
- <double>0.000000000000000</double>
- </property>
- </widget>
- <widget class="QLabel" name="Waterfall3DMinimumIntensityLabel" >
- <property name="geometry" >
- <rect>
- <x>565</x>
- <y>325</y>
- <width>55</width>
- <height>20</height>
- </rect>
- </property>
- <property name="text" >
- <string>-100 dB</string>
- </property>
- <property name="wordWrap" >
- <bool>false</bool>
- </property>
- </widget>
- <widget class="QFrame" name="Waterfall3DPlotDisplayFrame" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>30</y>
- <width>615</width>
- <height>295</height>
- </rect>
- </property>
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
- </property>
- </widget>
- <widget class="QComboBox" name="Waterfall3DIntensityComboBox" >
- <property name="geometry" >
- <rect>
- <x>90</x>
- <y>0</y>
- <width>121</width>
- <height>25</height>
- </rect>
- </property>
+ </item>
+ <item row="3" column="0" >
+ <layout class="QHBoxLayout" name="horizontalLayout" >
<item>
- <property name="text" >
- <string>Color</string>
- </property>
+ <widget class="QLabel" name="WindowLbl" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string>Window:</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
</item>
<item>
- <property name="text" >
- <string>White Hot</string>
- </property>
+ <widget class="QComboBox" name="WindowComboBox" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="font" >
+ <font>
+ <pointsize>9</pointsize>
+ </font>
+ </property>
+ <item>
+ <property name="text" >
+ <string>Hamming</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Hann</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Blackman</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Rectangular</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Kaiser</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Blackman-harris</string>
+ </property>
+ </item>
+ </widget>
</item>
- <item>
- <property name="text" >
- <string>Black Hot</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>Incandescent</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>User Defined</string>
- </property>
- </item>
- </widget>
- <widget class="QwtWheel" name="Waterfall3DMaximumIntensityWheel" >
- <property name="geometry" >
- <rect>
- <x>215</x>
- <y>0</y>
- <width>335</width>
- <height>24</height>
- </rect>
+ </layout>
+ </item>
+ <item row="0" column="0" colspan="4" >
+ <widget class="QTabWidget" name="SpectrumTypeTab" >
+ <property name="currentIndex" >
+ <number>0</number>
</property>
- <property name="mouseTracking" >
- <bool>true</bool>
- </property>
- <property name="focusPolicy" >
- <enum>Qt::WheelFocus</enum>
- </property>
- <property name="valid" >
- <bool>true</bool>
- </property>
- <property name="totalAngle" >
- <double>200.000000000000000</double>
- </property>
- <property name="viewAngle" >
- <double>20.000000000000000</double>
- </property>
- <property name="mass" >
- <double>0.000000000000000</double>
- </property>
+ <widget class="QWidget" name="FrequencyPage" >
+ <attribute name="title" >
+ <string>Frequency Display</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout" >
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_2" >
+ <item>
+ <widget class="QFrame" name="FrequencyPlotDisplayFrame" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>615</width>
+ <height>332</height>
+ </size>
+ </property>
+ <property name="sizeIncrement" >
+ <size>
+ <width>1</width>
+ <height>1</height>
+ </size>
+ </property>
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QGridLayout" name="gridLayout_2" >
+ <item row="1" column="0" >
+ <widget class="QCheckBox" name="MaxHoldCheckBox" >
+ <property name="text" >
+ <string>Max Hold</string>
+ </property>
+ <property name="checked" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QCheckBox" name="MinHoldCheckBox" >
+ <property name="text" >
+ <string>Min Hold</string>
+ </property>
+ <property name="checked" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="3" >
+ <widget class="QLabel" name="PowerLabel" >
+ <property name="minimumSize" >
+ <size>
+ <width>50</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>Power</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignCenter</set>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QPushButton" name="MaxHoldResetBtn" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>25</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="4" >
+ <widget class="QLabel" name="AvgLabel" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>62</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>Average</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignCenter</set>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QPushButton" name="MinHoldResetBtn" >
+ <property name="text" >
+ <string>Reset</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="4" >
+ <widget class="QSpinBox" name="AvgLineEdit" />
+ </item>
+ <item row="2" column="3" >
+ <widget class="QLineEdit" name="PowerLineEdit" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>50</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>50</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>1</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2" >
+ <spacer name="horizontalSpacer_2" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>325</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="WaterfallPage" >
+ <attribute name="title" >
+ <string>Waterfall Display</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_3" >
+ <item row="0" column="0" >
+ <widget class="QLabel" name="textLabel1" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>Intensity Display:</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="2" >
+ <widget class="QwtWheel" name="WaterfallMaximumIntensityWheel" >
+ <property name="minimumSize" >
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="mouseTracking" >
+ <bool>true</bool>
+ </property>
+ <property name="focusPolicy" >
+ <enum>Qt::WheelFocus</enum>
+ </property>
+ <property name="valid" >
+ <bool>true</bool>
+ </property>
+ <property name="totalAngle" >
+ <double>200.000000000000000</double>
+ </property>
+ <property name="viewAngle" >
+ <double>20.000000000000000</double>
+ </property>
+ <property name="mass" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3" >
+ <widget class="QLabel" name="WaterfallMaximumIntensityLabel" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>100 dB</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="4" >
+ <widget class="QFrame" name="WaterfallPlotDisplayFrame" >
+ <property name="minimumSize" >
+ <size>
+ <width>617</width>
+ <height>338</height>
+ </size>
+ </property>
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="2" >
+ <widget class="QwtWheel" name="WaterfallMinimumIntensityWheel" >
+ <property name="minimumSize" >
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="valid" >
+ <bool>true</bool>
+ </property>
+ <property name="totalAngle" >
+ <double>200.000000000000000</double>
+ </property>
+ <property name="viewAngle" >
+ <double>20.000000000000000</double>
+ </property>
+ <property name="mass" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3" >
+ <widget class="QLabel" name="WaterfallMinimumIntensityLabel" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>-100 dB</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2" >
+ <widget class="QPushButton" name="WaterfallAutoScaleBtn" >
+ <property name="maximumSize" >
+ <size>
+ <width>80</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip" >
+ <string>Scales the Intensity to the current data extremes.</string>
+ </property>
+ <property name="text" >
+ <string>Auto Scale</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QComboBox" name="WaterfallIntensityComboBox" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <item>
+ <property name="text" >
+ <string>Color</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>White Hot</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Black Hot</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Incandescent</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>User Defined</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ </layout>
+ <zorder>textLabel1</zorder>
+ <zorder>WaterfallMaximumIntensityWheel</zorder>
+ <zorder>WaterfallMaximumIntensityLabel</zorder>
+ <zorder>WaterfallPlotDisplayFrame</zorder>
+ <zorder>WaterfallMinimumIntensityWheel</zorder>
+ <zorder>WaterfallMinimumIntensityLabel</zorder>
+ <zorder>WaterfallAutoScaleBtn</zorder>
+ <zorder>WaterfallIntensityComboBox</zorder>
+ </widget>
+ <widget class="QWidget" name="Waterfall3DPage" >
+ <attribute name="title" >
+ <string>3D Waterfall Display</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_6" >
+ <item row="0" column="0" >
+ <widget class="QLabel" name="textLabel1_2" >
+ <property name="minimumSize" >
+ <size>
+ <width>0</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>Intensity Display:</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QComboBox" name="Waterfall3DIntensityComboBox" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <item>
+ <property name="text" >
+ <string>Color</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>White Hot</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Black Hot</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>Incandescent</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>User Defined</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="0" column="2" >
+ <widget class="QwtWheel" name="Waterfall3DMaximumIntensityWheel" >
+ <property name="minimumSize" >
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="mouseTracking" >
+ <bool>true</bool>
+ </property>
+ <property name="focusPolicy" >
+ <enum>Qt::WheelFocus</enum>
+ </property>
+ <property name="valid" >
+ <bool>true</bool>
+ </property>
+ <property name="totalAngle" >
+ <double>200.000000000000000</double>
+ </property>
+ <property name="viewAngle" >
+ <double>20.000000000000000</double>
+ </property>
+ <property name="mass" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3" >
+ <widget class="QLabel" name="Waterfall3DMaximumIntensityLabel" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>100 dB</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="4" >
+ <widget class="QFrame" name="Waterfall3DPlotDisplayFrame" >
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2" >
+ <widget class="QPushButton" name="Waterfall3DAutoScaleBtn" >
+ <property name="minimumSize" >
+ <size>
+ <width>0</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize" >
+ <size>
+ <width>80</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="sizeIncrement" >
+ <size>
+ <width>0</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="toolTip" >
+ <string>Scales the Intensity to the current data extremes.</string>
+ </property>
+ <property name="text" >
+ <string>Auto Scale</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="2" >
+ <widget class="QwtWheel" name="Waterfall3DMinimumIntensityWheel" >
+ <property name="minimumSize" >
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="valid" >
+ <bool>true</bool>
+ </property>
+ <property name="totalAngle" >
+ <double>200.000000000000000</double>
+ </property>
+ <property name="viewAngle" >
+ <double>20.000000000000000</double>
+ </property>
+ <property name="mass" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="3" >
+ <widget class="QLabel" name="Waterfall3DMinimumIntensityLabel" >
+ <property name="maximumSize" >
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="text" >
+ <string>-100 dB</string>
+ </property>
+ <property name="wordWrap" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="TimeDomainPage" >
+ <attribute name="title" >
+ <string>Time Domain Display</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_4" >
+ <item row="0" column="0" >
+ <widget class="QFrame" name="TimeDomainDisplayFrame" >
+ <property name="minimumSize" >
+ <size>
+ <width>617</width>
+ <height>404</height>
+ </size>
+ </property>
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="ConstellationPage" >
+ <attribute name="title" >
+ <string>Constellation Display</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_5" >
+ <item row="0" column="0" >
+ <widget class="QFrame" name="ConstellationDisplayFrame" >
+ <property name="minimumSize" >
+ <size>
+ <width>617</width>
+ <height>406</height>
+ </size>
+ </property>
+ <property name="frameShape" >
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow" >
+ <enum>QFrame::Raised</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
</widget>
- </widget>
- <widget class="QWidget" name="TimeDomainPage" >
- <attribute name="title" >
- <string>Time Domain Display</string>
- </attribute>
- <widget class="QFrame" name="TimeDomainDisplayFrame" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>5</y>
- <width>620</width>
- <height>340</height>
- </rect>
- </property>
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
- </property>
- </widget>
- </widget>
- <widget class="QWidget" name="ConstellationPage" >
- <attribute name="title" >
- <string>Constellation Display</string>
- </attribute>
- <widget class="QFrame" name="ConstellationDisplayFrame" >
- <property name="geometry" >
- <rect>
- <x>5</x>
- <y>5</y>
- <width>620</width>
- <height>340</height>
- </rect>
- </property>
- <property name="frameShape" >
- <enum>QFrame::StyledPanel</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Raised</enum>
- </property>
- </widget>
- </widget>
- </widget>
+ </item>
+ </layout>
</widget>
<layoutdefault spacing="6" margin="11" />
<pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
@@ -698,14 +769,7 @@
</customwidgets>
<tabstops>
<tabstop>SpectrumTypeTab</tabstop>
- <tabstop>MaxHoldCheckBox</tabstop>
- <tabstop>MaxHoldResetBtn</tabstop>
- <tabstop>MinHoldCheckBox</tabstop>
- <tabstop>MinHoldResetBtn</tabstop>
- <tabstop>PowerLineEdit</tabstop>
- <tabstop>AvgLineEdit</tabstop>
<tabstop>UseRFFrequenciesCheckBox</tabstop>
- <tabstop>WindowComboBox</tabstop>
<tabstop>FFTSizeComboBox</tabstop>
<tabstop>WaterfallMaximumIntensityWheel</tabstop>
<tabstop>WaterfallMinimumIntensityWheel</tabstop>
@@ -787,22 +851,6 @@
</hints>
</connection>
<connection>
- <sender>AvgLineEdit</sender>
- <signal>textChanged(QString)</signal>
- <receiver>SpectrumDisplayForm</receiver>
- <slot>AvgLineEdit_textChanged(QString)</slot>
- <hints>
- <hint type="sourcelabel" >
- <x>552</x>
- <y>344</y>
- </hint>
- <hint type="destinationlabel" >
- <x>20</x>
- <y>20</y>
- </hint>
- </hints>
- </connection>
- <connection>
<sender>PowerLineEdit</sender>
<signal>textChanged(QString)</signal>
<receiver>SpectrumDisplayForm</receiver>
@@ -1010,5 +1058,21 @@
</hint>
</hints>
</connection>
+ <connection>
+ <sender>AvgLineEdit</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>SpectrumDisplayForm</receiver>
+ <slot>AvgLineEdit_valueChanged(int)</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>604</x>
+ <y>421</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>328</x>
+ <y>260</y>
+ </hint>
+ </hints>
+ </connection>
</connections>
</ui>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r11572 - gnuradio/trunk/gr-qtgui/src/lib,
trondeau <=