Index: lily/new-fingering-engraver.cc |
diff --git a/lily/new-fingering-engraver.cc b/lily/new-fingering-engraver.cc |
index a605f0f4ae7e4f574245c84a054e83b93ec58b93..5763daec98e013430c60c7d7ec970abd6639f0bd 100644 |
--- a/lily/new-fingering-engraver.cc |
+++ b/lily/new-fingering-engraver.cc |
@@ -288,8 +288,11 @@ New_fingering_engraver::position_scripts (SCM orientations, |
Side_position_interface::add_support (f, |
unsmob_grob (ft.head_->get_object ("dot"))); |
- Self_alignment_interface::set_align_self (f, Y_AXIS); |
- Self_alignment_interface::set_center_parent (f, Y_AXIS); |
+ // don't overwrite offset property if it was overridden by the user |
+ if (f->get_property (ly_symbol2scm ("Y-offset")) == SCM_EOL) |
+ f->set_property (ly_symbol2scm ("Y-offset"), |
+ Self_alignment_interface::y_align_grob (f->self_scm ())); |
+ |
Side_position_interface::set_axis (f, X_AXIS); |
f->set_property ("direction", scm_from_int (hordir)); |
@@ -307,8 +310,11 @@ New_fingering_engraver::position_scripts (SCM orientations, |
f->set_property ("script-priority", |
scm_from_int (finger_prio + d * ft.position_)); |
- Self_alignment_interface::set_align_self (f, X_AXIS); |
- Self_alignment_interface::set_center_parent (f, X_AXIS); |
+ // don't overwrite offset property if it was overridden by the user |
+ if (f->get_property (ly_symbol2scm ("X-offset")) == SCM_EOL) |
+ f->set_property (ly_symbol2scm ("X-offset"), |
+ Self_alignment_interface::x_align_grob (f->self_scm ())); |
+ |
Side_position_interface::set_axis (f, Y_AXIS); |
f->set_property ("direction", scm_from_int (d)); |