Skip to content

Commit

Permalink
Simplified logic for property link of spanners
Browse files Browse the repository at this point in the history
  • Loading branch information
mike-spa committed Aug 8, 2023
1 parent 2923342 commit 856b437
Showing 1 changed file with 2 additions and 15 deletions.
17 changes: 2 additions & 15 deletions src/engraving/libmscore/spanner.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,8 @@ ByteArray SpannerSegment::mimeData(const PointF& dragOffset) const

EngravingItem* SpannerSegment::propertyDelegate(Pid pid)
{
if (pid == Pid::COLOR || pid == Pid::VISIBLE || pid == Pid::PLACEMENT || pid == Pid::EXCLUDE_FROM_OTHER_PARTS) {
if (pid == Pid::COLOR || pid == Pid::VISIBLE || pid == Pid::PLACEMENT
|| pid == Pid::EXCLUDE_FROM_OTHER_PARTS || pid == Pid::POSITION_LINKED_TO_MASTER || pid == Pid::APPEARANCE_LINKED_TO_MASTER) {
return spanner();
}
return 0;
Expand All @@ -150,12 +151,6 @@ engraving::PropertyValue SpannerSegment::getProperty(Pid pid) const
switch (pid) {
case Pid::OFFSET2:
return m_offset2;
case Pid::POSITION_LINKED_TO_MASTER:
case Pid::APPEARANCE_LINKED_TO_MASTER:
if (EngravingItem::getProperty(pid) == false) {
return EngravingItem::getProperty(pid);
}
return spanner()->getProperty(pid);
default:
return EngravingItem::getProperty(pid);
}
Expand All @@ -175,12 +170,6 @@ bool SpannerSegment::setProperty(Pid pid, const PropertyValue& v)
m_offset2 = v.value<PointF>();
triggerLayoutAll();
break;
case Pid::POSITION_LINKED_TO_MASTER:
case Pid::APPEARANCE_LINKED_TO_MASTER:
if (v.toBool() == true) {
return spanner()->setProperty(pid, v);
}
return EngravingItem::setProperty(pid, v);
default:
return EngravingItem::setProperty(pid, v);
}
Expand Down Expand Up @@ -671,7 +660,6 @@ bool Spanner::setProperty(Pid propertyId, const PropertyValue& v)
setPositionLinkedToMaster(v.toBool());
if (isPositionLinkedToMaster()) {
for (SpannerSegment* seg : spannerSegments()) {
seg->setPositionLinkedToMaster(v.toBool());
seg->relinkPropertiesToMaster(PropertyGroup::POSITION);
}
relinkPropertiesToMaster(PropertyGroup::POSITION);
Expand All @@ -681,7 +669,6 @@ bool Spanner::setProperty(Pid propertyId, const PropertyValue& v)
setAppearanceLinkedToMaster(v.toBool());
if (isAppearanceLinkedToMaster()) {
for (SpannerSegment* seg : spannerSegments()) {
seg->setAppearanceLinkedToMaster(v.toBool());
seg->relinkPropertiesToMaster(PropertyGroup::APPEARANCE);
}
relinkPropertiesToMaster(PropertyGroup::APPEARANCE);
Expand Down

0 comments on commit 856b437

Please sign in to comment.