]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/span-arpeggio-engraver.cc
* scripts/lilypond-book.py (process_snippets): Argument fix.
[lilypond.git] / lily / span-arpeggio-engraver.cc
index cbf77b26739cf7bebf4ebd4b5f8207c9468e5928..e9701290482b69160126ab0ef9d71b0cfd767d0f 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 2000--2005 Jan Nieuwenhuizen <janneke@gnu.org>
+  (c) 2000--2006 Jan Nieuwenhuizen <janneke@gnu.org>
 
   Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
@@ -30,7 +30,7 @@ protected:
 
 private:
   Item *span_arpeggio_;
-  Link_array<Grob> arpeggios_;
+  vector<Grob*> arpeggios_;
 };
 
 Span_arpeggio_engraver::Span_arpeggio_engraver ()
@@ -42,9 +42,7 @@ void
 Span_arpeggio_engraver::acknowledge_arpeggio (Grob_info info)
 {
   if (info.origin_contexts (this).size ()) // huh? what's this test for? 
-    {
-      arpeggios_.push (info.grob ());
-    }
+    arpeggios_.push_back (info.grob ());
 }
 
 void
@@ -59,9 +57,7 @@ Span_arpeggio_engraver::process_acknowledged ()
   */
   if (!span_arpeggio_ && arpeggios_.size () > 1
       && to_boolean (get_property ("connectArpeggios")))
-    {
-      span_arpeggio_ = make_item ("Arpeggio", SCM_EOL);
-    }
+    span_arpeggio_ = make_item ("Arpeggio", SCM_EOL);
 }
 
 void
@@ -73,15 +69,15 @@ Span_arpeggio_engraver::stop_translation_timestep ()
        we do this very late, to make sure we also catch `extra'
        side-pos support like accidentals.
       */
-      for (int j = 0; j < arpeggios_.size (); j++)
+      for (vsize j = 0; j < arpeggios_.size (); j++)
        {
          extract_grob_set (arpeggios_[j], "stems", stems);
-         for (int i = stems.size (); i--;)
+         for (vsize i = stems.size (); i--;)
            Pointer_group_interface::add_grob (span_arpeggio_, ly_symbol2scm ("stems"),
                                               stems[i]);
 
          extract_grob_set (arpeggios_[j], "side-support-elements", sses);
-         for (int i = sses.size (); i--;)
+         for (vsize i = sses.size (); i--;)
            Pointer_group_interface::add_grob (span_arpeggio_, ly_symbol2scm ("side-support-elements"),
                                               sses[i]);
 
@@ -89,7 +85,7 @@ Span_arpeggio_engraver::stop_translation_timestep ()
            we can't kill the children, since we don't want to the
            previous note to bump into the span arpeggio; so we make
            it transparent.  */
-         arpeggios_[j]->set_property ("print-function", SCM_EOL);
+         arpeggios_[j]->set_property ("transparent", SCM_BOOL_T);
        }
 
       span_arpeggio_ = 0;