]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/auto-beam-engraver.cc
release: 1.5.19
[lilypond.git] / lily / auto-beam-engraver.cc
index 97451c6a4ef6da5811bddb7d4c4f211f1636232a..8d13e857df326e12807e3a9e9656768513784d2b 100644 (file)
@@ -61,6 +61,8 @@ private:
   Moment extend_mom_;
   Moment beam_start_moment_;
   Moment beam_start_location_;
+
+  bool subdivide_beams_;
   
   // We act as if beam were created, and start a grouping anyway.
   Beaming_info_list*grouping_p_;  
@@ -247,8 +249,7 @@ Auto_beam_engraver::begin_beam ()
   grouping_p_ = new Beaming_info_list;
   beam_start_moment_ = now_mom ();
   beam_start_location_ = *unsmob_moment (get_property ("measurePosition"));
-
-
+  subdivide_beams_ = gh_scm2bool(get_property("subdivideBeams")); 
 }
 
 
@@ -291,7 +292,8 @@ Auto_beam_engraver::typeset_beam ()
 {
   if (finished_beam_p_)
     {
-      finished_grouping_p_->beamify ();
+      finished_grouping_p_->beamify(*unsmob_moment (get_property ("beatLength")),
+                                   subdivide_beams_);
       Beam::set_beaming (finished_beam_p_, finished_grouping_p_);
       typeset_grob (finished_beam_p_);
       finished_beam_p_ = 0;
@@ -479,5 +481,5 @@ stemRightBeamCount.
 ",
 /* creats*/       "Beam",
 /* acks  */       "stem-interface rest-interface beam-interface bar-line-interface",
-/* reads */       "noAutoBeaming autoBeamSettings",
+/* reads */       "noAutoBeaming autoBeamSettings subdivideBeams",
 /* write */       "");