X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Frhythmic-column-engraver.cc;h=84708dade1b8f5cf7df1e600302ede350e5acb1e;hb=36f6766b9de37adb09d2a27e3f925b356cbc0849;hp=324d37ebc1728b876d4a1ad7ad90aa1dfc44e7f5;hpb=cd93507bb0b0559c7d916c1b19d7ac1f83d1cc8e;p=lilypond.git diff --git a/lily/rhythmic-column-engraver.cc b/lily/rhythmic-column-engraver.cc index 324d37ebc1..84708dade1 100644 --- a/lily/rhythmic-column-engraver.cc +++ b/lily/rhythmic-column-engraver.cc @@ -3,22 +3,16 @@ source file of the GNU LilyPond music typesetter - (c) 1997--2003 Han-Wen Nienhuys + (c) 1997--2005 Han-Wen Nienhuys */ - -#include "slur.hh" #include "engraver.hh" #include "rhythmic-head.hh" #include "stem.hh" #include "note-column.hh" #include "dot-column.hh" -#include "event.hh" -#include "item.hh" #include "group-interface.hh" - - /* this engraver glues together stems, rests and note heads into a NoteColumn grob. @@ -55,7 +49,7 @@ 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); @@ -67,12 +61,12 @@ protected: Rhythmic_column_engraver::Rhythmic_column_engraver () { - spacing_ =0 ; + spacing_ = 0 ; last_spacing_ = 0; - stem_ =0; - note_column_=0; - dotcol_ =0; + stem_ = 0; + note_column_ = 0; + dotcol_ = 0; } @@ -83,14 +77,13 @@ Rhythmic_column_engraver::process_acknowledged_grobs () { if (!note_column_) { - note_column_ = new Item (get_property ("NoteColumn")); - announce_grob(note_column_, rheads_[0]->self_scm ()); + note_column_ = make_item ("NoteColumn", rheads_[0]->self_scm ()); - spacing_ = new Item (get_property ("NoteSpacing")); - spacing_->set_grob_property ("left-items", gh_cons (note_column_->self_scm (), SCM_EOL)); + spacing_ = make_item ("NoteSpacing", SCM_EOL); + spacing_->set_property ("left-items", scm_cons (note_column_->self_scm (), SCM_EOL)); - announce_grob (spacing_, SCM_EOL); + if (last_spacing_) { @@ -101,7 +94,7 @@ Rhythmic_column_engraver::process_acknowledged_grobs () } - for (int i=0; i < rheads_.size (); i++) + for (int i = 0; i < rheads_.size (); i++) { if (!rheads_[i]->get_parent (X_AXIS)) Note_column::add_head (note_column_, rheads_[i]); @@ -151,26 +144,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; - } + note_column_ = 0; if (spacing_) { - typeset_grob (spacing_); last_spacing_ = spacing_; - spacing_ =0; + spacing_ = 0; } - dotcol_ =0; - stem_ =0; + dotcol_ = 0; + stem_ = 0; } -ENTER_DESCRIPTION(Rhythmic_column_engraver, +ADD_TRANSLATOR (Rhythmic_column_engraver, /* descr */ "Generates NoteColumn, an objects that groups stems, noteheads and rests.", /* creats*/ "NoteColumn NoteSpacing", /* accepts */ "",