Skip to content

Commit b941f4a

Browse files
committed
Bugfixes
1 parent 52f430b commit b941f4a

12 files changed

+105
-93
lines changed

src/engraving/dom/segment.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2866,14 +2866,12 @@ bool Segment::goesBefore(const Segment* nextSegment) const
28662866
return clefPos == ClefToBarlinePosition::AFTER;
28672867
}
28682868

2869-
if (thisIsClef && (nextIsKeySig || nextIsTimeSig) && thisMeasureIsStartRepeat
2870-
&& rtick() == Fraction(0, 1) && nextSegment->rtick() == Fraction(0, 1)) {
2869+
if (thisIsClef && (nextIsKeySig || nextIsTimeSig) && rtick() == Fraction(0, 1) && nextSegment->rtick() == Fraction(0, 1)) {
28712870
// Between repeats
28722871
return true;
28732872
}
28742873

2875-
if ((thisIsKeySig || thisIsTimeSig) && nextIsClef && thisMeasureIsStartRepeat
2876-
&& rtick() == Fraction(0, 1) && nextSegment->rtick() == Fraction(0, 1)) {
2874+
if ((thisIsKeySig || thisIsTimeSig) && nextIsClef && rtick() == Fraction(0, 1) && nextSegment->rtick() == Fraction(0, 1)) {
28772875
// Between repeats
28782876
return false;
28792877
}

src/engraving/rendering/paddingtable.cpp

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ void PaddingTable::createTable(const MStyle& style)
5555
table[ElementType::NOTE][ElementType::BAR_LINE] = style.styleMM(Sid::noteBarDistance);
5656
table[ElementType::NOTE][ElementType::KEYSIG] = 0.75 * spatium;
5757
table[ElementType::NOTE][ElementType::TIMESIG] = 0.75 * spatium;
58-
table[ElementType::NOTE][ElementType::PARENTHESIS] = 0.1 * spatium;
58+
table[ElementType::NOTE][ElementType::PARENTHESIS] = 0.35 * spatium;
5959

6060
table[ElementType::LEDGER_LINE][ElementType::NOTE] = table[ElementType::NOTE][ElementType::LEDGER_LINE];
6161
table[ElementType::LEDGER_LINE][ElementType::LEDGER_LINE] = ledgerPad;
@@ -84,7 +84,7 @@ void PaddingTable::createTable(const MStyle& style)
8484
table[ElementType::HOOK][ElementType::BAR_LINE] = 1 * spatium;
8585
table[ElementType::HOOK][ElementType::KEYSIG] = 1.15 * spatium;
8686
table[ElementType::HOOK][ElementType::TIMESIG] = 1.15 * spatium;
87-
table[ElementType::HOOK][ElementType::PARENTHESIS] = 0.1 * spatium;
87+
table[ElementType::HOOK][ElementType::PARENTHESIS] = 0.35 * spatium;
8888

8989
table[ElementType::NOTEDOT][ElementType::NOTE] = std::max(style.styleMM(Sid::dotNoteDistance), style.styleMM(
9090
Sid::dotDotDistance));
@@ -97,7 +97,7 @@ void PaddingTable::createTable(const MStyle& style)
9797
table[ElementType::NOTEDOT][ElementType::BAR_LINE] = 0.8 * spatium;
9898
table[ElementType::NOTEDOT][ElementType::KEYSIG] = 1.35 * spatium;
9999
table[ElementType::NOTEDOT][ElementType::TIMESIG] = 1.35 * spatium;
100-
table[ElementType::NOTEDOT][ElementType::PARENTHESIS] = 0.1 * spatium;
100+
table[ElementType::NOTEDOT][ElementType::PARENTHESIS] = 0.35 * spatium;
101101

102102
table[ElementType::REST][ElementType::NOTE] = table[ElementType::NOTE][ElementType::REST];
103103
table[ElementType::REST][ElementType::LEDGER_LINE]
@@ -108,7 +108,7 @@ void PaddingTable::createTable(const MStyle& style)
108108
table[ElementType::REST][ElementType::BAR_LINE] = 1.65 * spatium;
109109
table[ElementType::REST][ElementType::KEYSIG] = 1.5 * spatium;
110110
table[ElementType::REST][ElementType::TIMESIG] = 1.5 * spatium;
111-
table[ElementType::REST][ElementType::PARENTHESIS] = 0.1 * spatium;
111+
table[ElementType::REST][ElementType::PARENTHESIS] = 0.35 * spatium;
112112

113113
table[ElementType::CLEF][ElementType::NOTE] = style.styleMM(Sid::clefKeyRightMargin);
114114
table[ElementType::CLEF][ElementType::LEDGER_LINE]
@@ -120,7 +120,7 @@ void PaddingTable::createTable(const MStyle& style)
120120
table[ElementType::CLEF][ElementType::BAR_LINE] = style.styleMM(Sid::clefBarlineDistance);
121121
table[ElementType::CLEF][ElementType::KEYSIG] = style.styleMM(Sid::clefKeyDistance);
122122
table[ElementType::CLEF][ElementType::TIMESIG] = style.styleMM(Sid::clefTimesigDistance);
123-
table[ElementType::CLEF][ElementType::PARENTHESIS] = 0.1 * spatium;
123+
table[ElementType::CLEF][ElementType::PARENTHESIS] = 0.25 * spatium;
124124

125125
table[ElementType::BAR_LINE][ElementType::NOTE] = style.styleMM(Sid::barNoteDistance);
126126
table[ElementType::BAR_LINE][ElementType::LEDGER_LINE]
@@ -132,7 +132,7 @@ void PaddingTable::createTable(const MStyle& style)
132132
table[ElementType::BAR_LINE][ElementType::BAR_LINE] = 1.35 * spatium;
133133
table[ElementType::BAR_LINE][ElementType::KEYSIG] = style.styleMM(Sid::keysigLeftMargin);
134134
table[ElementType::BAR_LINE][ElementType::TIMESIG] = style.styleMM(Sid::timesigLeftMargin);
135-
table[ElementType::BAR_LINE][ElementType::PARENTHESIS] = 0.1 * spatium;
135+
table[ElementType::BAR_LINE][ElementType::PARENTHESIS] = 0.5 * spatium;
136136

137137
table[ElementType::KEYSIG][ElementType::NOTE] = 1.75 * spatium;
138138
table[ElementType::KEYSIG][ElementType::LEDGER_LINE]
@@ -144,7 +144,7 @@ void PaddingTable::createTable(const MStyle& style)
144144
table[ElementType::KEYSIG][ElementType::BAR_LINE] = style.styleMM(Sid::keyBarlineDistance);
145145
table[ElementType::KEYSIG][ElementType::KEYSIG] = 1 * spatium;
146146
table[ElementType::KEYSIG][ElementType::TIMESIG] = style.styleMM(Sid::keyTimesigDistance);
147-
table[ElementType::KEYSIG][ElementType::PARENTHESIS] = 0.1 * spatium;
147+
table[ElementType::KEYSIG][ElementType::PARENTHESIS] = 0.25 * spatium;
148148

149149
table[ElementType::TIMESIG][ElementType::NOTE] = 1.35 * spatium;
150150
table[ElementType::TIMESIG][ElementType::LEDGER_LINE]
@@ -156,7 +156,7 @@ void PaddingTable::createTable(const MStyle& style)
156156
table[ElementType::TIMESIG][ElementType::BAR_LINE] = style.styleMM(Sid::timesigBarlineDistance);
157157
table[ElementType::TIMESIG][ElementType::KEYSIG] = style.styleMM(Sid::keyTimesigDistance);
158158
table[ElementType::TIMESIG][ElementType::TIMESIG] = 1.0 * spatium;
159-
table[ElementType::TIMESIG][ElementType::PARENTHESIS] = 0.1 * spatium;
159+
table[ElementType::TIMESIG][ElementType::PARENTHESIS] = 0.25 * spatium;
160160

161161
// Obtain the Stem -> * and * -> Stem values from the note equivalents
162162
table[ElementType::STEM] = table[ElementType::NOTE];
@@ -169,7 +169,7 @@ void PaddingTable::createTable(const MStyle& style)
169169
table[ElementType::STEM][ElementType::ACCIDENTAL] = 0.35 * spatium;
170170
table[ElementType::STEM][ElementType::LEDGER_LINE] = 0.35 * spatium;
171171
table[ElementType::LEDGER_LINE][ElementType::STEM] = 0.35 * spatium;
172-
table[ElementType::STEM][ElementType::PARENTHESIS] = 0.1 * spatium;
172+
table[ElementType::STEM][ElementType::PARENTHESIS] = 0.35 * spatium;
173173

174174
// Ambitus
175175
table[ElementType::AMBITUS].fill(style.styleMM(Sid::ambitusMargin));
@@ -241,14 +241,14 @@ void PaddingTable::createTable(const MStyle& style)
241241
table[ElementType::LAISSEZ_VIB_SEGMENT][ElementType::STEM] = 0.35 * spatium;
242242

243243
table[ElementType::PARENTHESIS][ElementType::BAR_LINE] = 0.5 * spatium;
244-
table[ElementType::PARENTHESIS][ElementType::KEYSIG] = 0.1 * spatium;
245-
table[ElementType::PARENTHESIS][ElementType::TIMESIG] = 0.1 * spatium;
246-
table[ElementType::PARENTHESIS][ElementType::CLEF] = 0.1 * spatium;
247-
table[ElementType::PARENTHESIS][ElementType::STEM] = 0.1 * spatium;
248-
table[ElementType::PARENTHESIS][ElementType::NOTEHEAD] = 0.1 * spatium;
249-
table[ElementType::PARENTHESIS][ElementType::REST] = 0.1 * spatium;
250-
table[ElementType::PARENTHESIS][ElementType::NOTEDOT] = 0.1 * spatium;
251-
table[ElementType::PARENTHESIS][ElementType::HOOK] = 0.1 * spatium;
244+
table[ElementType::PARENTHESIS][ElementType::KEYSIG] = 0.2 * spatium;
245+
table[ElementType::PARENTHESIS][ElementType::TIMESIG] = 0.2 * spatium;
246+
table[ElementType::PARENTHESIS][ElementType::CLEF] = 0.2 * spatium;
247+
table[ElementType::PARENTHESIS][ElementType::STEM] = 0.35 * spatium;
248+
table[ElementType::PARENTHESIS][ElementType::NOTE] = 0.35 * spatium;
249+
table[ElementType::PARENTHESIS][ElementType::REST] = 0.35 * spatium;
250+
table[ElementType::PARENTHESIS][ElementType::NOTEDOT] = 0.35 * spatium;
251+
table[ElementType::PARENTHESIS][ElementType::HOOK] = 0.35 * spatium;
252252

253253
// Measure repeat set same values as note
254254
table[ElementType::MEASURE_REPEAT] = table[ElementType::NOTE];

src/engraving/rendering/score/measurelayout.cpp

Lines changed: 82 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -1914,31 +1914,30 @@ void MeasureLayout::setCourtesyClef(Measure* m, const Fraction& refClefTick, con
19141914
}
19151915
}
19161916

1917-
void MeasureLayout::createParenthesis(Segment* segment, const DirectionH direction, LayoutContext& ctx)
1917+
void MeasureLayout::createParenthesis(Segment* segment, const DirectionH direction, const track_idx_t track)
19181918
{
1919-
for (track_idx_t track = 0; track <= ctx.dom().nstaves() * VOICES; track += VOICES) {
1920-
if (!segment->element(track)) {
1921-
continue;
1922-
}
1923-
1924-
std::vector<EngravingItem*> parens = segment->findAnnotations(ElementType::PARENTHESIS, track, track);
1925-
bool foundMatchingParen = false;
1926-
for (EngravingItem* el : parens) {
1927-
if (!el->isParenthesis() || toParenthesis(el)->direction() != direction) {
1928-
continue;
1929-
}
1930-
foundMatchingParen = true;
1931-
}
1919+
if (!segment->element(track)) {
1920+
return;
1921+
}
19321922

1933-
if (foundMatchingParen) {
1923+
std::vector<EngravingItem*> parens = segment->findAnnotations(ElementType::PARENTHESIS, track, track);
1924+
bool foundMatchingParen = false;
1925+
for (EngravingItem* el : parens) {
1926+
if (!el->isParenthesis() || toParenthesis(el)->direction() != direction) {
19341927
continue;
19351928
}
1929+
foundMatchingParen = true;
1930+
break;
1931+
}
19361932

1937-
Parenthesis* paren = Factory::createParenthesis(segment);
1938-
paren->setTrack(track);
1939-
paren->setDirection(direction);
1940-
segment->add(paren);
1933+
if (foundMatchingParen) {
1934+
return;
19411935
}
1936+
1937+
Parenthesis* paren = Factory::createParenthesis(segment);
1938+
paren->setTrack(track);
1939+
paren->setDirection(direction);
1940+
segment->add(paren);
19421941
}
19431942

19441943
void MeasureLayout::addRepeatCourtesyParentheses(Measure* m, const bool continuation, LayoutContext& ctx)
@@ -1949,63 +1948,80 @@ void MeasureLayout::addRepeatCourtesyParentheses(Measure* m, const bool continua
19491948

19501949
const Fraction sigTick = continuation ? Fraction(0, 0) : m->ticks();
19511950

1952-
Segment* leftMostSeg = m->findSegmentR(clefSegType, sigTick);
1951+
for (track_idx_t track = 0; track <= ctx.dom().nstaves() * VOICES; track += VOICES) {
1952+
Segment* leftMostSeg = m->findSegmentR(clefSegType, sigTick);
19531953

1954-
if (!leftMostSeg || !leftMostSeg->enabled()) {
1955-
leftMostSeg = m->findSegmentR(ksSegType, sigTick);
1956-
}
1954+
if (!leftMostSeg || !leftMostSeg->enabled() || !leftMostSeg->element(track)) {
1955+
leftMostSeg = m->findSegmentR(ksSegType, sigTick);
1956+
}
19571957

1958-
if (!leftMostSeg || !leftMostSeg->enabled()) {
1959-
leftMostSeg = m->findSegmentR(tsSegType, sigTick);
1960-
}
1958+
if (!leftMostSeg || !leftMostSeg->enabled() || !leftMostSeg->element(track)) {
1959+
leftMostSeg = m->findSegmentR(tsSegType, sigTick);
1960+
}
19611961

1962-
if (!leftMostSeg || !leftMostSeg->enabled()) {
1963-
removeRepeatCourtesyParentheses(m, continuation, ctx);
1964-
return;
1965-
}
1962+
if (!leftMostSeg || !leftMostSeg->enabled() || !leftMostSeg->element(track)) {
1963+
removeRepeatCourtesyParenthesesSegment(leftMostSeg, track, DirectionH::LEFT);
1964+
return;
1965+
}
19661966

1967-
createParenthesis(leftMostSeg, DirectionH::LEFT, ctx);
1967+
createParenthesis(leftMostSeg, DirectionH::LEFT, track);
19681968

1969-
Segment* rightMostSeg = m->findSegmentR(tsSegType, sigTick);
1970-
if (!rightMostSeg || !rightMostSeg->enabled()) {
1971-
rightMostSeg = m->findSegmentR(ksSegType, sigTick);
1972-
}
1969+
Segment* rightMostSeg = m->findSegmentR(tsSegType, sigTick);
1970+
if (!rightMostSeg || !rightMostSeg->enabled() || !rightMostSeg->element(track)) {
1971+
rightMostSeg = m->findSegmentR(ksSegType, sigTick);
1972+
}
19731973

1974-
if (!rightMostSeg || !rightMostSeg->enabled()) {
1975-
rightMostSeg = m->findSegmentR(clefSegType, sigTick);
1976-
}
1974+
if (!rightMostSeg || !rightMostSeg->enabled() || !rightMostSeg->element(track)) {
1975+
rightMostSeg = m->findSegmentR(clefSegType, sigTick);
1976+
}
19771977

1978-
if (!rightMostSeg || !rightMostSeg->enabled()) {
1979-
removeRepeatCourtesyParentheses(m, continuation, ctx);
1980-
return;
1981-
}
1978+
if (!rightMostSeg || !rightMostSeg->enabled() || !rightMostSeg->element(track)) {
1979+
removeRepeatCourtesyParenthesesSegment(rightMostSeg, track, DirectionH::RIGHT);
1980+
return;
1981+
}
19821982

1983-
createParenthesis(rightMostSeg, DirectionH::RIGHT, ctx);
1983+
createParenthesis(rightMostSeg, DirectionH::RIGHT, track);
1984+
}
19841985
}
19851986

1986-
void MeasureLayout::removeRepeatCourtesyParentheses(Measure* m, const bool continuation, LayoutContext& ctx)
1987+
void MeasureLayout::removeRepeatCourtesyParenthesesMeasure(Measure* m, const bool continuation, LayoutContext& ctx)
19871988
{
19881989
const SegmentType tsSegType = continuation ? SegmentType::TimeSigStartRepeatAnnounce : SegmentType::TimeSigRepeatAnnounce;
19891990
const SegmentType ksSegType = continuation ? SegmentType::KeySigStartRepeatAnnounce : SegmentType::KeySigRepeatAnnounce;
19901991
const SegmentType clefSegType = continuation ? SegmentType::ClefStartRepeatAnnounce : SegmentType::ClefRepeatAnnounce;
19911992

1992-
Segment* clefSeg = m->findSegmentR(clefSegType, m->ticks());
1993-
Segment* ksSeg = m->findSegmentR(ksSegType, m->ticks());
1994-
Segment* tsSeg = m->findSegmentR(tsSegType, m->ticks());
1993+
const Fraction sigTick = continuation ? Fraction(0, 0) : m->ticks();
1994+
1995+
Segment* clefSeg = m->findSegmentR(clefSegType, sigTick);
1996+
Segment* ksSeg = m->findSegmentR(ksSegType, sigTick);
1997+
Segment* tsSeg = m->findSegmentR(tsSegType, sigTick);
19951998

19961999
for (Segment* seg : { clefSeg, ksSeg, tsSeg }) {
19972000
if (!seg) {
19982001
continue;
19992002
}
20002003
for (track_idx_t track = 0; track <= ctx.dom().nstaves() * VOICES; track += VOICES) {
2001-
std::vector<EngravingItem*> parens = seg->findAnnotations(ElementType::PARENTHESIS, track, track);
2002-
for (EngravingItem* paren : parens) {
2003-
if (!paren->isParenthesis()) {
2004-
continue;
2005-
}
2006-
seg->remove(paren);
2007-
}
2004+
removeRepeatCourtesyParenthesesSegment(seg, track);
2005+
}
2006+
}
2007+
}
2008+
2009+
void MeasureLayout::removeRepeatCourtesyParenthesesSegment(Segment* seg, const track_idx_t track, const DirectionH direction)
2010+
{
2011+
if (!seg) {
2012+
return;
2013+
}
2014+
2015+
std::vector<EngravingItem*> parens = seg->findAnnotations(ElementType::PARENTHESIS, track, track);
2016+
for (EngravingItem* paren : parens) {
2017+
if (!paren->isParenthesis()) {
2018+
continue;
20082019
}
2020+
if (direction != DirectionH::AUTO && toParenthesis(paren)->direction() != direction) {
2021+
continue;
2022+
}
2023+
2024+
seg->remove(paren);
20092025
}
20102026
}
20112027

@@ -2016,54 +2032,50 @@ void MeasureLayout::setRepeatCourtesiesAndParens(Measure* m, LayoutContext& ctx)
20162032

20172033
if (showCourtesyRepeats) {
20182034
MeasureLayout::addRepeatCourtesies(m, ctx);
2035+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, false, ctx);
20192036
if (ctx.conf().styleB(Sid::useParensRepeatCourtesies)) {
20202037
MeasureLayout::addRepeatCourtesyParentheses(m, false, ctx);
2021-
} else {
2022-
MeasureLayout::removeRepeatCourtesyParentheses(m, false, ctx);
20232038
}
20242039
}
20252040

20262041
if (showCourtesyOtherJumps) {
20272042
MeasureLayout::addRepeatCourtesies(m, ctx);
2043+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, false, ctx);
20282044
if (ctx.conf().styleB(Sid::useParensOtherJumpCourtesies)) {
20292045
MeasureLayout::addRepeatCourtesyParentheses(m, false, ctx);
2030-
} else {
2031-
MeasureLayout::removeRepeatCourtesyParentheses(m, false, ctx);
20322046
}
20332047
}
20342048

20352049
if (!showCourtesyRepeats && !showCourtesyOtherJumps) {
2036-
MeasureLayout::removeRepeatCourtesyParentheses(m, false, ctx);
2050+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, false, ctx);
20372051
}
20382052

