diff options
| author | sbahling <sbahling@mudgum.net> | 2018-10-21 15:10:29 +0200 |
|---|---|---|
| committer | sbahling <sbahling@mudgum.net> | 2018-10-21 15:10:29 +0200 |
| commit | dda9a4c0fd3d6bbecab0616254ace479b5d4d233 (patch) | |
| tree | 17741b579a434ee71cf6e510cce2bf99ffa869f3 /strips.py | |
| parent | 6effbc283b3fa5b34bd45045c81168afa979572c (diff) | |
| download | tascam-fw-osc-dda9a4c0fd3d6bbecab0616254ace479b5d4d233.tar.gz tascam-fw-osc-dda9a4c0fd3d6bbecab0616254ace479b5d4d233.tar.xz tascam-fw-osc-dda9a4c0fd3d6bbecab0616254ace479b5d4d233.zip | |
continued refactoring
Diffstat (limited to 'strips.py')
| -rw-r--r-- | strips.py | 88 |
1 files changed, 81 insertions, 7 deletions
@@ -21,19 +21,93 @@ """ from faders import Fader +import osc + class Strip(): - def __init__(self, unit, num): + def __init__(self, console, num): + self.console = console self.num = 0 - self.mute = None - self.solo = None - self.select = None - self.recenable = False + self.mute_button = None + self._mute = False + self.solo_button = None + self._solo = False + self.select_button = None + self._select = False + self._rec = False self.pan = 0.5 - self.fader = Fader(unit, self) + self.fader = Fader(self.console.unit, self) self.name = None + @property + def mute_led(self): + return self.console.unit.strips[self.num].mute_led + + @property + def solo_led(self): + return self.console.unit.strips[self.num].solo_led + + @property + def sel_led(self): + return self.console.unit.strips[self.num].sel_led + + @property + def rec_led(self): + return self.console.unit.strips[self.num].rec_led + + @property + def mute(self): + return self._mute + + @mute.setter + def mute(self, state): + state = bool(state) + self._mute = state + if state: + self.mute_led.turn_on() + else: + self.mute_led.turn_off() + + @property + def solo(self): + return self._solo + + @solo.setter + def solo(self, state): + state = bool(state) + self._solo = state + if state: + self.solo_led.turn_on() + else: + self.solo_led.turn_off() + + @property + def select(self): + return self._select + + @select.setter + def select(self, state): + state = bool(state) + self._select = state + if state: + self.sel_led.turn_on() + else: + self.sel_led.turn_off() + + @property + def rec(self): + return self._rec + + @rec.setter + def rec(self, state): + state = bool(state) + self._rec = state + if state: + self.rec_led.turn_on() + else: + self.rec_led.turn_off() + def send_pan(self, delta): addr = '/strip/pan_stereo_position' pan = self.pan + delta * 0.02 @@ -41,7 +115,7 @@ class Strip(): pan = 0 if pan > 1.0: pan = 1.0 - osc.send_message(addr, (self.num, pan)) + osc.client.send_message(addr, (self.num, pan)) def recv_pan(self, pan): print('Pan: {} {}'.format(self.num, pan)) |
