def disconnect(self): """ Live -> Script: Called right before we get disconnected from Live """ for message in self._scheduled_messages: if (message['Parameter'] != None): message['Message'](message['Parameter']) else: message['Message']() self._scheduled_messages = None self._forwarding_registry = None for component in self._components: component.disconnect() for control in self._controls: control.disconnect() self._controls = None self._components = None self._displays = None self._timer_callbacks = None self._device_component = None self._pad_translations = None ControlElement.release_class_attributes() InputControlElement.release_class_attributes() ControlSurfaceComponent.release_class_attributes() SessionComponent.release_class_attributes() self.song().remove_tracks_listener(self._on_track_list_changed) self.song().remove_scenes_listener(self._on_scene_list_changed) self.song().view.remove_selected_track_listener(self._on_selected_track_changed) self.song().view.remove_selected_scene_listener(self._on_selected_scene_changed)
def disconnect(self): """ Live -> Script: Called right before we get disconnected from Live """ for message in self._scheduled_messages: if (message['Parameter'] != None): message['Message'](message['Parameter']) else: message['Message']() self._scheduled_messages = None self._forwarding_registry = None for component in self._components: component.disconnect() for control in self._controls: control.disconnect() self._controls = None self._components = None self._displays = None self._timer_callbacks = None self._device_component = None self._pad_translations = None ControlElement.release_class_attributes() InputControlElement.release_class_attributes() ControlSurfaceComponent.release_class_attributes() SessionComponent.release_class_attributes() self.song().remove_tracks_listener(self._on_track_list_changed) self.song().remove_scenes_listener(self._on_scene_list_changed) self.song().view.remove_selected_track_listener( self._on_selected_track_changed) self.song().view.remove_selected_scene_listener( self._on_selected_scene_changed)
def disconnect(self): """ Live -> Script: Called right before we get disconnected from Live """ for message in self._scheduled_messages: if message['Parameter'] != None: message['Message'](message['Parameter']) else: message['Message']() self._scheduled_messages = None self._forwarding_registry = None for component in self.components: component.disconnect() for control in self.controls: control.disconnect() self.controls = None self.components = None self._displays = None self._timer_callbacks = None self._device_component = None self._pad_translations = None ControlElement.release_class_attributes() InputControlElement.release_class_attributes() ControlSurfaceComponent.release_class_attributes() SessionComponent.release_class_attributes() self.song().remove_visible_tracks_listener(self._on_track_list_changed) self.song().remove_scenes_listener(self._on_scene_list_changed) self.song().view.remove_selected_track_listener(self._on_selected_track_changed) self.song().view.remove_selected_scene_listener(self._on_selected_scene_changed) if isinstance(__builtins__, dict): if CS_LIST_KEY not in __builtins__.keys(): __builtins__[CS_LIST_KEY] = [] if self in __builtins__[CS_LIST_KEY]: __builtins__[CS_LIST_KEY].remove(self) else: if hasattr(__builtins__, CS_LIST_KEY): cs_list = getattr(__builtins__, CS_LIST_KEY) if self in cs_list: cs_list.remove(self) setattr(__builtins__, CS_LIST_KEY, cs_list) return None