Ejemplo n.º 1
0
    def __init__(self, c_instance):
        ControlSurface.__init__(self, c_instance)
        #self.log_message(time.strftime("%d.%m.%Y %H:%M:%S", time.localtime()) + "--------------= PocketDial log opened =--------------")

        # turn off rebuild MIDI map until after setup
        #self._set_suppress_rebuild_requests(True)
        with self.component_guard():
            self._controls = [
                EncoderElement(MIDI_CC_TYPE, settings.CHANNEL, cc,
                               settings.MAP_MODE) for cc in settings.CCS
            ]

            mixer = MixerControl(self)
            session = SessionControl(self)
            device = DeviceControl(self)
            track = TrackControl(self)

            # bind mixer to session
            session.component.set_mixer(mixer.component)
            self.set_highlighting_session_component(session.component)

            # "magic" internal self._device_component, which enables lock to device, etc.
            self.set_device_component(device.component)

            # register components (Live 8 only?)
            #self._register_component(session.component)
            #self._register_component(mixer.component)
            #self._register_component(device.component)

            self._device = device
            self._track = track
Ejemplo n.º 2
0
    def __init__(self, c_instance):
        ControlSurface.__init__(self, c_instance)
        #self.log_message(time.strftime("%d.%m.%Y %H:%M:%S", time.localtime()) + "--------------= PocketDial log opened =--------------")

        # turn off rebuild MIDI map until after setup
        self.set_suppress_rebuild_requests(True)

        self._controls = [
            EncoderElement(MIDI_CC_TYPE, settings.CHANNEL, cc,
                           settings.MAP_MODE) for cc in settings.CCS
        ]

        mixer = MixerControl(self)
        session = SessionControl(self)

        device = DeviceControl(self)
        track = TrackControl(self)

        #timer = TimerComponent(self)
        #       def _translate_message(self, type, from_identifier, from_channel, to_identifier, to_channel):
        #       if not type in (MIDI_CC_TYPE, MIDI_NOTE_TYPE):
        #           raise AssertionError
        #           raise from_identifier in range(128) or AssertionError
        #           raise from_channel in range(16) or AssertionError
        #           raise to_identifier in range(128) or AssertionError
        #           raise to_channel in range(16) or AssertionError
        #           type == MIDI_CC_TYPE and self._c_instance.set_cc_translation(from_identifier, from_channel, to_identifier, to_channel)
        #       elif type == MIDI_NOTE_TYPE:
        #           self._c_instance.set_note_translation(from_identifier, from_channel, to_identifier, to_channel)
        #       else:
        #           raise False or AssertionError

        # Live 9 only
        #self.set_highlighting_session_component(session)

        # bind mixer to session
        session.component.set_mixer(mixer.component)

        # "magic" internal self._device_component, which enables lock to device, etc.
        self.set_device_component(device.component)

        # register components needed? works without
        #self._register_component(session.component)
        #self._register_component(mixer.component)
        #self._register_component(device.component)

        self._device = device
        self._track = track

        # turn rebuild back on
        self.set_suppress_rebuild_requests(False)
	def __init__(self, c_instance):
		#log("SelectedTrackControl::__init__")
		self.c_instance = c_instance
		
		# mappings for registered MIDI notes/CCs
		self.midi_callbacks = {}
		
		# lookup object for fast lookup of cc to mode
		self.midi_cc_to_mode = {}
		# parse midi_mapping recursive for MIDI.CC
		self.mapping_parse_recursive(settings.midi_mapping.values())
		
		self._device_control = DeviceControl(c_instance, self)
		
		self.components = (
			SessionControl(c_instance, self),
			MixerControl(c_instance, self),
			GlobalControl(c_instance, self),
			ViewControl(c_instance, self),
			self._device_control,
			QuantizationControl(c_instance, self),
		)