X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fcluster.cc;h=d872fca6be82eebac7f4ddfbe92d3d2071924abe;hb=38d7d319eabc906e82fb42002678c6d42a23b6f7;hp=2c41b9a1749e05e3ae7b0257f7e83954bd4845ca;hpb=e42585017a01fd02f6353b994cf0c87b03a7bb2e;p=lilypond.git diff --git a/lily/cluster.cc b/lily/cluster.cc index 2c41b9a174..d872fca6be 100644 --- a/lily/cluster.cc +++ b/lily/cluster.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 2002--2006 Juergen Reuter + (c) 2002--2009 Juergen Reuter Han-Wen Nienhuys */ @@ -111,6 +111,18 @@ brew_cluster_piece (Grob *me, vector bottom_points, vector top_p 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) @@ -186,15 +198,17 @@ Cluster::print (SCM smob) } ADD_INTERFACE (Cluster, - "A graphically drawn musical cluster. " - "\n\n" - "@code{padding} adds to the vertical extent of the shape (top and " - "bottom). \n\n" - "The property @code{style} controls the shape of cluster segments. Valid values " - "include @code{leftsided-stairs}, @code{rightsided-stairs}, @code{centered-stairs}, " - "and @code{ramp}.\n", - - /* props */ + "A graphically drawn musical cluster.\n" + "\n" + "@code{padding} adds to the vertical extent of the shape (top" + " and bottom).\n" + "\n" + "The property @code{style} controls the shape of cluster" + " segments. Valid values include @code{leftsided-stairs}," + " @code{rightsided-stairs}, @code{centered-stairs}, and" + " @code{ramp}.\n", + + /* properties */ "style " "padding " "columns " @@ -204,7 +218,7 @@ struct Cluster_beacon { public: DECLARE_SCHEME_CALLBACK (height, (SCM)); - DECLARE_GROB_INTERFACE(); + DECLARE_GROB_INTERFACE (); }; MAKE_SCHEME_CALLBACK (Cluster_beacon, height, 1); @@ -218,8 +232,10 @@ Cluster_beacon::height (SCM g) } ADD_INTERFACE (Cluster_beacon, - "A place holder for the cluster spanner to determine the vertical " - "extents of a cluster spanner at this X position.", + "A place holder for the cluster spanner to determine the" + " vertical extents of a cluster spanner at this" + " X@tie{}position.", /* properties */ - "positions "); + "positions " + );