X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ftext-engraver.cc;h=6bbcdc379479006055ef417679bc7cac439c095c;hb=f40aa7dc7410285fc904612941b1909144c01c2f;hp=52a7e3a4a338e07d2a4d1d41adc65483e4e808d5;hpb=e8b68d8a878a0ee0381719230cf911dbcefa168d;p=lilypond.git diff --git a/lily/text-engraver.cc b/lily/text-engraver.cc index 52a7e3a4a3..6bbcdc3794 100644 --- a/lily/text-engraver.cc +++ b/lily/text-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 @@ -42,11 +42,10 @@ protected: void stop_translation_timestep (); void process_music (); - DECLARE_ACKNOWLEDGER (note_column); - DECLARE_TRANSLATOR_LISTENER (text_script); + void acknowledge_note_column (Grob_info); + void listen_text_script (Stream_event *); }; -IMPLEMENT_TRANSLATOR_LISTENER (Text_engraver, text_script); void Text_engraver::listen_text_script (Stream_event *ev) { @@ -88,7 +87,7 @@ Text_engraver::acknowledge_note_column (Grob_info info) extract_grob_set (info.grob (), "note-heads", heads); Grob *x_parent = (heads.size () ? info.grob () - : Grob::unsmob (info.grob ()->get_object ("rest"))); + : unsmob (info.grob ()->get_object ("rest"))); for (vsize i = 0; i < scripts_.size (); i++) { @@ -106,11 +105,18 @@ Text_engraver::stop_translation_timestep () scripts_.clear (); } -Text_engraver::Text_engraver () +Text_engraver::Text_engraver (Context *c) + : Engraver (c) { } -ADD_ACKNOWLEDGER (Text_engraver, note_column); + +void +Text_engraver::boot () +{ + ADD_LISTENER (Text_engraver, text_script); + ADD_ACKNOWLEDGER (Text_engraver, note_column); +} ADD_TRANSLATOR (Text_engraver, /* doc */