lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Caches the interior skylines of vertical axis groups and systems. (i


From: address@hidden
Subject: Re: Caches the interior skylines of vertical axis groups and systems. (issue 7185044)
Date: Sun, 24 Feb 2013 19:20:19 +0200

On 24 févr. 2013, at 11:45, address@hidden wrote:

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

It's not redundant just cuz if it's not set, LilyPond will now issue a warning. 
 If you want the regtest to have a warning, we can convert it to the old syntax 
and then let the regtest test the warning.  This wouldn't be a bad idea, as we 
want to make sure LilyPond warns the user if outside-staff-priority 
discrepancies exist between parent and children grobs.

> 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.
> 

Yup.

> 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.

Yup.

> 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.

I'm not there yet, but this is definitely a possibility.  The next big project 
is this.

> 
> 
> 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}

Still works because the ly:side-position-interface::y-aligned-side 
automatically checks for outside-staff-priority at the end.

> 
> 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.

Funeral services will be next week.

> 
> 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

True 'dat.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]