On Jul 23, 2011, at 10:56 PM, n.putt...@gmail.com wrote:

> 
> http://codereview.appspot.com/4814041/diff/6001/scm/define-grob-properties.scm
> File scm/define-grob-properties.scm (right):
> 
> http://codereview.appspot.com/4814041/diff/6001/scm/define-grob-properties.scm#newcode1000
> scm/define-grob-properties.scm:1000: (core-interfaces ,list "Core
> interfaces to be used for positioning.")
> Yuck.
> 
> If you have to do it like this, I think it would be better to define a
> new interface which you add to the relevant grobs (though even that
> seems dubious)
> 

Why is it a bad thing to do it this way?  Currently, the 
Beam_collision_engraver implements dynamic filtering based on interface, and I 
don't think there's a problem with that (it is the only way to make it ignore 
certain grobs on the fly).
Creating a new interface would be OK but would make it harder to filter out 
interfaces on the fly (people would have to override a grob's "meta" property, 
which seems hard).

The problem at hand is that the PaperColumn groups together a slew of grobs 
indiscriminately that elements then get positioned against.  If we want only 
certain grobs in this paper column to count in the positioning calculations, I 
think it makes sense to to do it like this.

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

Reply via email to