On 11 August 2011 12:34, m...@apollinemike.com <m...@apollinemike.com> wrote:
> I figured out why it works - I figured I'd post this to the list in case > anyone else ever wants to mess around with pure properties. > > The StemTremolo is added to the paper column's element grob array via the > axis-group-engraver because it does not have an axis-group-parent-Y. I think you mean the VerticalAxisGroup's elements array. The StemTremolo is added to a PaperColumn's elements array (and gets the column as axis-group-parent-X) in the Paper_column_engraver. > Then, when horizontal spacing happens, its pure height function is passed > through for its print function (separation-item.cc). I think I understand: before you added the print-to-height conversion, the original height callback (ly:stem-tremolo::height) wasn't pure-relevant; this resulted in Item::pure_height () returning an empty extent, causing the StemTremolo to be left out of the skyline. This didn't matter unless the spacing was really tight. > I may write a "pure" tutorial for the contributor's guide. It has taken me a > long time to figure out how "pure" works in lilypond, and if other people are > as mystified as I was when I started trying to figure this stuff out, then I > think an addition to the CG would help. Sounds great. Cheers, Neil _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel