diff --git a/src/light9/midifade/midifade.py b/src/light9/midifade/midifade.py --- a/src/light9/midifade/midifade.py +++ b/src/light9/midifade/midifade.py @@ -11,7 +11,7 @@ import logging import mido from light9 import networking from light9.effect.edit import clamp -from light9.midifade.eventqueue import EventQueue +from light9.midifade.eventqueue import Event, EventQueue from light9.midifade.mididevs import connectToMidiOutput, listenToMidiInputs from light9.midifade.pages import Pages from light9.namespaces import L9 @@ -44,28 +44,28 @@ def changeGrandMaster(graph: SyncedGraph graph.patchObject(ctx, L9.grandMaster, L9['value'], decimalLiteral(newValue)) -async def onMessage(graph: SyncedGraph, pages: Pages, ctx: URIRef, _lastSet: dict[int, int], m: dict): - if m['type'] == 'active_sensing': +async def onMessage(graph: SyncedGraph, pages: Pages, ctx: URIRef, _lastSet: dict[int, int], m: Event): + if m.type == 'active_sensing': return - if m['type'] == 'control_change': - if m['dev'] == 'bcf2000' and m['control'] == 91: + if m.type == 'control_change': + if m.dev == 'bcf2000' and m.control == 91: pages.changePage(-1) return - if m['dev'] == 'bcf2000' and m['control'] == 92: + if m.dev == 'bcf2000' and m.control == 92: pages.changePage(1) return - if m['dev'] == 'bcf2000' and m['control'] == 8: - changeGrandMaster(graph, clamp(m['value'] / 127 * 1.5, 0, 1), ctx) + if m.dev == 'bcf2000' and m.control == 8: + changeGrandMaster(graph, clamp(m.value / 127 * 1.5, 0, 1), ctx) return try: - fader = pages.lookupFader(m['dev'], m['control']) + fader = pages.lookupFader(m.dev, m.control) except KeyError: log.info(f'unknown control {m}') return try: - await writeHwValueToGraph(graph, ctx, fader, m['value'] / 127) - _lastSet[m['control']] = m['value'] + await writeHwValueToGraph(graph, ctx, fader, m.value / 127) + _lastSet[m.control] = m.value except ValueError as e: log.warning(f'{e!r} - ignoring') else: