Пример #1
0
	def __init__(self, c_instance, *a, **k):
		self.log_message = logger.warning
		super(Codec, self).__init__(c_instance, *a, **k)
		self._locked = False
		self._shift_button = None
		self._device_selection_follows_track_selection=FOLLOW
		self._leds_last = 0
		self._shift_latching = LatchingShiftedBehaviour if SHIFT_LATCHING else ShiftedBehaviour
		self._skin = Skin(CodecColors)
		with self.component_guard():
			self._define_sysex()
			self._setup_controls()
			self._setup_background()
			self._setup_mixer_controls()
			self._setup_device_navigator()
			self._setup_device_controls()
			self._setup_special_device_control() 
			self._setup_device_chooser()
			self._setup_device_selector()
			self._setup_send_reset()
			self._setup_default_buttons()
			self._setup_shift_modes()
			self._setup_mod()
			self._setup_modswitcher()
			self._setup_modes() 
			self._setup_m4l_interface()
		self._background.set_enabled(True)
Пример #2
0
	def __init__(self, *a, **k):
		super(Cntrlr, self).__init__(*a, **k)
		self._skin = Skin(CntrlrColors)
		for button in self._grid:
			button._skin = self._skin
		self._main_modes.selected_mode = 'Translations'
		self.schedule_message(3, self.initialize_translations)
Пример #3
0
	def __init__(self, *a, **k):
		super(Cntrlr, self).__init__(*a, **k)
		self._skin = Skin(CntrlrColors)
		self._device_selection_follows_track_selection = FOLLOW
		with self.component_guard():
			self._setup_monobridge()
			self._setup_controls()
			self._define_sysex()
			self._setup_background()
			self._setup_translations()
			#self._setup_autoarm()
			self._setup_session_control()
			self._setup_send_reset_controls()
			self._setup_mixer_control()
			self._setup_transport_control()
			self._setup_device_control()
			self._setup_mod_device_control()
			self._setup_device_selector()
			#self._setup_session_recording_component()
			#self._setup_viewcontrol()
			#self._setup_instrument()
			self._setup_mod()
			self._setup_modswitcher()
			self._setup_translations()
			self._setup_modes()
			self._setup_m4l_interface()
			self._on_device_changed.subject = self.song
Пример #4
0
 def __init__(self, msg_type, channel, identifier, skin=Skin(), *a, **k):
     self._skin = skin
     self._header = None
     self._type = consts.FADER_TYPE_STANDARD
     self._color = 0
     super(SliderElement, self).__init__(msg_type, channel, identifier, *a,
                                         **k)
     self.set_needs_takeover(False)
Пример #5
0
 def __init__(self, c_instance):
     super(Alias, self).__init__(c_instance)
     self._skin = Skin(AliasColors)
     with self.component_guard():
         self._setup_controls()
         self._setup_m4l_interface()
         self._setup_session_control()
         self._setup_mixer_control()
         self._setup_mixer_nav()
Пример #6
0
	def __init__(self, *a, **k):
		super(GuitarWing, self).__init__(*a, **k)
		self._skin = Skin(GuitarWingColors)
		with self.component_guard():
			self._setup_controls()
			self._setup_m4l_interface()
			self._setup_session_control()
			self._setup_mixer_control()
			self._setup_device_control()
			self._setup_transport_control()
			self._setup_view_control()
Пример #7
0
 def __init__(self, *a, **k):
     super(Cntrlr, self).__init__(*a, **k)
     self._skin = Skin(CntrlrColors)
     for button in self._grid:
         button._skin = self._skin
     for button in self._button:
         button._skin = self._skin
     for button in self._encoder_button:
         button._skin = self._skin
     self._main_modes.selected_mode = 'FrederikMode'
     self._on_detail_clip_changed.subject = self.song.view
     self._on_selected_scene_changed.subject = self.song.view
