From 9ae4aa248bd3f475967ea886ff31398e1a198e3d Mon Sep 17 00:00:00 2001 From: "Tim E. Real" Date: Thu, 7 Jan 2010 05:21:30 +0000 Subject: Fixed BUG ID: 2879426: *.med does not save meta event types --- muse/ChangeLog | 3 +++ muse/muse/midievent.cpp | 21 +++++++++++++++------ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/muse/ChangeLog b/muse/ChangeLog index 797c8715..19d353f0 100644 --- a/muse/ChangeLog +++ b/muse/ChangeLog @@ -1,3 +1,6 @@ +06.02.2010 + * Fixed: BUG ID: 2879426: *.med does not save meta event types. (T356) + - Changed midievent.cpp MidiEventBase::write(). Now saves value A, B, C and sysex/meta data. Tested OK. 06.02.2010 * Fixed: Midi meters now show for each track even if they're all on same device and channel. (T356) - Oversight, long overdue. The meters AND automation control needed to be 'per-track'. diff --git a/muse/muse/midievent.cpp b/muse/muse/midievent.cpp index ac475a27..8f2b0756 100644 --- a/muse/muse/midievent.cpp +++ b/muse/muse/midievent.cpp @@ -85,6 +85,15 @@ void MidiEventBase::write(int level, Xml& xml, const Pos& offset, bool /*forcePa xml.nput(" type=\"%d\"", type()); break; } + + // Changed by T356. BUG: *.med does not save meta event types - ID: 2879426 + if (a) + xml.nput(" a=\"%d\"", a); + if (b) + xml.nput(" b=\"%d\"", b); + if (c) + xml.nput(" c=\"%d\"", c); + if (edata.dataLen) { xml.nput(" datalen=\"%d\">\n", edata.dataLen); xml.nput(level, ""); @@ -94,12 +103,12 @@ void MidiEventBase::write(int level, Xml& xml, const Pos& offset, bool /*forcePa xml.tag(level, "/event"); } else { - if (a) - xml.nput(" a=\"%d\"", a); - if (b) - xml.nput(" b=\"%d\"", b); - if (c) - xml.nput(" c=\"%d\"", c); + //if (a) + // xml.nput(" a=\"%d\"", a); + //if (b) + // xml.nput(" b=\"%d\"", b); + //if (c) + // xml.nput(" c=\"%d\"", c); xml.nput(" />\n"); } } -- cgit v1.2.3