summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gr-qtgui/grc/qtgui_freq_sink_x.xml17
-rw-r--r--gr-qtgui/include/gnuradio/qtgui/FrequencyDisplayPlot.h3
-rw-r--r--gr-qtgui/include/gnuradio/qtgui/freq_sink_c.h1
-rw-r--r--gr-qtgui/include/gnuradio/qtgui/freq_sink_f.h2
-rw-r--r--gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h2
-rw-r--r--gr-qtgui/lib/FrequencyDisplayPlot.cc13
-rw-r--r--gr-qtgui/lib/freq_sink_c_impl.cc7
-rw-r--r--gr-qtgui/lib/freq_sink_c_impl.h1
-rw-r--r--gr-qtgui/lib/freq_sink_f_impl.cc7
-rw-r--r--gr-qtgui/lib/freq_sink_f_impl.h1
-rw-r--r--gr-qtgui/lib/freqdisplayform.cc6
11 files changed, 59 insertions, 1 deletions
diff --git a/gr-qtgui/grc/qtgui_freq_sink_x.xml b/gr-qtgui/grc/qtgui_freq_sink_x.xml
index d7c3139849..f69650fab3 100644
--- a/gr-qtgui/grc/qtgui_freq_sink_x.xml
+++ b/gr-qtgui/grc/qtgui_freq_sink_x.xml
@@ -22,6 +22,7 @@ qtgui.$(type.fcn)(
)
self.$(id).set_update_time($update_time)
self.$(id).set_y_axis($ymin, $ymax)
+self.$(id).set_y_label($label, $units)
self.$(id).set_trigger_mode($tr_mode, $tr_level, $tr_chan, $tr_tag)
self.$(id).enable_autoscale($autoscale)
self.$(id).enable_grid($grid)
@@ -252,6 +253,22 @@ $(gui_hint()($win))</make>
</param>
<param>
+ <name>Y label</name>
+ <key>label</key>
+ <value>Relative Gain</value>
+ <type>string</type>
+ <hide>part</hide>
+ </param>
+
+ <param>
+ <name>Y units</name>
+ <key>units</key>
+ <value>dB</value>
+ <type>string</type>
+ <hide>part</hide>
+ </param>
+
+ <param>
<name>Number of Inputs</name>
<key>nconnections</key>
<value>1</value>
diff --git a/gr-qtgui/include/gnuradio/qtgui/FrequencyDisplayPlot.h b/gr-qtgui/include/gnuradio/qtgui/FrequencyDisplayPlot.h
index 8b2ef457fb..5c6b2c71b0 100644
--- a/gr-qtgui/include/gnuradio/qtgui/FrequencyDisplayPlot.h
+++ b/gr-qtgui/include/gnuradio/qtgui/FrequencyDisplayPlot.h
@@ -118,6 +118,9 @@ public slots:
void setPlotPosHalf(bool half);
+ void setYLabel(const std::string &label,
+ const std::string &unit);
+
void clearMaxData();
void clearMinData();
diff --git a/gr-qtgui/include/gnuradio/qtgui/freq_sink_c.h b/gr-qtgui/include/gnuradio/qtgui/freq_sink_c.h
index bf5a91f0df..c77283f1c8 100644
--- a/gr-qtgui/include/gnuradio/qtgui/freq_sink_c.h
+++ b/gr-qtgui/include/gnuradio/qtgui/freq_sink_c.h
@@ -128,6 +128,7 @@ namespace gr {
virtual void set_update_time(double t) = 0;
virtual void set_title(const std::string &title) = 0;
+ virtual void set_y_label(const std::string &label, const std::string &unit) = 0;
virtual void set_line_label(int which, const std::string &label) = 0;
virtual void set_line_color(int which, const std::string &color) = 0;
virtual void set_line_width(int which, int width) = 0;
diff --git a/gr-qtgui/include/gnuradio/qtgui/freq_sink_f.h b/gr-qtgui/include/gnuradio/qtgui/freq_sink_f.h
index f13d5c6e40..ccf9db49a3 100644
--- a/gr-qtgui/include/gnuradio/qtgui/freq_sink_f.h
+++ b/gr-qtgui/include/gnuradio/qtgui/freq_sink_f.h
@@ -126,7 +126,9 @@ namespace gr {
virtual void set_y_axis(double min, double max) = 0;
virtual void set_update_time(double t) = 0;
+
virtual void set_title(const std::string &title) = 0;
+ virtual void set_y_label(const std::string &label, const std::string &unit) = 0;
virtual void set_line_label(int which, const std::string &label) = 0;
virtual void set_line_color(int which, const std::string &color) = 0;
virtual void set_line_width(int which, int width) = 0;
diff --git a/gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h b/gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h
index e7b95cb30e..b11f8a2016 100644
--- a/gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h
+++ b/gr-qtgui/include/gnuradio/qtgui/freqdisplayform.h
@@ -75,6 +75,8 @@ public slots:
void setFrequencyRange(const double centerfreq,
const double bandwidth);
void setYaxis(double min, double max);
+ void setYLabel(const std::string &label,
+ const std::string &unit="");
void setYMax(const QString &m);
void setYMin(const QString &m);
void autoScale(bool en);
diff --git a/gr-qtgui/lib/FrequencyDisplayPlot.cc b/gr-qtgui/lib/FrequencyDisplayPlot.cc
index aef975d332..233c786d0a 100644
--- a/gr-qtgui/lib/FrequencyDisplayPlot.cc
+++ b/gr-qtgui/lib/FrequencyDisplayPlot.cc
@@ -97,7 +97,7 @@ FrequencyDisplayPlot::FrequencyDisplayPlot(int nplots, QWidget* parent)
d_ymax = 10;
setAxisScaleEngine(QwtPlot::yLeft, new QwtLinearScaleEngine);
setAxisScale(QwtPlot::yLeft, d_ymin, d_ymax);
- setAxisTitle(QwtPlot::yLeft, "Power (dB)");
+ setAxisTitle(QwtPlot::yLeft, "Relative Gain (dB)");
QList<QColor> default_colors;
default_colors << QColor(Qt::blue) << QColor(Qt::red) << QColor(Qt::green)
@@ -600,6 +600,17 @@ FrequencyDisplayPlot::onPickerPointSelected6(const QPointF & p)
}
void
+FrequencyDisplayPlot::setYLabel(const std::string &label,
+ const std::string &unit)
+{
+ std::string l = label;
+ if(unit.length() > 0)
+ l += " (" + unit + ")";
+ setAxisTitle(QwtPlot::yLeft, QString(l.c_str()));
+ ((FreqDisplayZoomer*)d_zoomer)->setUnitType(unit);
+}
+
+void
FrequencyDisplayPlot::setMinFFTColor (QColor c)
{
d_min_fft_color = c;
diff --git a/gr-qtgui/lib/freq_sink_c_impl.cc b/gr-qtgui/lib/freq_sink_c_impl.cc
index 7dc0b2cf89..b667ccaee4 100644
--- a/gr-qtgui/lib/freq_sink_c_impl.cc
+++ b/gr-qtgui/lib/freq_sink_c_impl.cc
@@ -266,6 +266,13 @@ namespace gr {
}
void
+ freq_sink_c_impl::set_y_label(const std::string &label,
+ const std::string &unit)
+ {
+ d_main_gui->setYLabel(label, unit);
+ }
+
+ void
freq_sink_c_impl::set_update_time(double t)
{
//convert update time to ticks
diff --git a/gr-qtgui/lib/freq_sink_c_impl.h b/gr-qtgui/lib/freq_sink_c_impl.h
index 8da193bf29..7eec1ba10c 100644
--- a/gr-qtgui/lib/freq_sink_c_impl.h
+++ b/gr-qtgui/lib/freq_sink_c_impl.h
@@ -123,6 +123,7 @@ namespace gr {
void set_update_time(double t);
void set_title(const std::string &title);
+ void set_y_label(const std::string &label, const std::string &unit);
void set_line_label(int which, const std::string &label);
void set_line_color(int which, const std::string &color);
void set_line_width(int which, int width);
diff --git a/gr-qtgui/lib/freq_sink_f_impl.cc b/gr-qtgui/lib/freq_sink_f_impl.cc
index 5418eca9ec..359854593a 100644
--- a/gr-qtgui/lib/freq_sink_f_impl.cc
+++ b/gr-qtgui/lib/freq_sink_f_impl.cc
@@ -265,6 +265,13 @@ namespace gr {
}
void
+ freq_sink_f_impl::set_y_label(const std::string &label,
+ const std::string &unit)
+ {
+ d_main_gui->setYLabel(label, unit);
+ }
+
+ void
freq_sink_f_impl::set_update_time(double t)
{
//convert update time to ticks
diff --git a/gr-qtgui/lib/freq_sink_f_impl.h b/gr-qtgui/lib/freq_sink_f_impl.h
index 39e5c92eac..e52da7fb94 100644
--- a/gr-qtgui/lib/freq_sink_f_impl.h
+++ b/gr-qtgui/lib/freq_sink_f_impl.h
@@ -122,6 +122,7 @@ namespace gr {
void set_update_time(double t);
void set_title(const std::string &title);
+ void set_y_label(const std::string &label, const std::string &unit);
void set_line_label(int which, const std::string &label);
void set_line_color(int which, const std::string &color);
void set_line_width(int which, int width);
diff --git a/gr-qtgui/lib/freqdisplayform.cc b/gr-qtgui/lib/freqdisplayform.cc
index a51da3f35d..141df5475c 100644
--- a/gr-qtgui/lib/freqdisplayform.cc
+++ b/gr-qtgui/lib/freqdisplayform.cc
@@ -323,6 +323,12 @@ FreqDisplayForm::setYaxis(double min, double max)
getPlot()->setYaxis(min, max);
}
+void FreqDisplayForm::setYLabel(const std::string &label,
+ const std::string &unit)
+{
+ getPlot()->setYLabel(label, unit);
+}
+
void
FreqDisplayForm::setYMax(const QString &m)
{