(c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
+#include <math.h>
+
#include "warn.hh"
#include "note-collision.hh"
#include "note-column.hh"
// FIXME: what's this?
bool merge_possible = (ups[0] >= dps[0]) && (ups.top () >= dps.top ());
+
+
+ /* Do not merge notes typeset in different style. */
+ if ( !gh_equal_p (nu->get_property ("style"),
+ nd->get_property ("style") ) )
+ merge_possible = false;
+
int upball_type = Note_head::get_balltype (nu);
int dnball_type = Note_head::get_balltype (nd);
/* TODO: these numbers are magic; should devise a set of grob props
to tune this behavior. */
else if (stem_to_stem)
- shift_amount *= -0.65;
+ shift_amount = -abs (shift_amount) * 0.65;
else if (close_half_collide && !touch)
shift_amount *= 0.52;
else if (distant_half_collide && !touch)
Real wid = 0.0;
do
{
- if(cg[d].size())
+ if (cg[d].size ())
{
Grob *h = cg[d][0];
- wid = Note_column::first_head (h)->extent (h,X_AXIS).length() ;
+ wid = Note_column::first_head (h)->extent (h,X_AXIS).length () ;
}
}
while (flip (&d) != UP);