X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=lily%2Fengraver.cc;h=4430ab4fc6eda2f5eb77a8aca8dfeaf28796125b;hb=5d09d767066abb2f2d53cd18cf0c0a0b1188d1a7;hp=40d637ec04c6c212f70aead4fa2fdff6624e4c1c;hpb=b1323f33e9aa4b9eea05eefb8755c907d4d762d4;p=lilypond.git diff --git a/lily/engraver.cc b/lily/engraver.cc index 40d637ec04..4430ab4fc6 100644 --- a/lily/engraver.cc +++ b/lily/engraver.cc @@ -16,6 +16,7 @@ #include "item.hh" #include "context.hh" #include "score-context.hh" +#include "lilypond-key.hh" Engraver_group_engraver* Engraver::get_daddy_engraver () const @@ -37,10 +38,6 @@ Engraver::announce_grob (Grob_info inf) void Engraver::announce_grob (Grob* e, SCM cause) { - /* - TODO: junk grob-info, and make a cause grob-property to store - `causes' generically. - */ if (unsmob_music (cause) || unsmob_grob (cause)) e->set_property ("cause", cause); @@ -49,21 +46,16 @@ Engraver::announce_grob (Grob* e, SCM cause) if (!i.origin_trans_) i.origin_trans_ = this; - get_daddy_engraver ()->announce_grob (i); + Engraver * g = get_daddy_engraver (); + if (g) + g->announce_grob (i); } -void -Engraver::typeset_grob (Grob*p) -{ - Engraver *dad = get_daddy_engraver (); - dad->typeset_grob (p); -} - -Engraver::Engraver() +Engraver::Engraver () { } @@ -71,12 +63,11 @@ Engraver::Engraver() Score_engraver* Engraver::get_score_engraver () const { - SCM t = get_score_context ()->implementation_; - return dynamic_cast (unsmob_translator (t)); + return dynamic_cast (get_score_context ()->implementation ()); } -ENTER_DESCRIPTION(Engraver, +ENTER_DESCRIPTION (Engraver, "", "", "", "", "", "");