def __del__(self): """ Actions necessary on scan event deletion. """ pub.unsubscribe(self.stop, "scan.stop")
def __del__(self): """ Actions necessary on filter bank deletion. """ pub.unsubscribe(self.ComputeReference, "history.change_reference") pub.unsubscribe(self.RemoveReference, "history.clear_reference")
def OnDestroy(self, evt): """Unbind to all events before the plugin is destroyed.""" pub.unsubscribe(self.OnUpdatePatient) pub.unsubscribe(self.OnStructureCheck) pub.unsubscribe(self.OnIsodoseCheck) pub.unsubscribe(self.OnDrawingPrefsChange) pub.unsubscribe(self.OnPluginLoaded) self.OnUnfocus()
def OnDelete(self, event=None): """ Clean up before destroying object. Parameters: event - wx.Event """ pub.unsubscribe(self.ChangeDefaultUnits, "default_units.changed") event.Skip()
def OnDelete(self, event=None): """ Actions triggered when canvas is deleted. Parameters: event - wx.Event """ PlotCanvas1D.OnDelete(self,event) pub.unsubscribe(self.PostProcess, "filter.change") event.Skip()
def OnUnfocus(self): """Unbind to certain events when the plugin is unfocused.""" # Unbind keyboard and mouse events self.Unbind(wx.EVT_KEY_DOWN) self.Unbind(wx.EVT_MOUSEWHEEL) self.Unbind(wx.EVT_LEFT_DOWN) self.Unbind(wx.EVT_LEFT_UP) self.Unbind(wx.EVT_RIGHT_DOWN) self.Unbind(wx.EVT_RIGHT_UP) self.Unbind(wx.EVT_MOTION) pub.unsubscribe(self.OnKeyDown) pub.unsubscribe(self.OnMouseWheel) pub.unsubscribe(self.OnRefresh)
def unsubscribe(listener): Publisher.unsubscribe(listener)
class fcEventManager(object): ''' Simple wrapper around pubsub to allow for easy exchange against other event libraries. Could probably need a rewrite. I am not sure the EventTypeTemplate and **keys methods are the best way to do this. Maybe just wrap send, subscribe, ... directly. ''' class EventTypeTemplate(type): ''' Meta-class to create a specific event-type''' def __init__(cls, name, bases, dikt): type.__init__(cls, name, bases, dikt) def __init__(self, **keys): self.__dict__.update(**keys) self.vars = keys cls.__init__ = __init__ def __init__(self): self.publisher = Publisher() self.event_types = {} self._wrapper_funcs = {} def send(self, event_name, **keys): try: evt_type = self.event_types[event_name] except KeyError: evt_type = self.event_types[event_name] = self.EventTypeTemplate( event_name, (), {}) event_instance = evt_type(**keys) return self.publisher.sendMessage(event_name, event_instance) def sendEvent(self, event_name, event): return self.publisher.sendMessage(event_name, event) def subscribe(self, subscriber, event_name): def wrap(msg): return subscriber(msg.data) # we need to add this into a dictionary, because we have to keep a # reference to the wrap function. publisher uses weakrefs. self._wrapper_funcs.setdefault(_getId(subscriber), {})[event_name] = wrap return self.publisher.subscribe(wrap, event_name) def unsubscribe(self, subscriber, event_name=None): try: self._wrapper_funcs[_getId(subscriber)] except KeyError: # isn't subscribed here, ignore it return if event_name is None: func = self._wrapper_funcs[_getId(subscriber)].values()[0] else: func = self._wrapper_funcs[_getId(subscriber)][event_name] result = self.publisher.unsubscribe(func, event_name) if event_name is None: del self._wrapper_funcs[_getId(subscriber)] else: del self._wrapper_funcs[_getId(subscriber)][event_name] return result
def OnDestroy(self, evt): """Unbind to all events before the plugin is destroyed.""" pub.unsubscribe(self.OnUpdatePatient)
def OnDestroy(self, evt): """Unbind to all events before the plugin is destroyed.""" pub.unsubscribe(self.OnUpdatePatient) pub.unsubscribe(self.OnStructureCheck) pub.unsubscribe(self.OnStructureSelect)
def Close(self): self.dbconn.close() for callback, topic in self.Subscriptions: # @UnusedVariable Publisher.unsubscribe(callback)
def unsubscribe(function, *args, **kwargs): """Alias for wx.lib.pubsub.Publisher.unsubscribe()""" pub.unsubscribe(function, *args, **kwargs)
def __del__(self): # Unsubscribe when deleted Publisher.unsubscribe(self.OnConfigMsg)
def __del__(self): for callback, topic in self.Subscriptions: Publisher.unsubscribe(callback)
def __del__(self): for callback, topic in self.Subscriptions: # @UnusedVariable Publisher.unsubscribe(callback)
def unsubscribe_all(self): pub.unsubscribe(self.update_channels) pub.unsubscribe(self.process_data)
def stop_debug_subscriptions(self): pub.unsubscribe(self._print_messages) # unsubscribes from all
class fcEventManager(object): ''' Simple wrapper around pubsub to allow for easy exchange against other event libraries. Could probably need a rewrite. I am not sure the EventTypeTemplate and **keys methods are the best way to do this. Maybe just wrap send, subscribe, ... directly. ''' class EventTypeTemplate(type): ''' Meta-class to create a specific event-type''' def __init__(cls, name, bases, dikt): type.__init__(cls, name, bases, dikt) def __init__(self, **keys): self.__dict__.update(**keys) self.vars = keys cls.__init__ = __init__ def __init__(self): self.publisher = Publisher() self.event_types = {} self._wrapper_funcs = {} def send(self, event_name, **keys): try: evt_type = self.event_types[ event_name ] except KeyError: evt_type = self.event_types[ event_name ] = self.EventTypeTemplate( event_name, (), {} ) event_instance = evt_type( **keys ) return self.publisher.sendMessage( event_name, event_instance ) def sendEvent(self, event_name, event): return self.publisher.sendMessage( event_name, event ) def subscribe(self, subscriber, event_name ): def wrap( msg ): return subscriber( msg.data ) # we need to add this into a dictionary, because we have to keep a # reference to the wrap function. publisher uses weakrefs. self._wrapper_funcs.setdefault( _getId(subscriber), {} )[event_name] = wrap return self.publisher.subscribe( wrap, event_name ) def unsubscribe(self, subscriber, event_name = None): try: self._wrapper_funcs[_getId(subscriber)] except KeyError: # isn't subscribed here, ignore it return if event_name is None: func = self._wrapper_funcs[_getId(subscriber)].values()[0] else: func = self._wrapper_funcs[_getId(subscriber)][event_name] result = self.publisher.unsubscribe( func, event_name ) if event_name is None: del self._wrapper_funcs[ _getId(subscriber) ] else: del self._wrapper_funcs[ _getId(subscriber) ][event_name] return result