X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fbeam-engraver.cc;h=019d68db48a66ea1c30479bd373e979867f0f663;hb=905109ea0e90efa8d9c1ba02769e458a0707cc47;hp=753a05644922e72f453bd14d2aef5b02e9b4f4a0;hpb=cb0b407e567feca71cbc5f9479a06b266c69a26c;p=lilypond.git diff --git a/lily/beam-engraver.cc b/lily/beam-engraver.cc index 753a056449..019d68db48 100644 --- a/lily/beam-engraver.cc +++ b/lily/beam-engraver.cc @@ -112,7 +112,6 @@ Beam_engraver::Beam_engraver () prev_start_ev_ = 0; } -IMPLEMENT_TRANSLATOR_LISTENER (Beam_engraver, beam); void Beam_engraver::listen_beam (Stream_event *ev) { @@ -305,15 +304,21 @@ Beam_engraver::acknowledge_stem (Grob_info info) stem->set_property ("duration-log", scm_from_int (durlog)); Moment stem_location = now - beam_start_mom_ + beam_start_location_; beam_info_->add_stem (stem_location, - std::max (durlog - 2, 0), + max (durlog - 2, 0), Stem::is_invisible (stem), stem_duration->factor (), (to_boolean (stem->get_property ("tuplet-start")))); Beam::add_stem (beam_, stem); } -ADD_ACKNOWLEDGER (Beam_engraver, stem); -ADD_ACKNOWLEDGER (Beam_engraver, rest); + +void +Beam_engraver::boot () +{ + ADD_LISTENER (Beam_engraver, beam); + ADD_ACKNOWLEDGER (Beam_engraver, stem); + ADD_ACKNOWLEDGER (Beam_engraver, rest); +} ADD_TRANSLATOR (Beam_engraver, /* doc */ @@ -337,7 +342,7 @@ class Grace_beam_engraver : public Beam_engraver { public: TRANSLATOR_DECLARATIONS (Grace_beam_engraver); - + TRANSLATOR_INHERIT (Beam_engraver); DECLARE_TRANSLATOR_LISTENER (beam); protected: @@ -366,7 +371,6 @@ Grace_beam_engraver::valid_end_point () /* Ugh, C&P code. */ -IMPLEMENT_TRANSLATOR_LISTENER (Grace_beam_engraver, beam); void Grace_beam_engraver::listen_beam (Stream_event *ev) { @@ -378,8 +382,14 @@ Grace_beam_engraver::listen_beam (Stream_event *ev) stop_ev_ = ev; } -ADD_ACKNOWLEDGER (Grace_beam_engraver, stem); -ADD_ACKNOWLEDGER (Grace_beam_engraver, rest); + +void +Grace_beam_engraver::boot () +{ + ADD_LISTENER (Grace_beam_engraver, beam); + ADD_ACKNOWLEDGER (Grace_beam_engraver, stem); + ADD_ACKNOWLEDGER (Grace_beam_engraver, rest); +} ADD_TRANSLATOR (Grace_beam_engraver, /* doc */