Skip to content

Commit

Permalink
fix #24534 - [MusicXML] Instrument and Part name empty
Browse files Browse the repository at this point in the history
  • Loading branch information
lvinken committed Jan 1, 2015
1 parent d92de9a commit 69e4dcd
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 2 deletions.
16 changes: 14 additions & 2 deletions mscore/exportxml.cpp
Expand Up @@ -4184,7 +4184,19 @@ void ExportMusicXml::write(QIODevice* dev)
}

xml.stag(QString("score-part id=\"P%1\"").arg(idx+1));
xml.tag("part-name", MScoreTextToMXML::toPlainText(part->longName()));
// by default export the parts long name as part-name
if (part->longName() != "")
xml.tag("part-name", MScoreTextToMXML::toPlainText(part->longName()));
else {
if (part->partName() != "") {
// use the track name if no part long name
// to prevent an empty track name on import
xml.tag("part-name print-object=\"no\"", MScoreTextToMXML::toPlainText(part->partName()));
}
else
// part-name is required
xml.tag("part-name", "");
}
if (!part->shortName().isEmpty())
xml.tag("part-abbreviation", MScoreTextToMXML::toPlainText(part->shortName()));

Expand Down Expand Up @@ -4217,7 +4229,7 @@ void ExportMusicXml::write(QIODevice* dev)
}
else {
xml.stag(QString("score-instrument id=\"P%1-I%2\"").arg(idx+1).arg(3));
xml.tag("instrument-name", MScoreTextToMXML::toPlainText(part->longName()));
xml.tag("instrument-name", MScoreTextToMXML::toPlainText(part->instr()->trackName()));
xml.etag();

xml.tag(QString("midi-device id=\"P%1-I%2\" port=\"%3\"").arg(idx+1).arg(3).arg(part->midiPort() + 1), "");
Expand Down
3 changes: 3 additions & 0 deletions mscore/importxml.cpp
Expand Up @@ -1701,6 +1701,9 @@ void MusicXml::xmlScorePart(QDomElement e, QString id, int& parts)
// Element instrument-name is typically not displayed in the score,
// but used only internally
part->instr()->setTrackName(ee.text());
// try to prevent an empty track name
if (part->partName() == "")
part->setPartName(ee.text());
}
else if (ee.tagName() == "instrument-sound")
domNotImplemented(e);
Expand Down

0 comments on commit 69e4dcd

Please sign in to comment.