return out;
}
+MAKE_SCHEME_CALLBACK (Cluster, calc_cross_staff, 1);
+SCM
+Cluster::calc_cross_staff (SCM smob)
+{
+ Grob *me = unsmob_grob (smob);
+
+ extract_grob_set (me, "columns", cols);
+ Grob *commony = common_refpoint_of_array (cols, me, Y_AXIS);
+
+ return scm_from_bool (commony != me->get_parent (Y_AXIS));
+}
+
MAKE_SCHEME_CALLBACK (Cluster, print, 1);
SCM
Cluster::print (SCM smob)
{
public:
DECLARE_SCHEME_CALLBACK (print, (SCM));
+ DECLARE_SCHEME_CALLBACK (calc_cross_staff, (SCM));
DECLARE_GROB_INTERFACE();
};
(stencil . ,ly:cluster::print)
(minimum-length . 0.0)
(padding . 0.25)
+ (cross-staff . ,ly:cluster::calc-cross-staff)
(style . ramp)
(meta . ((class . Spanner)
(interfaces . (cluster-interface))))))