Ejemplo n.º 1
0
 def __init__(self, *a, **k):
     super(ATOM, self).__init__(*a, **k)
     with self.component_guard():
         with inject(skin=const(skin)).everywhere():
             self._elements = Elements()
     with self.component_guard():
         with inject(element_container=const(self._elements)).everywhere():
             self._create_lighting()
             self._create_transport()
             self._create_record_modes()
             self._create_undo()
             self._create_view_toggle()
             self._create_background()
             self._create_session()
             self._create_mixer()
             self._create_encoder_modes()
             self._create_session_navigation_modes()
             self._create_keyboard()
             self._create_drum_group()
             self._create_note_modes()
             self._create_pad_modes()
             self._create_user_assignments_mode()
             self._target_track = ArmedTargetTrackComponent(
                 name=u'Target_Track')
             self.__on_target_track_changed.subject = self._target_track
     self._drum_group_finder = self.register_disconnectable(
         PercussionInstrumentFinder(
             device_parent=self._target_track.target_track))
     self.__on_drum_group_changed.subject = self._drum_group_finder
     self.__on_drum_group_changed()
     self.__on_main_view_changed.subject = self.application.view
Ejemplo n.º 2
0
 def __init__(self, *a, **k):
     super(ComradeEncoders, self).__init__((), *a, **k)
     self._main_modes = NullModes()
     self._element_injector = inject(element_container=const(None)).everywhere()
     self._message_injector = inject(message=const(None)).everywhere()
     with self.component_guard():
         with inject(skin=const(skin), message_cache=const(self._sysex_message_cache)).everywhere():
             self._elements = Elements()
     self._element_injector = inject(element_container=const(self._elements)).everywhere()
     with self.component_guard():
         self._create_message()
     self._message_injector = inject(message=const(self._message)).everywhere()
     self._switch_display_layout(sysex.KNOB_SCREEN_LAYOUT_BYTE)
     self._device_bank_registry = DeviceBankRegistry()
     with self.component_guard():
         self._create_transport()
         self._create_auto_arm()
         self._create_drums()
         self._create_device()
         self._create_device_navigation()
         self._create_actions()
         self._create_clip_actions()
         self._create_background()
         self._create_modes()
     self._drum_group_finder = self.register_disconnectable(PercussionInstrumentFinder(device_parent=self.song.view.selected_track))
     self.__on_drum_group_found.subject = self._drum_group_finder
     self.__on_drum_group_found()
     self.__on_selected_track_changed.subject = self.song.view
     self.__on_selected_track_changed()
     self.__on_record_mode_changed.subject = self.song
     self.set_feedback_channels([DRUM_FEEDBACK_CHANNEL])
     self._set_feedback_velocity()
 def _create_components(self):
     super(InstrumentControlMixin, self)._create_components()
     self._target_track = self.target_track_class(name=u'Target_Track')
     self._drum_group_finder = self.register_disconnectable(PercussionInstrumentFinder(device_parent=self._target_track.target_track))
     self.__on_drum_group_changed.subject = self._drum_group_finder
     self.__on_target_track_changed.subject = self._target_track
     self.__on_session_record_changed.subject = self.song
     self.__on_record_mode_changed.subject = self.song
     self._set_feedback_velocity()
Ejemplo n.º 4
0
 def __init__(self, *a, **k):
     self._oled_display_track_name_data_source = DisplayDataSource()
     self._oled_display_volume_value_data_source = DisplayDataSource()
     self._track_name_or_volume_value_display = None
     self._drum_group_finder = None
     super(ChannelStripComponent, self).__init__(*a, **k)
     self.__on_selected_track_changed.subject = self.song.view
     self.__on_selected_track_changed()
     self._drum_group_finder = self.register_disconnectable(PercussionInstrumentFinder(device_parent=self.track))
Ejemplo n.º 5
0
 def __init__(self, *a, **k):
     (super(SLMkIII, self).__init__)(
         a,
         product_id_bytes=sysex.NOVATION_MANUFACTURER_ID +
         sysex.DEVICE_FAMILY_CODE + sysex.DEVICE_FAMILY_MEMBER_CODE,
         **k)
     self._main_modes = NullModes()
     self._element_injector = inject(
         element_container=(const(None))).everywhere()
     self._message_injector = inject(message=(const(None))).everywhere()
     with self.component_guard():
         with inject(skin=(const(skin)),
                     message_cache=(const(
                         self._sysex_message_cache))).everywhere():
             self._elements = Elements()
     self._element_injector = inject(
         element_container=(const(self._elements))).everywhere()
     with self.component_guard():
         self._create_message()
     self._message_injector = inject(
         message=(const(self._message))).everywhere()
     self._switch_display_layout(sysex.KNOB_SCREEN_LAYOUT_BYTE)
     self._device_bank_registry = DeviceBankRegistry()
     with self.component_guard():
         self._create_session()
         self._create_mixer()
         self._create_transport()
         self._create_session_recording()
         self._create_auto_arm()
         self._create_track_navigation()
         self._create_drums()
         self._create_device()
         self._create_device_navigation()
         self._create_actions()
         self._create_clip_actions()
         self._create_background()
         self._create_modes()
     self._drum_group_finder = self.register_disconnectable(
         PercussionInstrumentFinder(
             device_parent=(self.song.view.selected_track)))
     self._SLMkIII__on_drum_group_found.subject = self._drum_group_finder
     self._SLMkIII__on_drum_group_found()
     self._SLMkIII__on_selected_track_changed.subject = self.song.view
     self._SLMkIII__on_selected_track_changed()
     self._SLMkIII__on_session_record_changed.subject = self.song
     self._SLMkIII__on_record_mode_changed.subject = self.song
     self.set_feedback_channels([DRUM_FEEDBACK_CHANNEL])
     self._set_feedback_velocity()
Ejemplo n.º 6
0
 def _create_drum_finder(self):
     self._target_track_provider = TargetTrackProvider()
     self._percussion_instrument_finder = self.register_disconnectable(
         PercussionInstrumentFinder(
             device_parent=self._target_track_provider.target_track))