CVSROOT:        /cvsroot/lilypond
Module name:    lilypond
Branch:         
Changes by:     Han-Wen Nienhuys <[EMAIL PROTECTED]>    05/08/23 22:34:54

Modified files:
        lily           : tie-column.cc tie.cc 

Log message:
        (print): try Tie_column::set_directions () if
        control-points not yet defined.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tie-column.cc.diff?tr1=1.54&tr2=1.55&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tie.cc.diff?tr1=1.152&tr2=1.153&r1=text&r2=text

Patches:
Index: lilypond/lily/tie-column.cc
diff -u lilypond/lily/tie-column.cc:1.54 lilypond/lily/tie-column.cc:1.55
--- lilypond/lily/tie-column.cc:1.54    Mon Aug 22 17:28:50 2005
+++ lilypond/lily/tie-column.cc Tue Aug 23 22:34:53 2005
@@ -159,14 +159,14 @@
            continue;
 
          Grob *dots = unsmob_grob (head->get_object ("dot"));
-         if (dots)
+         if (dots && d == LEFT)
            {
              Interval x = dots->extent (common, X_AXIS);
              Real p = Staff_symbol_referencer::get_position (dots);
              
              Interval y (-1,1);
              y *= (staff_space /4);
-             y.translate ( p * staff_space * .5);
+             y.translate (p * staff_space * .5);
 
              insert_extent_into_skyline (&skyline_drul->elem_ref (d),
                                          Box (x,y), Y_AXIS, -d);
Index: lilypond/lily/tie.cc
diff -u lilypond/lily/tie.cc:1.152 lilypond/lily/tie.cc:1.153
--- lilypond/lily/tie.cc:1.152  Mon Aug 22 20:48:55 2005
+++ lilypond/lily/tie.cc        Tue Aug 23 22:34:53 2005
@@ -347,8 +347,11 @@
 
   if (skylines)
     {
-      Real y = staff_space * 0.5 * staff_position;
+      Real half_space = 0.5 * staff_space;
+      Real y = staff_position * half_space;
+      
       attachments = get_skyline_attachment (*skylines, y);
+      
       attachments.widen (-gap);
     }
   conf->attachment_x_ = attachments;
@@ -410,6 +413,19 @@
     set_direction (me);
       
   SCM cp = me->get_property ("control-points");
+  if (!scm_is_pair (cp))
+    {
+      /*
+       UGH.  dependency tracking!
+       */
+      if (Tie_column::has_interface (me->get_parent (Y_AXIS)))
+       {
+         Tie_column::set_directions (me->get_parent (Y_AXIS));
+       }
+
+      cp = me->get_property ("control-points");
+    }
+  
   if (!scm_is_pair (cp))
     {
       set_default_control_points (me);


_______________________________________________
Lilypond-cvs mailing list
Lilypond-cvs@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-cvs

Reply via email to