[GSoC] Implement cross-voice dynamic spanners
\= was changed to allow setting spanner-share-context property on
events. spanner-id was consequently changed to a key.
Spanner_engraver class modifies a new context property sharedSpanners.
Spanner information, including the Spanner object and the current
voice the spanner belongs to, is stored in this property. If a context
above Voice is used, other voices may see the spanner and modify it.
Dynamic_engraver and Dynamic_align_engraver were changed to support
cross-voice spanners using the above mechanics. I rewrote portions of
Dynamic_align_engraver to do this more easily.
Examples:
<< { c\=Score.hello\< d e f } \ { e f g\=Score.hello! a } >>
\new Staff { << { c d e\=Staff.hello\< f } >> << { g> f!\=Staff.hello! e d } >> }
\new Staff { c d e\=1\< f\=2\< g f\=1! e\=2! d }
I am guessing that this still needs review before it can be pushed - I am setting this back to 'Review' for this countdown.
That is likely true, I anticipate still needing to make some revisions. Thanks.
I'll leave this on review for one more round before moving up.
No review on this patch. @everyone Nathan will need some help here I think. Else I will really move it on up next time :)
Patch on countdown one more time - for Sept 11th.
There have been no comments for Nathan for a while now on Rietveld, I am sure this patch isn't ready from primetime. So if one of the other Devs can take a look and help with Nathan, else we can put this into 'Needs_work@
Putting this back on Review at David K's request.
Still leaving this on review
Leaving on review still
Still leaving this on review - Nathan, you may want to make sure the patch still rebases against current master (to save any pain when you eventually can push this).
I will do that, thanks
Still leaving this on Review.
Still leaving this on Review for Nathan
Thanks to David K et al for commenting. Setting this back to 'Needs work'.