comparison bin/keyboardcomposer @ 2014:1d0fbb6ae089

fix KC sliders support Ignore-this: c1a285064c54c07266660648a5c8dad
author drewp@bigasterisk.com
date Mon, 10 Jun 2019 02:29:12 +0000
parents 93e3a00b7cfc
children 1241e61fcf74
comparison
equal deleted inserted replaced
2013:02eb0e99bba5 2014:1d0fbb6ae089
299 withgroups.append((self.graph.value(effect, L9['group']), 299 withgroups.append((self.graph.value(effect, L9['group']),
300 self.graph.value(effect, L9['order']), 300 self.graph.value(effect, L9['order']),
301 self.graph.label(effect), effect)) 301 self.graph.label(effect), effect))
302 withgroups.sort() 302 withgroups.sort()
303 303
304 log.info("withgroups %s", withgroups) 304 log.debug("withgroups %s", withgroups)
305 305
306 self.effectEval: Dict[URIRef, light9.effect.effecteval.EffectEval] = {} 306 self.effectEval: Dict[URIRef, light9.effect.effecteval.EffectEval] = {}
307 imp.reload(light9.effect.effecteval) 307 imp.reload(light9.effect.effecteval)
308 simpleOutputs = SimpleOutputs(self.graph) 308 simpleOutputs = SimpleOutputs(self.graph)
309 for group, order, sortLabel, effect in withgroups: 309 for group, order, sortLabel, effect in withgroups:
333 self.sliders.close() 333 self.sliders.close()
334 self.change_row(self.current_row) 334 self.change_row(self.current_row)
335 self.rows[self.current_row].focus() 335 self.rows[self.current_row].focus()
336 336
337 def connect_to_hw(self, hw_sliders): 337 def connect_to_hw(self, hw_sliders):
338 log.info('connect_to_hw')
338 if hw_sliders: 339 if hw_sliders:
339 try: 340 try:
340 self.sliders = Sliders(self) 341 self.sliders = Sliders(self)
341 log.info("connected to sliders") 342 log.info("connected to sliders")
342 except IOError: 343 except IOError as e:
343 log.info("no hardware sliders") 344 log.info("no hardware sliders %r", e)
344 self.sliders = DummySliders() 345 self.sliders = DummySliders()
345 self.use_hw_sliders = False 346 self.use_hw_sliders = False
346 dispatcher.connect(self.send_to_hw, 'send_to_hw') 347 dispatcher.connect(self.send_to_hw, 'send_to_hw')
347 else: 348 else:
348 self.sliders = DummySliders() 349 self.sliders = DummySliders()
467 import twisted.internet.error 468 import twisted.internet.error
468 try: 469 try:
469 self.pendingHwSet.cancel() 470 self.pendingHwSet.cancel()
470 except twisted.internet.error.AlreadyCalled: 471 except twisted.internet.error.AlreadyCalled:
471 pass 472 pass
472 self.pendingHwSet = reactor.callLater(.01, subbox.safeSliderSet, value) 473 self.pendingHwSet = reactor.callLater(.01, subbox.setVal, value)
473 474
474 def send_to_hw(self, sub, hwCol, boxRow): 475 def send_to_hw(self, sub, hwCol, boxRow):
475 if isinstance(self.sliders, DummySliders): 476 if isinstance(self.sliders, DummySliders):
476 return 477 return
477 478
622 devices = [ 623 devices = [
623 '/dev/snd/midiC3D0', '/dev/snd/midiC2D0', '/dev/snd/midiC1D0' 624 '/dev/snd/midiC3D0', '/dev/snd/midiC2D0', '/dev/snd/midiC1D0'
624 ] 625 ]
625 for dev in devices: 626 for dev in devices:
626 try: 627 try:
628 log.info('try sliders on %s', dev)
627 BCF2000.__init__(self, dev=dev) 629 BCF2000.__init__(self, dev=dev)
628 except IOError: 630 except IOError:
629 if dev is devices[-1]: 631 if dev is devices[-1]:
630 raise 632 raise
631 else: 633 else:
686 help="don't attach to hardware sliders") 688 help="don't attach to hardware sliders")
687 clientsession.add_option(parser) 689 clientsession.add_option(parser)
688 parser.add_option('-v', action='store_true', help="log info level") 690 parser.add_option('-v', action='store_true', help="log info level")
689 opts, args = parser.parse_args() 691 opts, args = parser.parse_args()
690 692
691 log.setLevel(logging.DEBUG if opts.v else logging.WARN) 693 log.setLevel(logging.DEBUG if opts.v else logging.INFO)
692 logging.getLogger('colormath').setLevel(logging.INFO) 694 logging.getLogger('colormath').setLevel(logging.INFO)
693 695
694 graph = SyncedGraph(networking.rdfdb.url, "keyboardcomposer") 696 graph = SyncedGraph(networking.rdfdb.url, "keyboardcomposer")
695 697
696 # i think this also needs delayed start (like subcomposer has), to have a valid graph 698 # i think this also needs delayed start (like subcomposer has), to have a valid graph