]> git.donarmstrong.com Git - lilypond.git/commitdiff
(get_line): Initialise Paper_line with
authorJan Nieuwenhuizen <janneke@gnu.org>
Sun, 11 Apr 2004 00:34:44 +0000 (00:34 +0000)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sun, 11 Apr 2004 00:34:44 +0000 (00:34 +0000)
page-penalty's from original grobs.

lily/system.cc

index 12745084471d565273c278de025a2e32e14fdde7..1e6a24446c0653c1d132cc6b95309b9fc52e86ac 100644 (file)
@@ -362,15 +362,27 @@ System::get_line ()
        unsmob_stencil (my_stencil)->translate (o + extra);
        stencils = scm_cons (my_stencil, stencils);
 
+#if 0
        // FIXME: never original  
-       if (1 || g->original_)
+       if (!penalty || g->original_)
          {
-           SCM s = g->get_property ("page-penalty");
-           // FIXME: 'page-penalty is never set
-           // FIXME; page breaking is not discrete at +-10000
-           if (is_number (s)) // && fabs (ly_scm2double (s)) < 10000)
-             penalty += ly_scm2double (s);
+           if (Item *it = dynamic_cast <Item*> (g))
+             {
+               Grob *col = it->get_column ();
+               SCM s = col->get_property ("page-penalty");
+               // FIXME: 'page-penalty is never set
+               // FIXME; page breaking is not discrete at +-10000
+               if (is_number (s)) // && fabs (ly_scm2double (s)) < 10000)
+                 penalty += ly_scm2double (s);
+             }
          }
+#else
+       SCM s = g->get_property ("page-penalty");
+       // FIXME: 'page-penalty is never set
+       // FIXME; page breaking is not discrete at +-10000
+       if (is_number (s)) // && fabs (ly_scm2double (s)) < 10000)
+         penalty += ly_scm2double (s);
+#endif 
       }
 
   Interval x (extent (this, X_AXIS));