X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Frest-collision-engraver.cc;h=c735a0320512bf5081034329491dd3aa40f043ad;hb=d3c90f63573d53cfb191cc48f8f6ee672a5ca37a;hp=d139313be214320c85660e061bdaf33d207259cb;hpb=1cf3d59c1559fb9774c4c1c8cae155cfe54a927c;p=lilypond.git diff --git a/lily/rest-collision-engraver.cc b/lily/rest-collision-engraver.cc index d139313be2..c735a03205 100644 --- a/lily/rest-collision-engraver.cc +++ b/lily/rest-collision-engraver.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1997--1998 Han-Wen Nienhuys + (c) 1997--2000 Han-Wen Nienhuys */ #include "debug.hh" @@ -13,7 +13,7 @@ #include "note-column.hh" -IMPLEMENT_IS_TYPE_B1(Rest_collision_engraver, Engraver); + ADD_THIS_TRANSLATOR(Rest_collision_engraver); Rest_collision_engraver::Rest_collision_engraver() @@ -24,10 +24,11 @@ Rest_collision_engraver::Rest_collision_engraver() void Rest_collision_engraver::process_acknowledged () { - if (rest_collision_p_ || note_column_l_arr_.size () < 2) + if (rest_collision_p_ || note_column_l_arr_.size () < 2) return; rest_collision_p_ = new Rest_collision; + announce_element (Score_element_info (rest_collision_p_, 0)); for (int i=0; i< note_column_l_arr_.size (); i++) rest_collision_p_->add_column (note_column_l_arr_[i]); @@ -36,8 +37,8 @@ Rest_collision_engraver::process_acknowledged () void Rest_collision_engraver::acknowledge_element (Score_element_info i) { - if (i.elem_l_->is_type_b (Note_column::static_name())) - note_column_l_arr_.push ((Note_column*)i.elem_l_->access_Item ()); + if (dynamic_cast (i.elem_l_)) + note_column_l_arr_.push (dynamic_cast (i.elem_l_)); } void