]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix 605.
authorJoe Neeman <joeneeman@gmail.com>
Fri, 25 Apr 2008 23:48:18 +0000 (09:48 +1000)
committerJoe Neeman <joeneeman@gmail.com>
Fri, 25 Apr 2008 23:48:18 +0000 (09:48 +1000)
Add a cross-staff property to Fingering.

lily/side-position-interface.cc
scm/define-grobs.scm

index c1b848bfce7370007b95f9d033c0bf0b6bb0ae6b..73da30e9e32d26fc3d9c65a35fedcdb7d0c880c3 100644 (file)
@@ -218,6 +218,10 @@ Side_position_interface::calc_cross_staff (SCM smob)
   Grob *me = unsmob_grob (smob);
   extract_grob_set (me, "side-support-elements", elts);
 
+  for (vsize i = 0; i < elts.size (); i++)
+    if (to_boolean (elts[i]->get_property ("cross-staff")))
+      return SCM_BOOL_T;
+
   Grob *common = common_refpoint_of_array (elts, me->get_parent (Y_AXIS), Y_AXIS);
   return scm_from_bool (common != me->get_parent (Y_AXIS));
 }
@@ -290,6 +294,7 @@ Side_position_interface::set_axis (Grob *me, Axis a)
                             a);
     }
 }
+
 Axis
 Side_position_interface::get_axis (Grob *me)
 {
index d81c37d3c9c9d7fa2bc90f6d9cc68d3f79110967..f75e454de048e40daef9b669f49aba08f0ac596a 100644 (file)
        (stencil . ,ly:text-interface::print)
        (direction . ,ly:script-interface::calc-direction)
        (positioning-done . ,ly:script-interface::calc-positioning-done)
+       (cross-staff . ,ly:side-position-interface::calc-cross-staff)
 
        (text . ,fingering::calc-text) 
        (font-encoding . fetaNumber)