From: Johnathan Corgan Date: Thu, 13 May 2010 19:29:59 +0000 (-0700) Subject: Merge remote branch 'nldudok1/gr-wxgui_emulate_analog' into master X-Git-Url: https://git.gag.com/?p=debian%2Fgnuradio;a=commitdiff_plain;h=331542fc51eb47a65161ab6d41c6dc8fd1dd1f22 Merge remote branch 'nldudok1/gr-wxgui_emulate_analog' into master * nldudok1/gr-wxgui_emulate_analog: Add analog CRT screen afterglow emulation for gr-wxgui Conflicts: gr-wxgui/src/python/fftsink_gl.py gr-wxgui/src/python/fftsink_nongl.py --- 331542fc51eb47a65161ab6d41c6dc8fd1dd1f22 diff --cc gr-wxgui/src/python/fftsink_gl.py index 8ddea9a8,56476448..0d725ea1 --- a/gr-wxgui/src/python/fftsink_gl.py +++ b/gr-wxgui/src/python/fftsink_gl.py @@@ -52,8 -53,8 +53,10 @@@ class _fft_sink_base(gr.hier_block2, co title='', size=fft_window.DEFAULT_WIN_SIZE, peak_hold=False, + win=None, + emulate_analog=False, + analog_alpha=None, + **kwargs #do not end with a comma ): #ensure avg alpha if avg_alpha is None: avg_alpha = 2.0/fft_rate diff --cc gr-wxgui/src/python/fftsink_nongl.py index 937eb27c,f1c1f439..8735e98a --- a/gr-wxgui/src/python/fftsink_nongl.py +++ b/gr-wxgui/src/python/fftsink_nongl.py @@@ -93,7 -104,7 +104,7 @@@ class fft_sink_f(gr.hier_block2, fft_si def __init__(self, parent, baseband_freq=0, ref_scale=2.0, y_per_div=10, y_divs=8, ref_level=50, sample_rate=1, fft_size=512, fft_rate=default_fft_rate, average=False, avg_alpha=None, - title='', size=default_fftsink_size, peak_hold=False, **kwargs): - title='', size=default_fftsink_size, peak_hold=False, emulate_analog=False,analog_alpha=0.2): ++ title='', size=default_fftsink_size, peak_hold=False, emulate_analog=False,analog_alpha=0.2, **kwargs): gr.hier_block2.__init__(self, "fft_sink_f", gr.io_signature(1, 1, gr.sizeof_float), @@@ -136,7 -149,7 +149,7 @@@ class fft_sink_c(gr.hier_block2, fft_si def __init__(self, parent, baseband_freq=0, ref_scale=2.0, y_per_div=10, y_divs=8, ref_level=50, sample_rate=1, fft_size=512, fft_rate=default_fft_rate, average=False, avg_alpha=None, - title='', size=default_fftsink_size, peak_hold=False, **kwargs): - title='', size=default_fftsink_size, peak_hold=False, emulate_analog=False,analog_alpha=0.2): ++ title='', size=default_fftsink_size, peak_hold=False, emulate_analog=False,analog_alpha=0.2, **kwargs): gr.hier_block2.__init__(self, "fft_sink_c", gr.io_signature(1, 1, gr.sizeof_gr_complex), diff --cc gr-wxgui/src/python/scope_window.py index f7c0ffa8,a6c7bdb4..aace8688 --- a/gr-wxgui/src/python/scope_window.py +++ b/gr-wxgui/src/python/scope_window.py @@@ -85,9 -84,38 +87,40 @@@ class control_panel(wx.Panel) WIDTH = 90 self.parent = parent wx.Panel.__init__(self, parent, style=wx.SUNKEN_BORDER) + parent[SHOW_CONTROL_PANEL_KEY] = True + parent.subscribe(SHOW_CONTROL_PANEL_KEY, self.Show) control_box = wx.BoxSizer(wx.VERTICAL) + + ################################################## + # Emulate Analog + ################################################## + + forms.check_box( + sizer=control_box, parent=self, label='Emulate Analog', + ps=parent, key=EMULATE_ANALOG_KEY, + ) + #static text and slider for analog alpha + analog_alpha_text = forms.static_text( + sizer=control_box, parent=self, label='Analog Alpha', + converter=forms.float_converter(lambda x: '%.4f'%x), + ps=parent, key=ANALOG_ALPHA_KEY, width=50, + ) + analog_alpha_slider = forms.log_slider( + sizer=control_box, parent=self, + min_exp=ANALOG_ALPHA_MIN_EXP, + max_exp=ANALOG_ALPHA_MAX_EXP, + num_steps=SLIDER_STEPS, + ps=parent, key=ANALOG_ALPHA_KEY, + ) + for widget in (analog_alpha_text, analog_alpha_slider): + parent.subscribe(EMULATE_ANALOG_KEY, widget.Enable) + widget.Enable(parent[EMULATE_ANALOG_KEY]) + parent.subscribe(EMULATE_ANALOG_KEY, widget.ShowItems) + #allways show initially, so room is reserved for them + widget.ShowItems(True) # (parent[EMULATE_ANALOG_KEY]) + + parent.subscribe(EMULATE_ANALOG_KEY, self._update_layout) + ################################################## # Axes Options ##################################################