]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/mark-engraver.cc
Issue 1375/1: Let Translator constructor take a Context argument
[lilypond.git] / lily / mark-engraver.cc
index 51add1233e0c72ff1ae1d0833c167db3944509d8..2242a44f22c4ac7d045b0e434e85f4985bde0473 100644 (file)
@@ -18,6 +18,7 @@
 */
 
 #include <cctype>
+using namespace std;
 
 #include "engraver.hh"
 
@@ -53,11 +54,12 @@ protected:
   void stop_translation_timestep ();
   virtual void finalize ();
 
-  DECLARE_TRANSLATOR_LISTENER (mark);
-  DECLARE_ACKNOWLEDGER (break_alignment);
+  void listen_mark (Stream_event *);
+  void acknowledge_break_alignment (Grob_info);
 };
 
-Mark_engraver::Mark_engraver ()
+Mark_engraver::Mark_engraver (Context *c)
+  : Engraver (c)
 {
   text_ = 0;
   final_text_ = 0;
@@ -110,7 +112,6 @@ Mark_engraver::create_items (Stream_event *ev)
   text_ = make_item ("RehearsalMark", ev->self_scm ());
 }
 
-IMPLEMENT_TRANSLATOR_LISTENER (Mark_engraver, mark);
 void
 Mark_engraver::listen_mark (Stream_event *ev)
 {
@@ -156,7 +157,13 @@ Mark_engraver::process_music ()
     }
 }
 
-ADD_ACKNOWLEDGER (Mark_engraver, break_alignment);
+
+void
+Mark_engraver::boot ()
+{
+  ADD_LISTENER (Mark_engraver, mark);
+  ADD_ACKNOWLEDGER (Mark_engraver, break_alignment);
+}
 
 ADD_TRANSLATOR (Mark_engraver,
                 /* doc */