20392053
const bool courtesiesAfterCancellingRepeats = m->prevMeasure() && m->prevMeasure()->repeatEnd()
2040-
&& !m->prevMeasure()->endOfMeasureChange() && ctx.conf().styleB(
2041-
Sid::showCourtesiesAfterCancellingRepeats);
2054+
&& !m->prevMeasure()->endOfMeasureChange()
2055+
&& ctx.conf().styleB(Sid::showCourtesiesAfterCancellingRepeats)
2056+
&& ctx.conf().styleB(Sid::showCourtesiesRepeats);
20422057
const bool courtesiesAfterCancellingOtherJumps = m->prevMeasure() && m->prevMeasure()->repeatJump()
2043-
&& !m->prevMeasure()->endOfMeasureChange() && ctx.conf().styleB(
2044-
Sid::showCourtesiesAfterCancellingOtherJumps);
2058+
&& !m->prevMeasure()->endOfMeasureChange()
2059+
&& ctx.conf().styleB(Sid::showCourtesiesAfterCancellingOtherJumps)
2060+
&& ctx.conf().styleB(Sid::showCourtesiesOtherJumps);
20452061
if (courtesiesAfterCancellingRepeats) {
20462062
MeasureLayout::addRepeatContinuationCourtesies(m, ctx);
2047-
2063+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, true, ctx);
20482064
if (ctx.conf().styleB(Sid::useParensRepeatCourtesiesAfterCancelling)) {
20492065
MeasureLayout::addRepeatCourtesyParentheses(m, true, ctx);
2050-
} else {
2051-
MeasureLayout::removeRepeatCourtesyParentheses(m, true, ctx);
20522066
}
20532067
}
20542068

