If a line repetition is ending and a new line repetition is starting at the end of the system, the double repetition line has to be split into two: one at the currently ending system and one at the next system. (this should be refactored at some point to not use a combined end/start line but always separated lines)
Calculate the width needed for Instructions (Key, Clef, Rhythm, Repetition) for the measure.
Calculates the width needed for Instructions (Clef, Repetition) for the measure.
Calculate the StaffLine(s) needed for a MusicSystem.
Add all current vertical Measures to currentSystem.
Calculates the relative Positions of all MusicSystems.
calculates the y positions of the staff lines within a system and furthermore the y positions of the systems themselves.
Calculate the X ScalingFactor in order to strech the whole System.
Check if an extra Instruction [[Measure]] is needed.
Create a new GraphicalMusicPage (for now only one long page is used per music sheet, as we scroll down and have no page flips)
If the last MusicSystem doesn't need stretching, then this method decreases the System's Width, the StaffLine's Width and the 5 StaffLines length.
When the actual source measure doesn't fit any more, this method finalizes the current system and opens up a new empty system, where the actual measure will be added in the next iteration.
Finds the minimum required distance between two systems with the help of the sky- and bottom lines
Get the width the system should have for a given page width.
Return the width of the corresponding SystemLine and sets the corresponding [[SystemLineEnum]].
Return the width of the corresponding SystemLine and set the corresponding [[SystemLineEnum]].
Initialize a new MusicSystem.
Initialize the active Instructions from the first SourceMeasure of first SourceMusicPart.
Check if a Repetition starts at the next [[Measure]].
Check if a Repetition starts at the next [[Measure]].
Check if the next [[Measure]] has a KeyInstruction change.
This method checks the distances between any two consecutive StaffLines of a System and if needed, shifts the lower one down.
Set the Width of the staff-Measures of one source measure.
Stretch the whole System so that no white space is left at the end.
Check if at this [[Measure]] starts a Repetition.
Check if this [[Measure]] is a Repetition ending.
Check if this [[Measure]] is a Repetition ending.
Track down and update the active ClefInstruction in Measure's StaffEntries. This has to be done after the measure is added to a system (otherwise already the check if the measure fits to the system would update the active clefs..)
This method updates the System's StaffLine's RelativePosition (starting from the given index).
Generated using TypeDoc
Does the mapping from the currently visible staves to the global staff-list of the music sheet.