X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fspacing-loose-columns.cc;h=15f77f34a0bcc0283ca5119af4e5958b9df24c06;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=0752a2da24b81317c4bed2857b6d0fa90c5af7e6;hpb=49fbcc8b526edcad8a0650e9d7870b647c43d698;p=lilypond.git diff --git a/lily/spacing-loose-columns.cc b/lily/spacing-loose-columns.cc index 0752a2da24..15f77f34a0 100644 --- a/lily/spacing-loose-columns.cc +++ b/lily/spacing-loose-columns.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2005--2011 Han-Wen Nienhuys + Copyright (C) 2005--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -60,8 +60,8 @@ set_loose_columns (System *which, Column_x_positions const *posns) if (!loose->get_system ()) break; - Paper_column *le = dynamic_cast (unsmob_grob (scm_car (between))); - Paper_column *re = dynamic_cast (unsmob_grob (scm_cdr (between))); + Paper_column *le = unsmob (scm_car (between)); + Paper_column *re = unsmob (scm_cdr (between)); if (! (le && re)) break; @@ -83,7 +83,8 @@ set_loose_columns (System *which, Column_x_positions const *posns) if (!right) { - programming_error ("Can't attach loose column sensibly. Attaching to end of system."); + programming_error ("Can't attach loose column sensibly." + " Attaching to end of system."); right = which->get_bound (RIGHT); } @@ -134,8 +135,8 @@ set_loose_columns (System *which, Column_x_positions const *posns) Paper_column *loose_col = dynamic_cast (clique[j]); Paper_column *next_col = dynamic_cast (clique[j + 1]); - Grob *spacing = unsmob_grob (clique_col->get_object ("spacing")); - if (Grob *grace_spacing = unsmob_grob (clique_col->get_object ("grace-spacing"))) + Grob *spacing = unsmob (clique_col->get_object ("spacing")); + if (Grob *grace_spacing = unsmob (clique_col->get_object ("grace-spacing"))) { spacing = grace_spacing; } @@ -152,19 +153,14 @@ set_loose_columns (System *which, Column_x_positions const *posns) if (Paper_column::is_musical (next_col) && Paper_column::is_musical (loose_col)) { - Real base = Spacing_spanner::note_spacing (spacing, loose_col, next_col, - &options); - if (Note_spacing::has_interface (spacing)) - { - Spring spring = Note_spacing::get_spacing (spacing, next_col, base, options.increment_);; - base_note_space = spring.distance (); - tight_note_space = spring.min_distance (); - } - else - { - base_note_space = base; - tight_note_space = base; - } + Spring spring = Spacing_spanner::note_spacing (spacing, loose_col, + next_col, &options); + if (has_interface (spacing)) + spring = Note_spacing::get_spacing (spacing, next_col, + spring, options.increment_); + + base_note_space = spring.distance (); + tight_note_space = spring.min_distance (); } else {