Skip to content

Commit 05266c1

Browse files
committed
export coda and segno glyphs
1 parent 2223ba7 commit 05266c1

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/importexport/musicxml/internal/musicxml/export/exportmusicxml.cpp

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6147,12 +6147,15 @@ static void directionMarker(XmlWriter& xml, const Marker* const m, const std::ve
61476147
{
61486148
const MarkerType mtp = getEffectiveMarkerType(m, jumps);
61496149
String words;
6150+
String smufl;
61506151
String type;
61516152
String sound;
61526153

61536154
switch (mtp) {
6154-
case MarkerType::CODA:
61556155
case MarkerType::VARCODA:
6156+
smufl = u"codaSquare";
6157+
[[fallthrough]];
6158+
case MarkerType::CODA:
61566159
case MarkerType::CODETTA:
61576160
type = u"coda";
61586161
if (m->label() == "") {
@@ -6161,8 +6164,10 @@ static void directionMarker(XmlWriter& xml, const Marker* const m, const std::ve
61616164
sound = u"coda=\"" + m->label() + u"\"";
61626165
}
61636166
break;
6164-
case MarkerType::SEGNO:
61656167
case MarkerType::VARSEGNO:
6168+
smufl = u"segnoSerpent1";
6169+
[[fallthrough]];
6170+
case MarkerType::SEGNO:
61666171
type = u"segno";
61676172
if (m->label() == "") {
61686173
sound = u"segno=\"1\"";
@@ -6201,6 +6206,9 @@ static void directionMarker(XmlWriter& xml, const Marker* const m, const std::ve
62016206
xml.startElement("direction-type");
62026207
String attrs = color2xml(m);
62036208
attrs += ExportMusicXml::positioningAttributes(m);
6209+
if (!smufl.empty()) {
6210+
attrs += String(u" smufl=\"%1\"").arg(smufl);
6211+
}
62046212
if (!type.empty()) {
62056213
xml.tagRaw(type + attrs);
62066214
}

0 commit comments

Comments
 (0)