X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Frhythmic-column-engraver.cc;h=3c63236546d9a36980a3fe308bcf91395c087caa;hb=1855cf7137149c0bd27b5851fd9db498385591b3;hp=960a6e942a571f0295f8a31ed13426edd1e891b3;hpb=487ee28c2a58e7bd5cb9e85c7676057c0b32f385;p=lilypond.git diff --git a/lily/rhythmic-column-engraver.cc b/lily/rhythmic-column-engraver.cc index 960a6e942a..3c63236546 100644 --- a/lily/rhythmic-column-engraver.cc +++ b/lily/rhythmic-column-engraver.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1997--2002 Han-Wen Nienhuys + (c) 1997--2004 Han-Wen Nienhuys */ @@ -55,13 +55,12 @@ class Rhythmic_column_engraver :public Engraver Grob * last_spacing_; Grob * spacing_; - TRANSLATOR_DECLARATIONS(Rhythmic_column_engraver); + TRANSLATOR_DECLARATIONS (Rhythmic_column_engraver); protected: virtual void acknowledge_grob (Grob_info); virtual void process_acknowledged_grobs (); virtual void stop_translation_timestep (); - virtual void start_translation_timestep (); }; @@ -84,25 +83,20 @@ Rhythmic_column_engraver::process_acknowledged_grobs () { if (!note_column_) { - note_column_ = new Item (get_property ("NoteColumn")); - announce_grob(note_column_, SCM_EOL); + note_column_ = make_item ("NoteColumn",rheads_[0]->self_scm ()); + spacing_ = make_item ("NoteSpacing", SCM_EOL); + spacing_->set_property ("left-items", scm_cons (note_column_->self_scm (), SCM_EOL)); - spacing_ = new Item (get_property ("NoteSpacing")); - spacing_->set_grob_property ("left-items", gh_cons (note_column_->self_scm (), SCM_EOL)); - /* - Should insert a cause. Collision warnings go into the void. - - */ - announce_grob(spacing_, SCM_EOL); + - if (last_spacing_) - { - Pointer_group_interface::add_grob (last_spacing_, - ly_symbol2scm ("right-items" ), - note_column_); - } + if (last_spacing_) + { + Pointer_group_interface::add_grob (last_spacing_, + ly_symbol2scm ("right-items" ), + note_column_); + } } @@ -156,30 +150,21 @@ Rhythmic_column_engraver::acknowledge_grob (Grob_info i) void Rhythmic_column_engraver::stop_translation_timestep () { - if (note_column_) - { - typeset_grob (note_column_); note_column_ =0; - } if (spacing_) { - typeset_grob (spacing_); last_spacing_ = spacing_; spacing_ =0; } -} - -void -Rhythmic_column_engraver::start_translation_timestep () -{ + dotcol_ =0; stem_ =0; } -ENTER_DESCRIPTION(Rhythmic_column_engraver, +ENTER_DESCRIPTION (Rhythmic_column_engraver, /* descr */ "Generates NoteColumn, an objects that groups stems, noteheads and rests.", /* creats*/ "NoteColumn NoteSpacing", /* accepts */ "",