+ bool equally_long = false;
+ Grob *par_beam = parallel_beam (me, cols, &equally_long);
+
+ if (par_beam && to_boolean (par_beam->get_property ("cross-staff")))
+ return SCM_BOOL_T;
+
+ for (vsize i = 0; i < cols.size (); i++)
+ {
+ Grob *stem = unsmob_grob (cols[i]->get_object ("stem"));
+ if (stem && to_boolean (stem->get_property ("cross-staff")))
+ return SCM_BOOL_T;
+ }
+
+ return SCM_BOOL_F;
+}
+
+ADD_INTERFACE (Tuplet_bracket,
+ "A bracket with a number in the middle, used for tuplets."
+ " When the bracket spans a line break, the value of"
+ " @code{break-overshoot} determines how far it extends"
+ " beyond the staff. At a line break, the markups in the"
+ " @code{edge-text} are printed at the edges.",