Пример #8
0
	def __init__(self, *a, **k):
		super(MonoBlocks, self).__init__(*a, **k)
		self.log_message = logger.info
		self._skin = Skin(MonoBlocksColors)
		with self.component_guard():
			self._setup_monobridge()
			self._setup_controls()
			#self._setup_device()
			self._setup_mod()
			#self._setup_modes()
			self._setup_modswitcher()
		self._on_device_changed.subject = self._device_provider
		self.schedule_message(1, self._open_log)
 def _create_elements(self):
     with self.component_guard():
         skin = Skin(ForceColors if self.is_force else MPCColors)
         with inject(skin=const(skin)).everywhere():
             elements_class = None
             if self.is_force:
                 elements_class = ForceElements
             elif self._product_id == MPC_X_PRODUCT_ID:
                 elements_class = MPCXElements
             elif self._product_id == MPC_LIVE_PRODUCT_ID:
                 elements_class = MPCLiveElements
             self._elements = elements_class(self._product_id)
     self._element_injector = inject(element_container=const(self._elements)).everywhere()
Пример #10
0
Файл: DS1.py Проект: aumhaa/m4m8
 def __init__(self, c_instance):
     super(DS1, self).__init__(c_instance)
     self._skin = Skin(DS1Colors)
     with self.component_guard():
         self._define_sysex()
         self._setup_controls()
         self._setup_background()
         self._setup_m4l_interface()
         self._setup_session_control()
         self._setup_mixer_control()
         self._setup_transport_control()
         self._setup_device_control()
         self._setup_session_recording_component()
         self._setup_main_modes()
Пример #11
0
 def __init__(self, *a, **k):
     super(Twister, self).__init__(*a, **k)
     self._skin = Skin(TwisterColors)
     self._device_selection_follows_track_selection = True
     with self.component_guard():
         self._setup_monobridge()
         self._setup_controls()
         #self._define_sysex()
         self._setup_background()
         self._setup_m4l_interface()
         self._setup_mod()
         self._setup_device_control()
         self._setup_modes()
     self._on_device_changed.subject = self.song
     self._on_selected_track_changed.subject = self.song.view
Пример #12
0
	def __init__(self, *a, **k):
		super(Cntrlr, self).__init__(*a, **k)
		self._skin = Skin(CntrlrColors)
		self._device_selection_follows_track_selection = FOLLOW
		with self.component_guard():
			self._setup_controls()
			self._define_sysex()
			self._setup_background()
			#self._setup_autoarm()
			self._setup_viewcontrol()
			self._setup_session_control()
			self._setup_mixer_control()
			self._setup_transport_control()
			#self._setup_device_control()
			#self._setup_device_selector()
			#self._setup_session_recording_component()
			#self._setup_modes()
			self._setup_m4l_interface()
Пример #13
0
 def __init__(self, c_instance):
     super(OhmModes, self).__init__(c_instance)
     self._skin = Skin(OhmColors)
     with self.component_guard():
         self._define_sysex()
         self._setup_controls()
         self._setup_background()
         self._setup_m4l_interface()
         #self._setup_translations()
         self._setup_session_control()
         self._setup_mixer_control()
         #self._setup_device_control()
         #self._setup_transport_control()
         #self._setup_drumgroup()
         #self._setup_keygroup()
         #self._setup_bassgroup()
         #self._setup_mod()
         #self._setup_modswitcher()
         self._setup_modes()
Пример #14
0
	def __init__(self, c_instance):
		super(OhmModes, self).__init__(c_instance)
		self._skin = Skin(OhmColors)
		with self.component_guard():
			self._define_sysex()
			self._setup_controls()
			self._setup_background()
			self._setup_m4l_interface()
			#self._setup_translations()
			self._setup_session_control()
			self._setup_mixer_control()
			self._setup_instrument()
			#self._setup_device_control()
			#self._setup_transport_control()
			#self._setup_drumgroup()
			#self._setup_keygroup()
			#self._setup_bassgroup()
			#self._setup_mod()
			#self._setup_modswitcher()
			self._setup_modes()
		self._on_device_changed.subject = self._device_provider
		self.set_feedback_channels(FEEDBACK_CHANNELS)
		self._session_ring._update_highlight()
from __future__ import absolute_import, print_function, unicode_literals
from builtins import object
from ableton.v2.control_surface import merge_skins, Skin
from novation.colors import Mono, Rgb
from novation.skin import skin as base_skin


