/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 1997--2014 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Copyright (C) 1997--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{
virtual void set_melisma (bool);
-protected:
- DECLARE_TRANSLATOR_LISTENER (slur);
-
public:
+ SCM event_symbol ();
TRANSLATOR_DECLARATIONS (Slur_engraver);
+ TRANSLATOR_INHERIT (Slur_proto_engraver);
};
Slur_engraver::Slur_engraver () :
{
}
-IMPLEMENT_TRANSLATOR_LISTENER (Slur_engraver, slur);
-void
-Slur_engraver::listen_slur (Stream_event *ev)
+SCM
+Slur_engraver::event_symbol ()
{
- internal_listen_slur (ev);
+ // Need a string constant for memoization
+ return ly_symbol2scm ("slur-event");
}
void
context ()->set_property ("slurMelismaBusy", ly_bool2scm (m));
}
-ADD_ACKNOWLEDGER (Slur_engraver, inline_accidental);
-ADD_ACKNOWLEDGER (Slur_engraver, fingering);
-ADD_ACKNOWLEDGER (Slur_engraver, note_column);
-ADD_ACKNOWLEDGER (Slur_engraver, script);
-ADD_ACKNOWLEDGER (Slur_engraver, text_script);
-ADD_ACKNOWLEDGER (Slur_engraver, dots);
-ADD_END_ACKNOWLEDGER (Slur_engraver, tie);
-ADD_ACKNOWLEDGER (Slur_engraver, tuplet_number);
+void
+Slur_engraver::boot ()
+{
+ ADD_LISTENER (Slur_engraver, slur);
+ ADD_LISTENER (Slur_engraver, note);
+ ADD_ACKNOWLEDGER (Slur_engraver, inline_accidental);
+ ADD_ACKNOWLEDGER (Slur_engraver, fingering);
+ ADD_ACKNOWLEDGER (Slur_engraver, note_column);
+ ADD_ACKNOWLEDGER (Slur_engraver, script);
+ ADD_ACKNOWLEDGER (Slur_engraver, text_script);
+ ADD_ACKNOWLEDGER (Slur_engraver, dots);
+ ADD_END_ACKNOWLEDGER (Slur_engraver, tie);
+ ADD_ACKNOWLEDGER (Slur_engraver, tuplet_number);
+}
+
ADD_TRANSLATOR (Slur_engraver,
/* doc */
"Build slur grobs from slur events.",