#include "note-column.hh"
#include "note-head.hh"
#include "paper-def.hh"
+#include "ly-symbols.hh"
Collision::Collision()
{
}
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
{
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;
}