X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fnote-name-engraver.cc;h=3a76ba6ae065efa21b9a3401eecb7036f3964f25;hb=df4a7c4a55148e065d878dcc2f7e09ac27ea9c32;hp=1f03a0ea1a3eeb9788f057d6d6f2716647a6dbf4;hpb=76f13ab50fc726c89fa7c96f3deed519d2d773dc;p=lilypond.git diff --git a/lily/note-name-engraver.cc b/lily/note-name-engraver.cc index 1f03a0ea1a..3a76ba6ae0 100644 --- a/lily/note-name-engraver.cc +++ b/lily/note-name-engraver.cc @@ -9,21 +9,21 @@ #include "engraver.hh" #include "musical-request.hh" -#include "text-item.hh" +#include "item.hh" class Note_name_engraver : public Engraver { public: VIRTUAL_COPY_CONS(Translator); Link_array req_l_arr_; - Link_array texts_; - virtual bool do_try_music (Music*m); - virtual void do_process_music (); - virtual void do_pre_move_processing (); + Link_array texts_; + virtual bool try_music (Music*m); + void deprecated_process_music (); + virtual void stop_translation_timestep (); }; bool -Note_name_engraver::do_try_music (Music *m) +Note_name_engraver::try_music (Music *m) { if (Note_req *r = dynamic_cast (m)) { @@ -35,30 +35,32 @@ Note_name_engraver::do_try_music (Music *m) void -Note_name_engraver::do_process_music () +Note_name_engraver::deprecated_process_music () { + if (texts_.size ()) + return; String s ; for (int i=0; i < req_l_arr_.size (); i++) { if (i) s += " "; - s += req_l_arr_[i]->pitch_.str (); + s += unsmob_pitch (req_l_arr_[i]->get_mus_property ("pitch"))->str (); } if (s.length_i()) { - Text_item * t = new Text_item (SCM_EOL); - t->set_elt_property ("text", ly_str02scm ( s.ch_C())); - announce_element (Score_element_info (t, req_l_arr_[0])); + Item * t = new Item (get_property ("NoteName")); + t->set_grob_property ("text", ly_str02scm ( s.ch_C())); + announce_grob (t, req_l_arr_[0]); texts_.push (t); } } void -Note_name_engraver::do_pre_move_processing () +Note_name_engraver::stop_translation_timestep () { for (int i=0; i < texts_.size (); i++) { - typeset_element (texts_[i]); + typeset_grob (texts_[i]); } texts_.clear() ; req_l_arr_.clear ();