Skip to content

Commit 4336394

Browse files
committed
Simplify deleting measures in part
1 parent 84f94e2 commit 4336394

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

src/engraving/dom/edit.cpp

+15-9
Original file line numberDiff line numberDiff line change
@@ -4598,15 +4598,21 @@ void Score::cmdTimeDelete()
45984598
}
45994599

46004600
if (!isMaster() && masterScore()) {
4601-
Measure* masterStartMeas = masterScore()->tick2measure(selection().tickStart());
4602-
Measure* masterEndMeas = endSegment ? masterScore()->tick2measure(selection().tickEnd()) : nullptr;
4603-
if (endSegment && endSegment->isEndBarLineType()) {
4604-
Measure* prevEndMeasure = masterEndMeas->prevMeasure();
4605-
masterEndMeas = prevEndMeasure ? prevEndMeasure : masterEndMeas;
4606-
}
4607-
Segment* masterStartSeg
4608-
= masterStartMeas ? masterStartMeas->findSegment(startSegment->segmentType(), startSegment->tick()) : startSegment;
4609-
Segment* masterEndSeg = masterEndMeas ? masterEndMeas->findSegment(endSegment->segmentType(), endSegment->tick()) : endSegment;
4601+
Fraction startTick = startSegment->tick();
4602+
Measure* masterStartMeas = masterScore()->tick2measure(startTick);
4603+
Segment* masterStartSeg = masterStartMeas->findSegment(startSegment->segmentType(), startSegment->tick());
4604+
Segment* masterEndSeg = nullptr;
4605+
4606+
if (endSegment) {
4607+
Fraction endTick = endSegment->tick();
4608+
Measure* masterEndMeas = masterScore()->tick2measure(endTick);
4609+
if (endSegment->isEndBarLineType()) {
4610+
Measure* prevMasterEndMeasure = masterEndMeas->prevMeasure();
4611+
masterEndMeas = prevMasterEndMeasure ? prevMasterEndMeasure : masterEndMeas;
4612+
}
4613+
masterEndSeg = masterEndMeas->findSegment(endSegment->segmentType(), endSegment->tick());
4614+
}
4615+
46104616
masterScore()->doTimeDelete(masterStartSeg, masterEndSeg);
46114617
} else {
46124618
doTimeDelete(startSegment, endSegment);

0 commit comments

Comments
 (0)