Fixes the replotting update. It's now based on a QTimer so it's in the event buffer...
[debian/gnuradio] / gr-qtgui / src / lib / qtgui_sink_f.cc
index 6fbb2f381ce26e251320602f42ab91f41bddeb83..a088e28e953e606e815e4c48f49ffd49b2f17a87 100644 (file)
@@ -140,6 +140,9 @@ qtgui_sink_f::initialize(const bool opengl)
                                 d_plotconst,
                                 opengl);
 
+  // initialize update time to 10 times a second
+  set_update_time(100);
+
   d_object = new qtgui_obj(d_qApplication);
   qApp->postEvent(d_object, new qtgui_event(&d_pmutex));
 }
@@ -201,6 +204,13 @@ qtgui_sink_f::set_frequency_axis(double min, double max)
   d_main_gui->SetFrequencyAxis(min, max);
 }
 
+void
+qtgui_sink_f::set_update_time(double t)
+{
+  d_update_time = t;
+  d_main_gui->SetUpdateTime(d_update_time);
+}
+
 void
 qtgui_sink_f::fft(const float *data_in, int size)
 {
@@ -295,7 +305,7 @@ qtgui_sink_f::general_work (int noutput_items,
       
       d_main_gui->UpdateWindow(true, d_fft->get_outbuf(), d_fftsize,
                               (float*)d_residbuf, d_fftsize, NULL, 0,
-                              1.0/4.0, currentTime, true);
+                              currentTime, true);
     }
     // Otherwise, copy what we received into the residbuf for next time
     else {