X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fballoon-engraver.cc;h=610a9906f0213b520b07eb82f2f406e6ca426ecf;hb=90e4d7057f3857da049dfda3d130017d4719bd6b;hp=b5c96bcce111d674bfac94b7fffe150ee6d5c4e7;hpb=c054eb280fd9953596eb164f67b0f9d5555c5a32;p=lilypond.git diff --git a/lily/balloon-engraver.cc b/lily/balloon-engraver.cc index b5c96bcce1..610a9906f0 100644 --- a/lily/balloon-engraver.cc +++ b/lily/balloon-engraver.cc @@ -28,8 +28,8 @@ class Balloon_engraver : public Engraver { TRANSLATOR_DECLARATIONS (Balloon_engraver); - DECLARE_TRANSLATOR_LISTENER (annotate_output); - DECLARE_ACKNOWLEDGER (grob); + void listen_annotate_output (Stream_event *); + void acknowledge_grob (Grob_info); vector events_; void stop_translation_timestep (); @@ -37,7 +37,6 @@ class Balloon_engraver : public Engraver void balloonify (Grob *, Stream_event *); }; -IMPLEMENT_TRANSLATOR_LISTENER (Balloon_engraver, annotate_output); void Balloon_engraver::listen_annotate_output (Stream_event *ev) { @@ -50,7 +49,8 @@ Balloon_engraver::stop_translation_timestep () events_.clear (); } -Balloon_engraver::Balloon_engraver () +Balloon_engraver::Balloon_engraver (Context *c) + : Engraver (c) { } @@ -71,7 +71,7 @@ Balloon_engraver::acknowledge_grob (Grob_info info) SCM arts = cause ? cause->get_property ("articulations") : SCM_EOL; for (SCM s = arts; scm_is_pair (s); s = scm_cdr (s)) { - Stream_event *e = Stream_event::unsmob (scm_car (s)); + Stream_event *e = unsmob (scm_car (s)); if (e->in_event_class ("annotate-output-event")) { balloonify (info.grob (), e); @@ -85,7 +85,13 @@ Balloon_engraver::acknowledge_grob (Grob_info info) } } -ADD_ACKNOWLEDGER (Balloon_engraver, grob); + +void +Balloon_engraver::boot () +{ + ADD_LISTENER (Balloon_engraver, annotate_output); + ADD_ACKNOWLEDGER (Balloon_engraver, grob); +} ADD_TRANSLATOR (Balloon_engraver, /* doc */