Fix off-by-one MIDI note names.

Much like everything else in midnam, it's not specified whether the numbers are
0 or 1 relative, but everything out there seems to be 0 relative and this
matches the canvas, so go with that.
This commit is contained in:
David Robillard
2014-12-29 20:18:57 -05:00
parent 196e29ddef
commit 2e62ca9631
3 changed files with 13 additions and 143 deletions

View File

@@ -151,7 +151,7 @@ XMLNode&
Note::get_state (void)
{
XMLNode* node = new XMLNode("Note");
node->add_property("Number", _number + 1);
node->add_property("Number", _number);
node->add_property("Name", _name);
return *node;
@@ -163,14 +163,14 @@ Note::set_state (const XMLTree& tree, const XMLNode& node)
assert(node.name() == "Note");
const int num = string_to_int(tree, node.property("Number")->value());
if (num < 1 || num > 128) {
if (num > 127) {
PBD::warning << string_compose("%1: Note number %2 (%3) out of range",
tree.filename(), num, _name)
<< endmsg;
return -1;
}
_number = num - 1;
_number = num;
_name = node.property("Name")->value();
return 0;