Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
    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)
Ejemplo n.º 3
0
 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