]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/page-breaking.cc
MIDI: in #'staff mapping mode, keep to one channel. Fixes #1620.
[lilypond.git] / lily / page-breaking.cc
index 25044078df0b61ae807879f6ff0b7dd3e8b7f271..fe1d163658a548f7a59489c348bf3eadb8ea91cf 100644 (file)
@@ -181,8 +181,8 @@ compress_lines (const vector<Line_details> &orig)
          // compressed.title_ is true if and only if the first of its
          // compressed lines was a title.
           compressed.title_ = old.title_;
-         
-         // take care of footnotes
+
+          // adds footnotes of one line to the footnotes of another
           compressed.footnotes_.insert (compressed.footnotes_.begin (),
             old.footnotes_.begin (), old.footnotes_.end ());
           
@@ -255,7 +255,7 @@ Page_breaking::Page_breaking (Paper_book *pb, Break_predicate is_break, Prob_bre
   if (footnote_separator)
     {
       Interval separator_extent = footnote_separator->extent (Y_AXIS);
-      Real separator_span = max (separator_extent[UP] - separator_extent[DOWN], 0.0);
+      Real separator_span = separator_extent.length ();
 
       footnote_separator_stencil_height_ = separator_span;
     }
@@ -263,6 +263,7 @@ Page_breaking::Page_breaking (Paper_book *pb, Break_predicate is_break, Prob_bre
     footnote_separator_stencil_height_ = 0.0;
 
   footnote_padding_ = robust_scm2double (pb->paper_->c_variable ("footnote-padding"), 0.0);
+  footnote_footer_padding_ = robust_scm2double (pb->paper_->c_variable ("footnote-footer-padding"), 0.0);
 
   if (systems_per_page_ && (max_systems_per_page_ || min_systems_per_page_))
     {
@@ -335,6 +336,12 @@ Page_breaking::footnote_padding () const
   return footnote_padding_;
 }
 
+Real
+Page_breaking::footnote_footer_padding () const
+{
+  return footnote_footer_padding_;
+}
+
 bool
 Page_breaking::too_many_lines (int line_count) const
 {