]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/book.cc
use springs instead of fixed/distance pairs
[lilypond.git] / lily / book.cc
index 06b3ea217febeb634fb49b8bb6fb14b79cd0e492..2a1038941b8e630904c2f4abce75174991f966c4 100644 (file)
@@ -11,7 +11,6 @@
 #include <cstdio>
 using namespace std;
 
-#include "lilypond-key.hh"
 #include "main.hh"
 #include "music.hh"
 #include "output-def.hh"
@@ -21,6 +20,7 @@ using namespace std;
 #include "warn.hh"
 #include "performance.hh"
 #include "paper-score.hh"
+#include "page-marker.hh"
 
 #include "ly-smobs.icc"
 
@@ -61,7 +61,7 @@ Book::Book (Book const &s)
       Score *newscore = unsmob_score (scm_car (p))->clone ();
 
       *t = scm_cons (newscore->self_scm (), SCM_EOL);
-      t = SCM_CDRLOC(*t);
+      t = SCM_CDRLOC (*t);
       newscore->unprotect ();
     }
 }
@@ -84,11 +84,6 @@ Book::mark_smob (SCM s)
 {
   Book *book = (Book *) SCM_CELL_WORD_1 (s);
 
-#if 0
-  if (book->key_)
-    scm_gc_mark (book->key_->self_scm ());
-#endif
-
   if (book->paper_)
     scm_gc_mark (book->paper_->self_scm ());
   scm_gc_mark (book->scores_);
@@ -130,9 +125,6 @@ Book::process (Output_def *default_paper,
   Real scale = scm_to_double (paper->c_variable ("output-scale"));
   Output_def *scaled_bookdef = scale_output_def (paper, scale);
 
-  Object_key *key = new Lilypond_general_key (0, user_key_, 0);
-  SCM scm_key = key->unprotect ();
-
   paper_book->paper_ = scaled_bookdef;
   scaled_bookdef->unprotect ();
 
@@ -162,13 +154,13 @@ Book::process (Output_def *default_paper,
              outputs = scm_cdr (outputs);
            }
        }
-      else if (Text_interface::is_markup (scm_car (s)))
+      else if (Text_interface::is_markup_list (scm_car (s))
+              || unsmob_page_marker (scm_car (s)))
        paper_book->add_score (scm_car (s));
       else
        assert (0);
     }
 
-  scm_remember_upto_here_1 (scm_key);
   return paper_book;
 }