Skip to content

Commit

Permalink
Add missing space for syl in neume. Fixes #3863
Browse files Browse the repository at this point in the history
* Test suite evaluated locally
  • Loading branch information
lpugin committed Nov 21, 2024
1 parent ccc487b commit 2014238
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 0 deletions.
1 change: 1 addition & 0 deletions include/vrv/alignfunctor.h
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@ class AlignVerticallyFunctor : public DocFunctor {
FunctorCode VisitRunningElement(RunningElement *runningElement) override;
FunctorCode VisitStaff(Staff *staff) override;
FunctorCode VisitStaffAlignmentEnd(StaffAlignment *staffAlignment) override;
FunctorCode VisitSyllable(Syllable *syllable) override;
FunctorCode VisitSystem(System *system) override;
FunctorCode VisitSystemEnd(System *system) override;
FunctorCode VisitVerse(Verse *verse) override;
Expand Down
12 changes: 12 additions & 0 deletions src/alignfunctor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -678,6 +678,18 @@ FunctorCode AlignVerticallyFunctor::VisitStaffAlignmentEnd(StaffAlignment *staff
return FUNCTOR_CONTINUE;
}

FunctorCode AlignVerticallyFunctor::VisitSyllable(Syllable *syllable)
{
if (!syllable->FindDescendantByType(SYL)) return FUNCTOR_CONTINUE;

StaffAlignment *alignment = m_systemAligner->GetStaffAlignmentForStaffN(m_staffN);
if (!alignment) return FUNCTOR_CONTINUE;
// Current limitation of only one syl (verse n) by syllable
alignment->AddVerseN(1);

return FUNCTOR_CONTINUE;
}

FunctorCode AlignVerticallyFunctor::VisitSystem(System *system)
{
m_systemAligner = &system->m_systemAligner;
Expand Down

0 comments on commit 2014238

Please sign in to comment.