]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/rhythmic-column-engraver.cc
news: fix typo in date
[lilypond.git] / lily / rhythmic-column-engraver.cc
index 985b7b08a76ba51e0c0748dc926c043133491af8..e4e78ecee6a2ad06b99441fe44f4957552e46999 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1997--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 1997--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -55,6 +55,7 @@ class Rhythmic_column_engraver : public Engraver
 {
   vector<Grob *> rheads_;
   Grob *stem_;
+  Grob *flag_;
   Grob *note_column_;
   Grob *arpeggio_;
 
@@ -62,6 +63,7 @@ class Rhythmic_column_engraver : public Engraver
 protected:
 
   DECLARE_ACKNOWLEDGER (stem);
+  DECLARE_ACKNOWLEDGER (flag);
   DECLARE_ACKNOWLEDGER (rhythmic_head);
   DECLARE_ACKNOWLEDGER (arpeggio);
   void process_acknowledged ();
@@ -72,6 +74,7 @@ Rhythmic_column_engraver::Rhythmic_column_engraver ()
 {
 
   stem_ = 0;
+  flag_ = 0;
   note_column_ = 0;
   arpeggio_ = 0;
 }
@@ -105,6 +108,8 @@ Rhythmic_column_engraver::process_acknowledged ()
           Pointer_group_interface::add_grob (note_column_, ly_symbol2scm ("elements"), arpeggio_);
           note_column_->set_object ("arpeggio", arpeggio_->self_scm ());
         }
+      if (flag_)
+        Pointer_group_interface::add_grob (note_column_, ly_symbol2scm ("elements"), flag_);
     }
 }
 
@@ -114,6 +119,12 @@ Rhythmic_column_engraver::acknowledge_stem (Grob_info i)
   stem_ = i.grob ();
 }
 
+void
+Rhythmic_column_engraver::acknowledge_flag (Grob_info i)
+{
+  flag_ = i.grob ();
+}
+
 void
 Rhythmic_column_engraver::acknowledge_rhythmic_head (Grob_info i)
 {
@@ -132,9 +143,11 @@ Rhythmic_column_engraver::stop_translation_timestep ()
   note_column_ = 0;
   stem_ = 0;
   arpeggio_ = 0;
+  flag_ = 0;
 }
 
 ADD_ACKNOWLEDGER (Rhythmic_column_engraver, stem);
+ADD_ACKNOWLEDGER (Rhythmic_column_engraver, flag);
 ADD_ACKNOWLEDGER (Rhythmic_column_engraver, rhythmic_head);
 ADD_ACKNOWLEDGER (Rhythmic_column_engraver, arpeggio);