~strainanalyser/strainanalyser/trunk

« back to all changes in this revision

Viewing changes to strainanalyser/datasetdiff.py

  • Committer: Malcolm Scott
  • Date: 2010-10-18 01:11:29 UTC
  • Revision ID: launchpad@malc.org.uk-20101018011129-oj1j21ipjy1f165p
Add noise filtering

Show diffs side-by-side

added added

removed removed

Lines of Context:
124
124
                                self.get_object("noisefilt_%s_%s" % (i,j)).set_sensitive(widget.get_active())
125
125
                self.datagraph.redraw()
126
126
 
127
 
        def on_noisefilt_order_slider_value_changed(self, widget):
128
 
                self.diff.noisefilt_order = widget.get_value()
 
127
        def on_noisefilt_order_value_changed(self, widget):
 
128
                order = widget.get_value()
 
129
                self.diff.noisefilt_order = order
 
130
                self.get_object("noisefilt_kernel").set_lower(2*order + 1)
129
131
                self.datagraph.redraw()
130
132
 
131
 
        def on_noisefilt_kernel_slider_value_changed(self, widget):
132
 
                self.diff.noisefilt_kernel = widget.get_value()
133
 
                self.datagraph.redraw()
 
133
        def on_noisefilt_kernel_value_changed(self, widget):
 
134
                kernel = widget.get_value()
 
135
                if kernel%2 == 0:
 
136
                        # kernel must be odd
 
137
                        widget.set_value(kernel + 1)
 
138
                elif kernel <= 2*self.diff.noisefilt_order:
 
139
                        widget.set_value(2*self.diff.noisefilt_order + 1)
 
140
                else:
 
141
                        self.diff.noisefilt_kernel = widget.get_value()
 
142
                        self.datagraph.redraw()
134
143
 
135
144
        def on_datasetlist_ref_toggled(self, widget, path):
136
145
                # update dataset collection (have to do the radio button logic ourselves...)