20552069
if (courtesiesAfterCancellingOtherJumps) {
20562070
MeasureLayout::addRepeatContinuationCourtesies(m, ctx);
2057-
2071+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, true, ctx);
20582072
if (ctx.conf().styleB(Sid::useParensOtherJumpCourtesiesAfterCancelling)) {
20592073
MeasureLayout::addRepeatCourtesyParentheses(m, true, ctx);
2060-
} else {
2061-
MeasureLayout::removeRepeatCourtesyParentheses(m, true, ctx);
20622074
}
20632075
}
20642076

20652077
if (!courtesiesAfterCancellingRepeats && !courtesiesAfterCancellingOtherJumps) {
2066-
MeasureLayout::removeRepeatCourtesyParentheses(m, true, ctx);
2078+
MeasureLayout::removeRepeatCourtesyParenthesesMeasure(m, true, ctx);
20672079
}
20682080
}
20692081

src/engraving/rendering/score/measurelayout.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ class MeasureLayout
6767
static void addRepeatCourtesies(Measure* m, LayoutContext& ctx);
6868
static void addRepeatContinuationCourtesies(Measure* m, LayoutContext& ctx);
6969
static void addRepeatCourtesyParentheses(Measure* m, const bool continuation, LayoutContext& ctx);
70-
static void removeRepeatCourtesyParentheses(Measure* m, const bool continuation, LayoutContext& ctx);
70+
static void removeRepeatCourtesyParenthesesMeasure(Measure* m, const bool continuation, LayoutContext& ctx);
7171

7272
static void setRepeatCourtesiesAndParens(Measure* m, LayoutContext& ctx);
7373

@@ -107,6 +107,8 @@ class MeasureLayout
107107
static void setCourtesyClef(Measure* m, const Fraction& refSigTick, const Fraction& courtesySigTick, const SegmentType segType,
108108
LayoutContext& ctx);
109109

110-
static void createParenthesis(Segment* segment, const DirectionH direction, LayoutContext& ctx);
110+
static void createParenthesis(Segment* segment, const DirectionH direction, const track_idx_t track);
111+
static void removeRepeatCourtesyParenthesesSegment(Segment* seg, const track_idx_t track,
112+
const DirectionH direction = DirectionH::AUTO);
111113
};
112114
}
24.1 KB
Binary file not shown.
22.9 KB
Binary file not shown.
24.2 KB
Binary file not shown.
23.8 KB
Binary file not shown.
28.7 KB
Binary file not shown.
29 KB
Binary file not shown.

0 commit comments

Comments
 (0)