X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ffingering-engraver.cc;h=4f40bff00e7a1048aed2b02fdc63e088ad14fa29;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=d23a5e35f81852ab7088c2f451ea2458a91b6140;hpb=c39d188d28fdc84cef8cbaea7b8d6e2fb718c30f;p=lilypond.git diff --git a/lily/fingering-engraver.cc b/lily/fingering-engraver.cc index d23a5e35f8..4f40bff00e 100644 --- a/lily/fingering-engraver.cc +++ b/lily/fingering-engraver.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1998--2014 Han-Wen Nienhuys + Copyright (C) 1998--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 @@ -38,16 +38,15 @@ public: protected: void stop_translation_timestep (); void process_music (); - DECLARE_TRANSLATOR_LISTENER (fingering); - DECLARE_ACKNOWLEDGER (rhythmic_head); - DECLARE_ACKNOWLEDGER (stem); - DECLARE_ACKNOWLEDGER (flag); + void listen_fingering (Stream_event *); + void acknowledge_rhythmic_head (Grob_info); + void acknowledge_stem (Grob_info); + void acknowledge_flag (Grob_info); private: void make_script (Direction, Stream_event *, int); }; -IMPLEMENT_TRANSLATOR_LISTENER (Fingering_engraver, fingering); void Fingering_engraver::listen_fingering (Stream_event *ev) { @@ -101,7 +100,7 @@ Fingering_engraver::make_script (Direction d, Stream_event *r, int i) junkme. */ SCM pitch = r->get_property ("pitch"); - if (unsmob_pitch (pitch)) + if (unsmob (pitch)) fingering->set_property ("pitch", pitch); /* @@ -109,8 +108,7 @@ Fingering_engraver::make_script (Direction d, Stream_event *r, int i) fingerings for chords need different settings. */ Side_position_interface::set_axis (fingering, Y_AXIS); - Self_alignment_interface::set_align_self (fingering, X_AXIS); - Self_alignment_interface::set_center_parent (fingering, X_AXIS); + Self_alignment_interface::set_aligned_on_parent (fingering, X_AXIS); // Hmm int priority = 200; @@ -138,13 +136,20 @@ Fingering_engraver::stop_translation_timestep () events_.clear (); } -Fingering_engraver::Fingering_engraver () +Fingering_engraver::Fingering_engraver (Context *c) + : Engraver (c) { } -ADD_ACKNOWLEDGER (Fingering_engraver, rhythmic_head); -ADD_ACKNOWLEDGER (Fingering_engraver, stem); -ADD_ACKNOWLEDGER (Fingering_engraver, flag); + +void +Fingering_engraver::boot () +{ + ADD_LISTENER (Fingering_engraver, fingering); + ADD_ACKNOWLEDGER (Fingering_engraver, rhythmic_head); + ADD_ACKNOWLEDGER (Fingering_engraver, stem); + ADD_ACKNOWLEDGER (Fingering_engraver, flag); +} ADD_TRANSLATOR (Fingering_engraver, /* doc */