class Colors(object):
    class Recording(object):
        On = Mono.ON
        Off = Mono.OFF

    class TrackNavigation(object):
        On = Mono.HALF
        Pressed = Mono.ON

    class SceneNavigation(object):
        On = Mono.HALF
        Pressed = Mono.ON

    class DrumGroup(object):
        PadSelected = Rgb.WHITE
        PadSelectedNotSoloed = Rgb.WHITE
        PadMutedSelected = Rgb.WHITE
        PadSoloedSelected = Rgb.WHITE
        Navigation = Rgb.WHITE_HALF
        NavigationPressed = Rgb.WHITE


skin = merge_skins(*(base_skin, Skin(Colors)))
 def __init__(self, skin=Skin(), *a, **k):
     super(SkinableSysexElement, self).__init__(*a, **k)
     self._skin = skin
Пример #17
0
        class SendA(object):
            On = Rgb.VIOLET
            Off = Rgb.WHITE_HALF

        class SendB(object):
            On = Rgb.DARK_BLUE
            Off = Rgb.WHITE_HALF

        class Stop(object):
            On = Rgb.RED
            Off = Rgb.WHITE_HALF

        class Mute(object):
            On = Rgb.YELLOW
            Off = Rgb.WHITE_HALF

        class Solo(object):
            On = Rgb.BLUE
            Off = Rgb.WHITE_HALF

        class Arm(object):
            On = Rgb.RED
            Off = Rgb.WHITE_HALF

        class Launch(object):
            On = Rgb.WHITE_HALF


skin = Skin(Colors)
Пример #18
0
def make_default_skin():
    return Skin(Colors)
Пример #19
0
 def __init__(self, *a, **k):
     super(Cntrlr, self).__init__(*a, **k)
     self._skin = Skin(CntrlrColors)
     for button in self._grid:
         button._skin = self._skin
Пример #20
0
        PlayOff = Rgb.GREEN_DIM

    class Session:
        ClipEmpty = Rgb.OFF
        ClipTriggeredPlay = Rgb.GREEN_BLINK
        ClipTriggeredRecord = Rgb.RED_BLINK
        ClipStarted = Rgb.GREEN_PULSE
        ClipRecording = Rgb.RED_PULSE
        RecordButton = Rgb.RED_HALF
        Scene = Rgb.GREEN_HALF
        NoScene = Rgb.OFF
        SceneTriggered = Rgb.GREEN_BLINK
        StopClipTriggered = Rgb.RED_BLINK
        StopClip = Rgb.RED
        StopClipDisabled = Rgb.RED_HALF

    class View:
        DetailOn = Rgb.YELLOW
        DetailOff = Rgb.YELLOW_HALF
        MainOn = Rgb.BLUE
        MainOff = Rgb.BLUE_HALF
        ClipOn = Rgb.PURPLE
        ClipOff = Rgb.PURPLE_HALF
        BrowserOn = Rgb.GREEN
        BrowserOff = Rgb.GREEN_HALF


skin = Skin(Colors)
rgb_skin = Skin(RgbColors)
# okay decompiling /home/deniz/data/projects/midiremote/Live 10.1.18/ATOMSQ/skin.pyc
Пример #21
0
    class Session:
        ClipStopped = SysexRGBColor((31, 31, 0))
        ClipStarted = SysexRGBColor((0, 31, 0))
        ClipRecording = SysexRGBColor((31, 0, 0))
        ClipTriggeredPlay = SysexRGBColor((0, 31, 0))
        ClipTriggeredRecord = SysexRGBColor((31, 0, 0))
        ClipEmpty = SysexRGBColor((0, 0, 0))
        StopClip = Color(0)
        StopClipTriggered = Color(0)
        StopClipDisabled = Color(0)
        StoppedClip = Color(0)

    class Automation:
        On = Color(127)
        Off = Color(0)

    class View:
        Session = Color(0)
        Arranger = Color(127)

    class Mixer:
        MuteOn = Color(127)
        MuteOff = Color(0)
        SoloOn = Color(127)
        SoloOff = Color(0)
        ArmOn = Color(127)
        ArmOff = Color(0)


