diff --git a/libmscore/cmd.cpp b/libmscore/cmd.cpp index 3a317badbea78..9e84bbf2e8c1b 100644 --- a/libmscore/cmd.cpp +++ b/libmscore/cmd.cpp @@ -2303,8 +2303,8 @@ Element* Score::selectMove(const QString& cmd) void Score::cmdMirrorNoteHead() { const QList& el = selection().elements(); - foreach(Element* e, el) { - if (e->type() == ElementType::NOTE) { + for (Element* e : el) { + if (e->isNote()) { Note* note = toNote(e); if (note->staff() && note->staff()->isTabStaff(note->chord()->tick())) e->undoChangeProperty(Pid::GHOST, !note->ghost()); @@ -2317,6 +2317,27 @@ void Score::cmdMirrorNoteHead() undoChangeUserMirror(note, d); } } + else if (e->isHairpinSegment()) { + Hairpin* h = toHairpinSegment(e)->hairpin(); + HairpinType st = h->hairpinType(); + switch (st) { + case HairpinType::CRESC_HAIRPIN: + st = HairpinType::DECRESC_HAIRPIN; + break; + case HairpinType::DECRESC_HAIRPIN: + st = HairpinType::CRESC_HAIRPIN; + break; + case HairpinType::CRESC_LINE: + st = HairpinType::DECRESC_LINE; + break; + case HairpinType::DECRESC_LINE: + st = HairpinType::CRESC_LINE; + break; + case HairpinType::INVALID: + break; + } + h->undoChangeProperty(Pid::HAIRPIN_TYPE, int(st)); + } } } diff --git a/libmscore/edit.cpp b/libmscore/edit.cpp index 04bb2111a9ace..7a6d157cf1ad1 100644 --- a/libmscore/edit.cpp +++ b/libmscore/edit.cpp @@ -1387,27 +1387,6 @@ void Score::cmdFlip() slurTieSegment->undoChangeProperty(Pid::SLUR_DIRECTION, QVariant::fromValue(dir)); }); } - else if (e->isHairpinSegment()) { - Hairpin* h = toHairpinSegment(e)->hairpin(); - HairpinType st = h->hairpinType(); - switch (st) { - case HairpinType::CRESC_HAIRPIN: - st = HairpinType::DECRESC_HAIRPIN; - break; - case HairpinType::DECRESC_HAIRPIN: - st = HairpinType::CRESC_HAIRPIN; - break; - case HairpinType::CRESC_LINE: - st = HairpinType::DECRESC_LINE; - break; - case HairpinType::DECRESC_LINE: - st = HairpinType::CRESC_LINE; - break; - case HairpinType::INVALID: - break; - } - h->undoChangeProperty(Pid::HAIRPIN_TYPE, int(st)); - } else if (e->isArticulation()) { auto articulation = toArticulation(e); flipOnce(articulation, [articulation](){ @@ -1448,6 +1427,7 @@ void Score::cmdFlip() || e->isStaffText() || e->isDynamic() || e->isHairpin() + || e->isHairpinSegment() || e->isOttavaSegment() || e->isTextLineSegment() || e->isPedalSegment()