From 733d98665372b815cac635f48f1a20d65f50d25a Mon Sep 17 00:00:00 2001 From: Joe Neeman Date: Tue, 20 Apr 2010 14:31:01 -0700 Subject: [PATCH] Fix 899. Don't touch the stretch strength when we add full-measure-extra-space. --- lily/include/spring.hh | 2 ++ lily/spacing-spanner.cc | 2 +- lily/spring.cc | 14 +++++++++++++- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/lily/include/spring.hh b/lily/include/spring.hh index 958d1fa651..5676357286 100644 --- a/lily/include/spring.hh +++ b/lily/include/spring.hh @@ -55,6 +55,8 @@ public: void set_inverse_compress_strength (Real); void set_blocking_force (Real); void set_default_strength (); + void set_default_compress_strength (); + void set_default_stretch_strength (); void operator*= (Real); bool operator> (Spring const&) const; diff --git a/lily/spacing-spanner.cc b/lily/spacing-spanner.cc index 6ec8108d69..783946eb10 100644 --- a/lily/spacing-spanner.cc +++ b/lily/spacing-spanner.cc @@ -539,7 +539,7 @@ Spacing_spanner::breakable_column_spacing (Grob *me, Item *l, Item *r, { Real full_measure_extra_space = robust_scm2double (l->get_property ("full-measure-extra-space"), 1.0); spring.set_distance (spring.distance () + full_measure_extra_space); - spring.set_default_strength (); + spring.set_default_compress_strength (); } if (options->stretch_uniformly_ && l->break_status_dir () != RIGHT) diff --git a/lily/spring.cc b/lily/spring.cc index d4b014a3dc..761ef2467b 100644 --- a/lily/spring.cc +++ b/lily/spring.cc @@ -174,12 +174,24 @@ Spring::set_blocking_force (Real f) void Spring::set_default_strength () +{ + set_default_stretch_strength (); + set_default_compress_strength (); +} + +void +Spring::set_default_compress_strength () { inverse_compress_strength_ = (distance_ >= min_distance_) ? distance_ - min_distance_ : 0; - inverse_stretch_strength_ = distance_; update_blocking_force (); } +void +Spring::set_default_stretch_strength () +{ + inverse_stretch_strength_ = distance_; +} + Real Spring::length (Real f) const { -- 2.39.5