Handle the 4 common encoder types.

This commit is contained in:
Len Ovens 2015-07-24 17:34:22 -07:00 committed by Paul Davis
parent 938f365cc1
commit 8b4a237ee3
3 changed files with 59 additions and 15 deletions

View file

@ -772,7 +772,7 @@ GenericMidiControlProtocol::create_binding (const XMLNode& node)
MIDI::eventType ev;
int intval;
bool momentary;
bool encoder = false;
MIDIControllable::Encoder encoder = MIDIControllable::No_enc;
if ((prop = node.property (X_("ctl"))) != 0) {
ev = MIDI::controller;
@ -782,8 +782,17 @@ GenericMidiControlProtocol::create_binding (const XMLNode& node)
ev = MIDI::program;
} else if ((prop = node.property (X_("pb"))) != 0) {
ev = MIDI::pitchbend;
} else if ((prop = node.property (X_("enc"))) != 0) {
encoder = true;
} else if ((prop = node.property (X_("enc-l"))) != 0) {
encoder = MIDIControllable::Enc_L;
ev = MIDI::controller;
} else if ((prop = node.property (X_("enc-r"))) != 0) {
encoder = MIDIControllable::Enc_R;
ev = MIDI::controller;
} else if ((prop = node.property (X_("enc-2"))) != 0) {
encoder = MIDIControllable::Enc_2;
ev = MIDI::controller;
} else if ((prop = node.property (X_("enc-b"))) != 0) {
encoder = MIDIControllable::Enc_B;
ev = MIDI::controller;
} else {
return 0;