On Mar 2, 2011, at 7:23 AM, joenee...@gmail.com wrote: > I haven't had time to look at this carefully, but I'll have closer look > later. What I don't understand, though, is why this problem needs such > extensive changes. If it's just a matter of preventing repeated > footnotes at the beginning/end of a line, it should be enough to examine > footnote->get_column ()->get_rank () > and possibly > footnote->get_parent (X_AXIS)->get_property ("break-visibility") > when you're constructing a Line_details. >
This may work - I honestly don't know. I'll look into doing it this way. > Also, as a matter of convention, we don't pass non-const references to > functions. If it has to be non-const, it should be a pointer. > > > http://codereview.appspot.com/4213042/diff/27049/lily/system.cc > File lily/system.cc (right): > > http://codereview.appspot.com/4213042/diff/27049/lily/system.cc#newcode257 > lily/system.cc:257: } > I don't get it. Why does filtering out grobs with an empty X-extent > solve the problem? And why do you have to redo this every time > Page_spacing::append_system is called? > It solves the problem (in this case) because grobs that are invisible after break visibility are made transparent and given no width, so we disregard their footnotes. I probably don't need to redo this after every time: just after break visibility is taken into account. If it is possible to pinpoint this, then I can fine tune the code accordingly, but append_system is called quite often and I'm not sure which calls happen before break visibility is considered and which ones happen after. But, as I said, I'll look into working with break-visibility directly & see if that does it. Cheers, MS _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel