]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.1.65
authorfred <fred>
Tue, 26 Mar 2002 22:24:13 +0000 (22:24 +0000)
committerfred <fred>
Tue, 26 Mar 2002 22:24:13 +0000 (22:24 +0000)
lily/collision.cc
lily/rhythmic-column-engraver.cc

index a252a633d3448261036db905106c3c57ca40e303..4b1fb66685881bf777422191430b414611f0b5ca 100644 (file)
@@ -10,6 +10,7 @@
 #include "note-column.hh"
 #include "note-head.hh"
 #include "paper-def.hh"
+#include "ly-symbols.hh"
 
 Collision::Collision()
 {
@@ -135,7 +136,20 @@ Collision::do_pre_processing()
          }
          while ((flip (&d))!= UP);
     }
-
+  do
+    {
+      for (int i=0; i < clash_groups[d].size (); i++)
+       {
+         SCM force =  clash_groups[d][i]->remove_elt_property (force_hshift_scm_sym);
+         if (force != SCM_BOOL_F)
+           {
+             force = SCM_CDR (force);
+             offsets[d][i] = gh_scm2double (force);
+           }
+       }
+    }
+  while ((flip (&d))!= UP);
+  
   Real wid_f = paper_l ()->note_width ();
   do
     {
index 5e03c9b3fb9ac94fe7cb2ba934e2fe3495df4585..a2f1103d8a743ea82ca63238502e21ad18f489f1 100644 (file)
@@ -105,13 +105,19 @@ Rhythmic_column_engraver::do_pre_move_processing()
   if (ncol_p_) 
     {
       Scalar sh = get_property ("horizontalNoteShift", 0);
-      // egcs
-      if (sh.to_bool () && sh.isnum_b ())
+      if (sh.isnum_b ())
        {
          ncol_p_->set_elt_property (horizontal_shift_scm_sym,
                                     gh_int2scm (int (sh)));
        }
 
+      sh = get_property ("forceHorizontalShift" ,0);
+      if (sh.isnum_b ())
+       {
+         ncol_p_->set_elt_property (force_hshift_scm_sym,
+                                    gh_double2scm (double (sh)));
+       }
+
       typeset_element (ncol_p_);
       ncol_p_ =0;
     }