lilypond-devel
[Top][All Lists]
Advanced

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

Re: Improves horizontal spacing of axis groups that SpanBar grobs traver


From: Mike Solomon
Subject: Re: Improves horizontal spacing of axis groups that SpanBar grobs traverse. (issue 4917046)
Date: Tue, 30 Aug 2011 17:58:11 +0200

On Aug 30, 2011, at 5:53 PM, address@hidden wrote:

> Correct me if I'm wrong, but this is my understanding: wherever there's
> a SpanBar, you're creating SpanBarStubs between every relevant pair of
> staves. These don't actually get printed; they're just there for the
> pure-height (because the SpanBar height is pretty much the whole system,
> so it doesn't tell you where the gaps are).
> 

Yes.

> If that's correct, I have two broad comments: it's worth commenting
> somewhere (span-bar-stub-engraver.cc, maybe) that the purpose of
> SpanBarStub is for pure-height only.

Will do.

> But more importantly, isn't SpanBar
> now obsoleted by SpanBarStub? That is, you can just remove the SpanBar
> altogether and print the SpanBarStubs.
> 

Mmm...you're not unright, but I'd prefer to do that in another patch if that's 
OK.  It'd require a lot of deleting and moving around, and I'd first like to 
make sure that these stubs are the code base and bug free for a while before I 
deprecate an entire grob (and figure out how to deal with the syntax changes 
that come with said deprecation).

> http://codereview.appspot.com/4917046/diff/1/lily/align-interface.cc
> File lily/align-interface.cc (right):
> 
> http://codereview.appspot.com/4917046/diff/1/lily/align-interface.cc#newcode363
> lily/align-interface.cc:363: Align_interface::get_vertical_alignment
> (Grob *g)
> Our convention is that in
> Align_interface::foo_bar (Grob *g)
> the Grob *g should be something that implements Align_interface. So this
> function should really be Grob::get_vertical_alignment. Same for the
> functions below it.
> 

Will do.

> http://codereview.appspot.com/4917046/diff/1/lily/align-interface.cc#newcode374
> lily/align-interface.cc:374: Align_interface::get_vertical_axis_group
> (Grob *g)
> Seems to me that what you really want here is the top-level
> VerticalAlignment (as opposed to, say, a BassFigureAlignment, which also
> implements Axis_group_interface and Align_interface). Try g->get_system
> ()->get_vertical_alignment () instead.
> 

Yes'r.

> http://codereview.appspot.com/4917046/diff/1/lily/span-bar-stub-engraver.cc
> File lily/span-bar-stub-engraver.cc (right):
> 
> http://codereview.appspot.com/4917046/diff/1/lily/span-bar-stub-engraver.cc#newcode116
> lily/span-bar-stub-engraver.cc:116: //it->set_parent (y_parents[j],
> Y_AXIS);
> Obsolete code?
> 

I'm git bisecting now, but if it's obsolete, it'll be removed in the 
not-too-distant future.

Thanks for the comments, Joe!

Cheers,
MS


reply via email to

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