def trname_changestate(self, tid, track, r=0): if r == 1: self.oscEndpoint.send_message( Messages.trackInfo(TrackType.RETURN, tid)) else: self.oscEndpoint.send_message( Messages.trackInfo(TrackType.GENERIC, tid)) self.trBlock(0)
def refresh_state(self): self.add_clip_listeners() self.add_mixer_listeners() self.add_scene_listeners() self.add_tempo_listener() self.add_overdub_listener() self.add_tracks_listener() self.add_device_listeners() self.add_transport_listener() self.add_record_listener() self.add_loop_listener() self.add_metronome_listener() self.add_session_automation_record_listener() trackNumber = 0 clipNumber = 0 self.tracks_change() for track in self.song().visible_tracks: bundle = OSC.OSCBundle() for clipSlot in track.clip_slots: if clipSlot.clip is not None: bundle.append(Messages.clipInfo(trackNumber, clipNumber)) clipNumber = clipNumber + 1 clipNumber = 0 trackNumber = trackNumber + 1 self.oscEndpoint.send_message(bundle) self.trBlock(0)
def slot_changestate(self, slot, x, y): tmptrack = Helpers.genericTrack(x) if tmptrack is None: return if slot.clip is not None: log('slot_changestate[' + str(x) + ', ' + str(y) + ']: added clip') self.add_cliplistener(slot.clip, x, y) self.oscEndpoint.send_message(Messages.clipInfo(x, y)) self.oscEndpoint.send_message(Messages.clipStatus(x, y)) else: log('slot_changestate[' + str(x) + ', ' + str(y) + ']: removed clip') if slot.clip in self.clisten: slot.clip.remove_playing_status_listener( self.clisten[slot.clip]) if slot.clip in self.pplisten: slot.clip.remove_playing_position_listener( self.pplisten[slot.clip]) if slot.clip in self.cnlisten: slot.clip.remove_name_listener(self.cnlisten[slot.clip]) if slot.clip in self.cclisten: slot.clip.remove_color_listener(self.cclisten[slot.clip]) self.oscEndpoint.send_message(Messages.clipRemoved(x, y))
def clip_changestate(self, clip, x, y): log('clip_changestate[' + str(x) + ', ' + str(y) + ']') self.oscEndpoint.send_message(Messages.clipStatus(x, y))
def clip_name(self, clip, x, y): log('clip_name[' + str(x) + ', ' + str(y) + ']') self.oscEndpoint.send_message(Messages.clipInfo(x, y))
def clip_looping(self, clip, x, y): log('clip_looping[' + str(x) + ', ' + str(y) + ']') self.oscEndpoint.send_message(Messages.clipStatus(x, y))
def tracks_change(self): self.oscEndpoint.send_message(Messages.sizeInfo()) self.oscEndpoint.send_message(Messages.currentTrackIndex()) self.oscEndpoint.send_message(Messages.currentSceneIndex())
def loop_change(self): self.oscEndpoint.send_message(Messages.loop())
def tempo_change(self): self.oscEndpoint.send_message(Messages.tempo())
def scene_change(self): self.oscEndpoint.send_message(Messages.currentSceneIndex())
def track_change(self): self.oscEndpoint.send_message(Messages.currentTrackIndex())