Merge pull request #20035 from alexpavlov96/gp_hammeron_chord_stable
gp-converter: not importing extra H/P text on chords
This commit is contained in:
commit
fe7ec74794
|
@ -1287,6 +1287,7 @@ void GPConverter::addContinuousSlideHammerOn()
|
|||
};
|
||||
|
||||
std::unordered_map<Note*, Slur*> legatoSlides;
|
||||
std::unordered_set<Chord*> hammerOnInChord;
|
||||
for (const auto& slide : _slideHammerOnMap) {
|
||||
Note* startNote = slide.first;
|
||||
Note* endNote = searchEndNote(startNote);
|
||||
|
@ -1339,7 +1340,12 @@ void GPConverter::addContinuousSlideHammerOn()
|
|||
|
||||
// TODO-gp: implement for editing too. Now works just for import.
|
||||
if (slide.second == SlideHammerOn::HammerOn) {
|
||||
Measure* measure = startNote->chord()->measure();
|
||||
Chord* startChord = startNote->chord();
|
||||
if (hammerOnInChord.find(startChord) != hammerOnInChord.end()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
Measure* measure = startChord->measure();
|
||||
|
||||
auto midTick = (startTick + endTick) / 2;
|
||||
Segment* segment = measure->getSegment(SegmentType::ChordRest, midTick);
|
||||
|
@ -1349,6 +1355,7 @@ void GPConverter::addContinuousSlideHammerOn()
|
|||
staffText->setPlainText(hammerText);
|
||||
staffText->setTrack(track);
|
||||
segment->add(staffText);
|
||||
hammerOnInChord.insert(startChord);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue