From: Han-Wen Nienhuys Date: Fri, 8 Dec 2006 17:39:31 +0000 (+0100) Subject: insert rods between spanner bounds and breakable columns too. Fixes #171. X-Git-Tag: release/2.11.2-1~49 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=59f75a7a40bb12f20d27c809b4335a06228a16db;p=lilypond.git insert rods between spanner bounds and breakable columns too. Fixes #171. --- diff --git a/lily/spanner.cc b/lily/spanner.cc index 0f02020241..61051bb9dd 100644 --- a/lily/spanner.cc +++ b/lily/spanner.cc @@ -334,16 +334,33 @@ SCM Spanner::set_spacing_rods (SCM smob) { Grob *me = unsmob_grob (smob); - - Rod r; - Spanner *sp = dynamic_cast (me); - r.item_drul_[LEFT] = sp->get_bound (LEFT); - r.item_drul_[RIGHT] = sp->get_bound (RIGHT); - SCM num_length = me->get_property ("minimum-length"); if (scm_is_number (num_length)) { + Rod r; + Spanner *sp = dynamic_cast (me); + + + System *root = get_root_system (me); + vector cols (root->broken_col_range (sp->get_bound (LEFT)->get_column (), + sp->get_bound (LEFT)->get_column ())); + + if (cols.size () ) + { + Rod r ; + r.item_drul_[LEFT] = sp->get_bound (LEFT); + r.item_drul_[RIGHT] =cols[0]; + r.distance_ = robust_scm2double (num_length, 0); + r.add_to_cols (); + + r.item_drul_[LEFT] = cols.back (); + r.item_drul_[RIGHT] = sp->get_bound (RIGHT); + r.add_to_cols (); + } + r.distance_ = robust_scm2double (num_length, 0); + r.item_drul_[LEFT] = sp->get_bound (LEFT); + r.item_drul_[RIGHT] = sp->get_bound (RIGHT); r.add_to_cols (); }