From 543ccb981aacaa5a596184feb38301ac74f1d9c9 Mon Sep 17 00:00:00 2001 From: Joe Neeman Date: Tue, 26 Jun 2007 16:06:45 +0300 Subject: [PATCH] fix spacing regressions up to spacing-bar-stem.ly --- lily/paper-column.cc | 3 ++- lily/spacing-interface.cc | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/lily/paper-column.cc b/lily/paper-column.cc index 56b9646997..2256d03600 100644 --- a/lily/paper-column.cc +++ b/lily/paper-column.cc @@ -146,6 +146,7 @@ Paper_column::minimum_distance (Grob *left, Grob *right) Direction d = LEFT; do { + skys[d].set_minimum_height (0.0); extract_grob_set (cols[d], "elements", elts); for (vsize i = 0; i < elts.size (); i++) @@ -158,7 +159,7 @@ Paper_column::minimum_distance (Grob *left, Grob *right) } while (flip (&d) != LEFT); - return min (0.0, skys[LEFT].distance (skys[RIGHT])); + return max (0.0, skys[LEFT].distance (skys[RIGHT])); } /* diff --git a/lily/spacing-interface.cc b/lily/spacing-interface.cc index 26b5b9b633..6b0964df1e 100644 --- a/lily/spacing-interface.cc +++ b/lily/spacing-interface.cc @@ -40,6 +40,8 @@ Spacing_interface::minimum_distance (Grob *me, Grob *right_col) Direction d = LEFT; do { + skylines[d].set_minimum_height (0.0); + for (vsize i = 0; i < items[d].size (); i++) { Grob *g = items[d][i]; @@ -128,8 +130,17 @@ get_note_columns (vector const &elts) vector ret; for (vsize i = 0; i < elts.size (); i++) - if (Note_column::has_interface (elts[i])) - ret.push_back (dynamic_cast (elts[i])); + { + if (Note_column::has_interface (elts[i])) + ret.push_back (dynamic_cast (elts[i])); + else if (Separation_item::has_interface (elts[i])) + { + extract_grob_set (elts[i], "elements", more_elts); + vector ncs = get_note_columns (more_elts); + + ret.insert (ret.end (), ncs.begin (), ncs.end ()); + } + } return ret; } -- 2.39.2