def __init__(self, parent, getter, setter, emitter=None, lightness=1, saturation=1, dialog_title='Select hue', help_text='Shows the current hue. Click to change.', size=(25, 10)): CuteWindow.__init__(self, parent, size=size, style=wx.SIMPLE_BORDER) self.getter = getter self.setter = setter self.lightness = lightness self.saturation = saturation self.dialog_title = dialog_title self.SetHelpText(help_text) self._pen = wx.Pen(wx.Colour(0, 0, 0), width=0, style=wx.TRANSPARENT) self.bind_event_handlers(HueControl) if emitter: assert isinstance(emitter, Emitter) self.emitter = emitter self.emitter.add_output(self.update) else: assert emitter is None self.emitter = Emitter(outputs=(self.update, ), name='hue_modified') old_setter = self.setter def new_setter(value): old_setter(value) self.emitter.emit() self.setter = new_setter