X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=futatabi%2Fmidi_mapper.cpp;h=36a2e43f9224232570cc2f02d4e9b8168e5e4943;hb=686a02a3ffed47c099c1d91d95d0d90e222d297d;hp=d1cfea245178246031397a423625273a602c0cca;hpb=ac1f4741a43cd9ab6ff5ff5a6f6bd52f3995a121;p=nageru diff --git a/futatabi/midi_mapper.cpp b/futatabi/midi_mapper.cpp index d1cfea2..36a2e43 100644 --- a/futatabi/midi_mapper.cpp +++ b/futatabi/midi_mapper.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include "defs.h" @@ -205,7 +206,7 @@ void MIDIMapper::refresh_lights() void MIDIMapper::update_lights_lock_held() { - set active_lights; // Desired state. + map active_lights; // Desired state. if (current_controller_bank == 0) { activate_mapped_light(*mapping_proto, MIDIMappingProto::kBank1IsSelectedFieldNumber, &active_lights); } @@ -221,17 +222,23 @@ void MIDIMapper::update_lights_lock_held() if (current_controller_bank == 4) { activate_mapped_light(*mapping_proto, MIDIMappingProto::kBank5IsSelectedFieldNumber, &active_lights); } - if (preview_enabled_light) { - activate_mapped_light(*mapping_proto, MIDIMappingProto::kPreviewEnabledFieldNumber, &active_lights); + if (preview_enabled_light == On) { // Playing. + activate_mapped_light(*mapping_proto, MIDIMappingProto::kPreviewPlayingFieldNumber, &active_lights); + } else if (preview_enabled_light == Blinking) { // Preview ready. + activate_mapped_light(*mapping_proto, MIDIMappingProto::kPreviewReadyFieldNumber, &active_lights); } if (queue_enabled_light) { activate_mapped_light(*mapping_proto, MIDIMappingProto::kQueueEnabledFieldNumber, &active_lights); } - if (play_enabled_light) { - activate_mapped_light(*mapping_proto, MIDIMappingProto::kPlayEnabledFieldNumber, &active_lights); + if (play_enabled_light == On) { // Playing. + activate_mapped_light(*mapping_proto, MIDIMappingProto::kPlayingFieldNumber, &active_lights); + } else if (play_enabled_light == Blinking) { // Play ready. + activate_mapped_light(*mapping_proto, MIDIMappingProto::kPlayReadyFieldNumber, &active_lights); } - if (locked_light) { + if (locked_light == On) { activate_mapped_light(*mapping_proto, MIDIMappingProto::kLockedFieldNumber, &active_lights); + } else if (locked_light == Blinking) { + activate_mapped_light(*mapping_proto, MIDIMappingProto::kLockedBlinkingFieldNumber, &active_lights); } if (current_highlighted_camera >= 0 && current_highlighted_camera < mapping_proto->camera_size()) { const CameraMIDIMappingProto &camera = mapping_proto->camera(current_highlighted_camera); @@ -239,8 +246,8 @@ void MIDIMapper::update_lights_lock_held() } // These are always enabled right now. - activate_mapped_light(*mapping_proto, MIDIMappingProto::kCueInFieldNumber, &active_lights); - activate_mapped_light(*mapping_proto, MIDIMappingProto::kCueOutFieldNumber, &active_lights); + activate_mapped_light(*mapping_proto, MIDIMappingProto::kCueInEnabledFieldNumber, &active_lights); + activate_mapped_light(*mapping_proto, MIDIMappingProto::kCueOutEnabledFieldNumber, &active_lights); midi_device.update_lights(active_lights); }