From 180a8a5a84a34729f658252d8620e7b023abf6a6 Mon Sep 17 00:00:00 2001 From: fred Date: Tue, 26 Mar 2002 22:46:54 +0000 Subject: [PATCH] lilypond-1.3.33 --- lily/staff-symbol-referencer.cc | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lily/staff-symbol-referencer.cc b/lily/staff-symbol-referencer.cc index 0557fce059..00172d1985 100644 --- a/lily/staff-symbol-referencer.cc +++ b/lily/staff-symbol-referencer.cc @@ -108,7 +108,19 @@ Staff_symbol_referencer_interface::callback (Dimension_cache const * c) } /* - Huh? -- jcn + + This sets the position relative to the center of the staff symbol. + + The function is hairy, because it can be callled in two situations: + + 1. There is no staff yet; we must set staff-position + + 2. There is a staff, and perhaps someone even applied a + translate_axis (). Then we must compensate for the translation + + In either case, we set a callback to be sure that our new position + will be extracted from staff-position + */ void Staff_symbol_referencer_interface::set_position (Real p) @@ -117,7 +129,6 @@ Staff_symbol_referencer_interface::set_position (Real p) if (st && elt_l_->common_refpoint(st, Y_AXIS)) { Real oldpos = position_f (); - // Aargh! elt_l_->set_elt_property ("staff-position", gh_double2scm (p - oldpos)); } else -- 2.39.5