commit-gnuradio
[Top][All Lists]
Advanced

[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>&lt;font size="-2">Intensity Display:&lt;/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>&lt;font size="-2">Intensity Display:&lt;/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>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]