Skip to content

Commit

Permalink
move into line style function
Browse files Browse the repository at this point in the history
  • Loading branch information
rettinghaus committed Feb 18, 2025
1 parent 6b011c8 commit c73d752
Showing 1 changed file with 19 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -796,6 +796,25 @@ static String slurTieLineStyle(const SlurTie* s)
rest += String(u" placement=\"%1\"").arg(s->up() ? u"above" : u"below");
}
rest += color2xml(s);

if (ExportMusicXml::configuration()->exportLayout()) {
const SlurSegment* front = s->frontSegment();
const SlurSegment* back = s->backSegment();
const int spatium = s->spatium();
if (front) {
const PointF start = front->ups(Grip::START).pos();
const PointF bezier = front->ups(Grip::BEZIER1).pos();
tagName += String(u" bezier-x=\"%1\"").arg(10 * (bezier.x() - start.x()) / spatium);
tagName += String(u" bezier-y=\"%1\"").arg(-10 * bezier.y() / spatium);
}
if (back) {
const PointF end = back->ups(Grip::END).pos();
const PointF bezier = back->ups(Grip::BEZIER2).pos();
tagName += String(u" bezier-x=\"%1\"").arg(10 * (bezier.x() - end.x()) / spatium);
tagName += String(u" bezier-y=\"%1\"").arg(-10 * bezier.y() / spatium);
}
}

return rest;
}

Expand Down Expand Up @@ -920,15 +939,6 @@ void SlurHandler::doSlurStart(const Slur* s, Notations& notations, XmlWriter& xm
tagName += u" type=\"start\"";
tagName += slurTieLineStyle(s);

const SlurSegment* front = s->frontSegment();
const int spatium = s->spatium();
if (front && ExportMusicXml::configuration()->exportLayout()) {
const PointF start = front->ups(Grip::START).pos();
const PointF bezier = front->ups(Grip::BEZIER1).pos();
tagName += String(u" bezier-x=\"%1\"").arg(10 * (bezier.x() - start.x()) / spatium);
tagName += String(u" bezier-y=\"%1\"").arg(-10 * bezier.y() / spatium);
}

if (i >= 0) {
// remove from list and print start
m_slur[i] = 0;
Expand Down Expand Up @@ -973,16 +983,6 @@ void SlurHandler::doSlurStop(const Slur* s, Notations& notations, XmlWriter& xml
m_started[i] = false;
notations.tag(xml, s);
String tagName = String(u"slur type=\"stop\" number=\"%1\"").arg(i + 1);

const SlurSegment* back = s->backSegment();
const int spatium = s->spatium();
if (back && ExportMusicXml::configuration()->exportLayout()) {
const PointF end = back->ups(Grip::END).pos();
const PointF bezier = back->ups(Grip::BEZIER2).pos();
tagName += String(u" bezier-x=\"%1\"").arg(10 * (bezier.x() - end.x()) / spatium);
tagName += String(u" bezier-y=\"%1\"").arg(-10 * bezier.y() / spatium);
}

xml.tagRaw(tagName);
} else {
LOGD("no free slur slot");
Expand All @@ -993,16 +993,6 @@ void SlurHandler::doSlurStop(const Slur* s, Notations& notations, XmlWriter& xml
m_started[i] = false;
notations.tag(xml, s);
String tagName = String(u"slur type=\"stop\" number=\"%1\"").arg(i + 1);

const SlurSegment* back = s->backSegment();
const int spatium = s->spatium();
if (back && ExportMusicXml::configuration()->exportLayout()) {
const PointF end = back->ups(Grip::END).pos();
const PointF bezier = back->ups(Grip::BEZIER2).pos();
tagName += String(u" bezier-x=\"%1\"").arg(10 * (bezier.x() - end.x()) / spatium);
tagName += String(u" bezier-y=\"%1\"").arg(-10 * bezier.y() / spatium);
}

xml.tagRaw(tagName);
}
}
Expand Down

0 comments on commit c73d752

Please sign in to comment.