default_skin = Skin(Colors)
Пример #22
0
class ConfigurableButtonElement(ButtonElement):
    """
    Special button class that can be configured with custom on-
    and off-values.
    
    A ConfigurableButtonElement can have states other than True or
    False, which can be defined by setting the 'states' property.
    Thus 'set_light' can take any state or skin color.
    """

    class Colors:

        class DefaultButton:
            On = Basic.ON
            Off = Basic.HALF
            Disabled = Basic.OFF
            Alert = Basic.FULL_BLINK_FAST

    default_skin = Skin(Colors)
    default_states = {True: 'DefaultButton.On',
     False: 'DefaultButton.Off'}
    num_delayed_messages = 2
    send_depends_on_forwarding = False

    def __init__(self, is_momentary, msg_type, channel, identifier, skin = None, is_rgb = False, default_states = None, *a, **k):
        super(ConfigurableButtonElement, self).__init__(is_momentary, msg_type, channel, identifier, skin=(skin or self.default_skin), *a, **k)
        if default_states is not None:
            self.default_states = default_states
        self.states = dict(self.default_states)
        self.is_rgb = is_rgb
        self._force_next_value = False
        self.set_channel(NON_FEEDBACK_CHANNEL)
        return

    @property
    def _on_value(self):
        return self.states[True]

    @property
    def _off_value(self):
        return self.states[False]

    @property
    def on_value(self):
        return self._try_fetch_skin_value(self._on_value)

    @property
    def off_value(self):
        return self._try_fetch_skin_value(self._off_value)

    def _try_fetch_skin_value(self, value):
        try:
            return self._skin[value]
        except SkinColorMissingError:
            return value

    def reset(self):
        self.states = dict(self.default_states)
        self.set_light('DefaultButton.Disabled')
        self.set_identifier(self._original_identifier)
        self.set_channel(NON_FEEDBACK_CHANNEL)
        self.set_enabled(True)

    def reset_state(self):
        super(ConfigurableButtonElement, self).reset_state()
        self.states = dict(self.default_states)

    def set_on_off_values(self, on_value, off_value):
        self.states[True] = on_value
        self.states[False] = off_value

    def set_force_next_value(self):
        self._force_next_value = True

    def set_enabled(self, enabled):
        self.suppress_script_forwarding = not enabled

    def is_enabled(self):
        return not self.suppress_script_forwarding

    def set_light(self, value):
        if type(value) in (int, long) and in_range(value, 0, 128):
            self.send_value(value)
        else:
            super(ConfigurableButtonElement, self).set_light(self.states.get(value, value))

    def send_value(self, value, **k):
        if value is ON_VALUE:
            self._do_send_on_value()
        elif value is OFF_VALUE:
            self._do_send_off_value()
        else:
            super(ConfigurableButtonElement, self).send_value(value, **k)

    def _do_send_on_value(self):
        self._skin[self._on_value].draw(self)

    def _do_send_off_value(self):
        self._skin[self._off_value].draw(self)

    def script_wants_forwarding(self):
        return not self.suppress_script_forwarding
Пример #23
0
# decompyle3 version 3.8.0
# Python bytecode 3.7.0 (3394)
# Decompiled from: Python 3.8.9 (default, Mar 30 2022, 13:51:17)
# [Clang 13.1.6 (clang-1316.0.21.2.3)]
# Embedded file name: output/Live/mac_64_static/Release/python-bundle/MIDI Remote Scripts/Launchpad_Mini_MK3/skin.py
# Compiled at: 2022-01-27 16:28:16
# Size of source mod 2**32: 647 bytes
from __future__ import absolute_import, print_function, unicode_literals
from builtins import object
from ableton.v2.control_surface import Skin, merge_skins
from ableton.v2.control_surface.elements import Color
from novation.colors import Rgb
import novation.skin as base_skin


class Colors(object):
    class Mode(object):
        class Session(object):
            Launch = Color(
                (Rgb.PALE_GREEN_HALF.midi_value, Rgb.WHITE_HALF.midi_value))
            Overview = Color((Rgb.BLUE.midi_value, Rgb.WHITE_HALF.midi_value))


skin = merge_skins(base_skin, Skin(Colors) * ())
Пример #24
0
def make_drum_pad_coloring_skin():
    return Skin(ColorsWithDrumPadColoring)