def next_subscene_cb(self, path, args): s = _engine.scenes()[_engine.current_scene()] n = _util.actual(_engine.current_subscene()) + 1 if len(s[1]) and len(args) and args[0]: n %= len(s[1]) if n < len(s[1]): _engine.switch_subscene(_util.offset(n))
def send_config(self): for p in self.notify_ports: # send data offset _liblo.send(p, '/mididings/data_offset', _setup.get_config('data_offset')) # send list of scenes _liblo.send(p, '/mididings/begin_scenes') s = _engine.scenes() for n in sorted(s.keys()): _liblo.send(p, '/mididings/add_scene', n, s[n][0], *s[n][1]) _liblo.send(p, '/mididings/end_scenes')
def prev_scene_cb(self, path, args): s = sorted(_engine.scenes().keys()) n = s.index(_engine.current_scene()) - 1 if n >= 0: _engine.switch_scene(s[n])
def next_scene_cb(self, path, args): s = sorted(_engine.scenes().keys()) n = s.index(_engine.current_scene()) + 1 if n < len(s): _engine.switch_scene(s[n])