Store separation-item in tie, and use that iso. bound when broken.
--- /dev/null
+\header {
+ texidoc = "Broken tie lengths are not affected by clefs
+in other staves."
+}
+
+\version "2.10.0"
+
+\layout {
+ ragged-right = ##t
+}
+
+<<
+ \new Staff \relative c'''{ e1 ~ \break e }
+ \new Staff \relative c{ \clef bass a \clef treble cis }
+>>
if (!wait)
heads_to_tie_.clear ();
+ Grob *sep = unsmob_grob (get_property ("breakableSeparationItem"));
for (vsize i = 0; i < ties_.size (); i++)
- typeset_tie (ties_[i]);
-
+ {
+ if (sep)
+ ties_[i]->set_object ("separation-item", sep->self_scm ());
+
+ typeset_tie (ties_[i]);
+ }
ties_.clear ();
tie_column_ = 0;
}
if (bounds[0]->break_status_dir ())
{
Real x = robust_relative_extent (bounds[0], x_refpoint_, X_AXIS)[-dir];
+
chord_outlines_[key].set_minimum_height (x);
}
else
for (vsize i = 0; i < ties.size (); i++)
{
Item *it = dynamic_cast<Spanner*> (ties[i])->get_bound (d);
-
+ if (it->break_status_dir ())
+ {
+ Item *sep
+ = dynamic_cast<Item*> (unsmob_grob (ties[i]->get_object ("separation-item")));
+ if (sep && sep->get_column () == it->get_column ())
+ it = sep;
+ }
+
bounds.push_back (it);
}
"dash-period "
"details "
"direction "
+ "separation-item "
"head-direction "
"line-thickness "
"quant-score "
"staff-position "
"thickness "
+
);
+