|
|
|
|
@ -57,14 +57,15 @@ namespace Lib.Audio |
|
|
|
|
public void MapControllable(IControllable controllable) |
|
|
|
|
{ |
|
|
|
|
Controllable = controllable; |
|
|
|
|
ToggleSelectButtonLed(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
ISelectButton? selectButton = Buttons?.OfType<ISelectButton>().FirstOrDefault(); |
|
|
|
|
IMidiMessage? selectMessage = selectButton?.Select(); |
|
|
|
|
|
|
|
|
|
if (selectMessage != null) |
|
|
|
|
_midiCommunication.Send(selectMessage); |
|
|
|
|
|
|
|
|
|
public void UnMapControllable() |
|
|
|
|
{ |
|
|
|
|
if (Controllable == null) |
|
|
|
|
return; |
|
|
|
|
|
|
|
|
|
ToggleSelectButtonLed(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void HandleMessage(IMidiMessage message) |
|
|
|
|
@ -108,6 +109,15 @@ namespace Lib.Audio |
|
|
|
|
_acknowledgeMessage = null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void ToggleSelectButtonLed() |
|
|
|
|
{ |
|
|
|
|
ISelectButton? selectButton = Buttons?.OfType<ISelectButton>().FirstOrDefault(); |
|
|
|
|
IMidiMessage? selectMessage = selectButton?.Select(); |
|
|
|
|
|
|
|
|
|
if (selectMessage != null) |
|
|
|
|
_midiCommunication.Send(selectMessage); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void OnFaderPositionChanged(object? sender, int position) |
|
|
|
|
{ |
|
|
|
|
if (sender is not IFader fader) |
|
|
|
|
|