This still needs some cleanup, at least to remove the now-redundant
\tupletOutsideStaffPriority

The goal was to have outside-staff grobs figure their own Y-offset,
including the offset required for the outside-staff grobs to avoid each
other.  The group of all objects on a line (VerticalAxisGroup) still
does most of the organizational work, but any outside-staff grob figures
its own position based on that organizational work.

How will this help positioning around cross-staff objects?  Presumably
you plan to reset the 'Y-offset property of some Grobs after
page-spacing, so that the callback function is called again.  Which
Grobs get the reset ?  If it is all the Grobs touched by a cross-staff
object, then maybe it is better to keep the job of arranging
outside-staff objects with the VerticalAxisGroup and reset a property of
that one object.


https://codereview.appspot.com/7185044/diff/45018/Documentation/changes.tely
File Documentation/changes.tely (right):

https://codereview.appspot.com/7185044/diff/45018/Documentation/changes.tely#newcode76
Documentation/changes.tely:76:
How does Fingering work, without any 'calc-outside-staff-y-offset' ?
{ \override Staff.Fingering.outside-staff-priority = #1100
  \tempo "Adagio" g'-3}

Maybe: "The property 'outside-staff-priority' that determines relative
placement of objects outside the staff is now implemented by
'side-position-interface'.  All built-in objects that formerly responded
to this option still do so, but user-created grobs will need to include
the 'side-position-interface' to get the effect of
'outside-staff-priority'."

https://codereview.appspot.com/7185044/diff/45018/lily/axis-group-interface.cc
File lily/axis-group-interface.cc (left):

https://codereview.appspot.com/7185044/diff/45018/lily/axis-group-interface.cc#oldcode886
lily/axis-group-interface.cc:886: multimap<Grob *, Grob *> riders;
Yipee!! no more riders!
I dance on the grave of the mulitmap.

https://codereview.appspot.com/7185044/diff/45018/lily/side-position-interface.cc
File lily/side-position-interface.cc (right):

https://codereview.appspot.com/7185044/diff/45018/lily/side-position-interface.cc#newcode694
lily/side-position-interface.cc:694: "padding "
If you are serious about this re-arrangement you should move the
"outside-staff-priority " from grob.cc to here

https://codereview.appspot.com/7185044/

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to