X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Flaissez-vibrer-engraver.cc;h=cfc331da0c39071027b67fe69877300a907ed239;hb=621e5fb6a5c3cb67c46082e561cffad691ead30c;hp=ba6c837a2b388282adff6f793172fd42c9208424;hpb=75eebcb49e52d296b1da3e1074e0825d2c780db4;p=lilypond.git diff --git a/lily/laissez-vibrer-engraver.cc b/lily/laissez-vibrer-engraver.cc index ba6c837a2b..cfc331da0c 100644 --- a/lily/laissez-vibrer-engraver.cc +++ b/lily/laissez-vibrer-engraver.cc @@ -11,20 +11,20 @@ #include "engraver.hh" #include "item.hh" #include "pointer-group-interface.hh" +#include "stream-event.hh" #include "translator.icc" class Laissez_vibrer_engraver : public Engraver { - - Music *event_; + Stream_event *event_; Grob *lv_column_; - Link_array lv_ties_; + vector lv_ties_; void stop_translation_timestep (); DECLARE_ACKNOWLEDGER (note_head); - - virtual bool try_music (Music *); +protected: + DECLARE_TRANSLATOR_LISTENER (laissez_vibrer); public: TRANSLATOR_DECLARATIONS (Laissez_vibrer_engraver); }; @@ -43,11 +43,11 @@ Laissez_vibrer_engraver::stop_translation_timestep () lv_ties_.clear (); } -bool -Laissez_vibrer_engraver::try_music (Music *m) +IMPLEMENT_TRANSLATOR_LISTENER (Laissez_vibrer_engraver, laissez_vibrer); +void +Laissez_vibrer_engraver::listen_laissez_vibrer (Stream_event *ev) { - event_ = m; - return true; + ASSIGN_EVENT_ONCE (event_, ev); } void @@ -68,11 +68,9 @@ Laissez_vibrer_engraver::acknowledge_note_head (Grob_info inf) lv_tie); lv_tie->set_parent (lv_column_, Y_AXIS); - lv_ties_.push (lv_tie); + lv_ties_.push_back (lv_tie); } - - ADD_ACKNOWLEDGER (Laissez_vibrer_engraver, note_head); ADD_TRANSLATOR (Laissez_vibrer_engraver, /* doc */ "Create Laissez vibrer items.",