From: Han-Wen Nienhuys Date: Thu, 20 Jun 2002 21:55:40 +0000 (+0000) Subject: '' X-Git-Tag: release/1.5.63~18 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=20786ad9b7c03a664b5a440c6b2e536475979655;p=lilypond.git '' --- diff --git a/ChangeLog b/ChangeLog index 1a26461b27..956e9ec900 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2002-06-20 Han-Wen + + * lily/system.cc (output_lines): kill grobs that are only for spacing. + 2002-06-20 Jan Nieuwenhuizen * aclocal.m4: Regenerate. @@ -7,7 +11,7 @@ * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary. * lily/include/lily-guile.hh: Only include config.h if necessary. - * Changlog: cvs changes ml archive test #8. + * Changelog: cvs changes ml archive test #8. * lily/slur-engraver.cc: Layout fix. diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc index 2d5c5fd2c3..3869a449e3 100644 --- a/lily/spacing-spanner.cc +++ b/lily/spacing-spanner.cc @@ -24,9 +24,7 @@ #include "paper-column.hh" #include "spaceable-grob.hh" #include "break-align-interface.hh" - - - +#include "spacing-interface.hh" /* paper-column: @@ -834,3 +832,9 @@ quarter note is followed by 3 NHW, the half by 4 NHW, etc. ", "grace-space-factor spacing-increment base-shortest-duration shortest-duration-space"); + + +ADD_INTERFACE (Spacing_interface,"spacing-interface", + "Something to do with line breaking and spacing. Kill this one after determining line breaks.", + ""); + diff --git a/lily/system.cc b/lily/system.cc index 1a789591ea..692b1f11ee 100644 --- a/lily/system.cc +++ b/lily/system.cc @@ -20,6 +20,7 @@ #include "dimensions.hh" #include "molecule.hh" #include "all-font-metrics.hh" +#include "spacing-interface.hh" // todo: use map. void @@ -58,7 +59,11 @@ System::output_lines () for (SCM s = get_grob_property ("all-elements"); gh_pair_p (s); s = ly_cdr (s)) { - unsmob_grob (ly_car (s))->do_break_processing (); + Grob * g = unsmob_grob (ly_car (s)); + if (Spacing_interface::has_interface (g)) + g->suicide (); + else + g->do_break_processing (); } /* diff --git a/scm/grob-description.scm b/scm/grob-description.scm index 8e10acd595..63ed593126 100644 --- a/scm/grob-description.scm +++ b/scm/grob-description.scm @@ -710,7 +710,7 @@ (shortest-duration-space . 2.0) (spacing-increment . 1.2) (base-shortest-duration . ,(make-moment 1 8)) - (meta . ((interfaces . (spacing-spanner-interface)))) + (meta . ((interfaces . (spacing-interface spacing-spanner-interface)))) )) (SpanBar @@ -750,12 +750,12 @@ . ( (breakable . #t) (stem-spacing-correction . 0.4) - (meta . ((interfaces . (staff-spacing-interface)))) + (meta . ((interfaces . (spacing-interface staff-spacing-interface)))) )) (NoteSpacing . ( (stem-spacing-correction . 0.5) - (meta . ((interfaces . (note-spacing-interface)))) + (meta . ((interfaces . (spacing-interface note-spacing-interface)))) )) (StaffSymbol @@ -834,13 +834,13 @@ (SeparationItem . ( - (meta . ((interfaces . (separation-item-interface)))) + (meta . ((interfaces . (spacing-interface separation-item-interface)))) )) (SeparatingGroupSpanner . ( (spacing-procedure . ,Separating_group_spanner::set_spacing_rods) - (meta . ((interfaces . (separation-spanner-interface)))) + (meta . ((interfaces . (spacing-interface separation-spanner-interface)))) )) (SustainPedal