diff --git a/src/importexport/mei/internal/meiconverter.cpp b/src/importexport/mei/internal/meiconverter.cpp index 484ca90774b3e..73449852bb2db 100644 --- a/src/importexport/mei/internal/meiconverter.cpp +++ b/src/importexport/mei/internal/meiconverter.cpp @@ -1246,10 +1246,7 @@ void Convert::dynamFromMEI(engraving::Dynamic* dynamic, const StringList& meiLin warning = false; // @place - if (meiDynam.HasPlace()) { - dynamic->setProperty(engraving::Pid::DIRECTION, - meiDynam.GetPlace() == libmei::STAFFREL_above ? engraving::DirectionV::UP : engraving::DirectionV::DOWN); - } + dynamic->setProperty(engraving::Pid::DIRECTION, Convert::directionFromMEI(meiDynam.GetPlace())); // @label if (meiDynam.HasLabel()) { @@ -1308,9 +1305,7 @@ libmei::Dynam Convert::dynamToMEI(const engraving::Dynamic* dynamic, StringList& libmei::Dynam meiDynam; // @place - if (dynamic->getProperty(engraving::Pid::DIRECTION) != dynamic->propertyDefault(engraving::Pid::DIRECTION)) { - meiDynam.SetPlace(Convert::directionToMEI(dynamic->direction())); - } + meiDynam.SetPlace(Convert::directionToMEI(dynamic->direction())); // @layer Convert::layerIdentToMEI(dynamic, meiDynam); @@ -1628,10 +1623,7 @@ void Convert::hairpinFromMEI(engraving::Hairpin* hairpin, const libmei::Hairpin& warning = false; // @place - if (meiHairpin.HasPlace()) { - hairpin->setProperty(engraving::Pid::DIRECTION, meiHairpin.GetPlace() - == libmei::STAFFREL_above ? engraving::DirectionV::UP : engraving::DirectionV::DOWN); - } + hairpin->setProperty(engraving::Pid::DIRECTION, Convert::directionFromMEI(meiHairpin.GetPlace())); // @form if (meiHairpin.GetForm() == libmei::hairpinLog_FORM_cres) { @@ -1660,9 +1652,7 @@ libmei::Hairpin Convert::hairpinToMEI(const engraving::Hairpin* hairpin) libmei::Hairpin meiHairpin; // @place - if (hairpin->getProperty(engraving::Pid::DIRECTION) != hairpin->propertyDefault(engraving::Pid::DIRECTION)) { - meiHairpin.SetPlace(Convert::directionToMEI(hairpin->direction())); - } + meiHairpin.SetPlace(Convert::directionToMEI(hairpin->direction())); // @form if (hairpin->hairpinType() == engraving::HairpinType::CRESC_HAIRPIN) { @@ -2646,9 +2636,8 @@ libmei::data_STAFFREL Convert::placeToMEI(engraving::PlacementV place) } } -engraving::DirectionV Convert::directionFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning) +engraving::DirectionV Convert::directionFromMEI(const libmei::data_STAFFREL meiPlace) { - warning = false; switch (meiPlace) { case (libmei::STAFFREL_above): return engraving::DirectionV::UP; case (libmei::STAFFREL_below): return engraving::DirectionV::DOWN; @@ -2663,7 +2652,7 @@ libmei::data_STAFFREL Convert::directionToMEI(engraving::DirectionV direction) case (engraving::DirectionV::UP): return libmei::STAFFREL_above; case (engraving::DirectionV::DOWN): return libmei::STAFFREL_below; default: - return libmei::STAFFREL_above; + return libmei::STAFFREL_NONE; } } diff --git a/src/importexport/mei/internal/meiconverter.h b/src/importexport/mei/internal/meiconverter.h index 047ea78fcf28e..66f1cd5c2055b 100644 --- a/src/importexport/mei/internal/meiconverter.h +++ b/src/importexport/mei/internal/meiconverter.h @@ -275,7 +275,7 @@ class Convert static engraving::PlacementV placeFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning); static libmei::data_STAFFREL placeToMEI(engraving::PlacementV place); - static engraving::DirectionV directionFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning); + static engraving::DirectionV directionFromMEI(const libmei::data_STAFFREL meiPlace); static libmei::data_STAFFREL directionToMEI(engraving::DirectionV direction); static void slurFromMEI(engraving::SlurTie* slur, const libmei::Slur& meiSlur, bool& warning); diff --git a/src/importexport/mei/tests/data/dynamic-01.mei b/src/importexport/mei/tests/data/dynamic-01.mei index c2873682b13a1..bf73f033343e3 100644 --- a/src/importexport/mei/tests/data/dynamic-01.mei +++ b/src/importexport/mei/tests/data/dynamic-01.mei @@ -59,7 +59,7 @@ mp sffz sfz - pp + pp diff --git a/src/importexport/mei/tests/data/dynamic-01.mscx b/src/importexport/mei/tests/data/dynamic-01.mscx index 239013d9412a9..3d7b9eda485c8 100644 --- a/src/importexport/mei/tests/data/dynamic-01.mscx +++ b/src/importexport/mei/tests/data/dynamic-01.mscx @@ -126,6 +126,7 @@ pp 33 + down whole