ENH: Display overlay by default

This commit is contained in:
Tony S Yu
2012-07-24 00:28:37 -04:00
parent daae405945
commit 0e8f444fbb
3 changed files with 14 additions and 6 deletions
+9 -1
View File
@@ -84,7 +84,12 @@ class Plugin(QtGui.QDialog):
arguments = [self._get_value(a) for a in self.arguments]
kwargs = dict([(name, self._get_value(a))
for name, a in self.keyword_arguments.iteritems()])
self.image_filter(*arguments, **kwargs)
filtered = self.image_filter(*arguments, **kwargs)
self.display_filtered_image(filtered)
def display_filtered_image(self, image):
"""Override this method to display image on image viewer."""
pass
def _get_value(self, param):
return param if not hasattr(param, 'val') else param.val()
@@ -102,6 +107,9 @@ class Plugin(QtGui.QDialog):
self.layout.addWidget(widget, self.row, 0)
self.row += 1
def __iadd__(self, widget):
self.add_widget(widget)
def update_plugin(self, name, value):
setattr(self, name, value)
+1 -5
View File
@@ -9,7 +9,7 @@ class CannyPlugin(OverlayPlugin):
name = 'Canny Filter'
def __init__(self, *args, **kwargs):
super(CannyPlugin, self).__init__(**kwargs)
super(CannyPlugin, self).__init__(image_filter=canny, **kwargs)
self.add_widget(Slider('sigma', 0, 5, update_on='release'))
self.add_widget(Slider('low threshold', 0, 255, update_on='release'))
@@ -20,7 +20,3 @@ class CannyPlugin(OverlayPlugin):
super(CannyPlugin, self).attach(image_viewer)
# Update image overlay to default slider values.
self.filter_image()
def image_filter(self, *args, **kwargs):
image = canny(*args, **kwargs)
self.overlay = image
+4
View File
@@ -45,6 +45,10 @@ class OverlayPlugin(Plugin):
self._overlay_plot.set_array(image)
self.image_viewer.redraw()
def display_filtered_image(self, image):
"""Display image over image in viewer."""
self.overlay = image
def closeEvent(self, event):
self.overlay = None
super(OverlayPlugin, self).closeEvent(event)