]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/score-engraver.cc
patch::: 1.3.85.jcn3
[lilypond.git] / lily / score-engraver.cc
index c360b9964934f975c89ab5e483f3189b8aee287b..66b759e7d237bc7c9cd31c67ce45afd7fbdd1b35 100644 (file)
@@ -35,9 +35,8 @@ Score_engraver::prepare (Moment w)
   SCM props = get_property (ly_symbol2scm ("basicPaperColumnProperties"));
   set_columns (new Paper_column (props),  new Paper_column (props));
   
-  SCM when = smobify (new Moment (w));
-  command_column_l_->set_elt_property ("when", when);
-  musical_column_l_->set_elt_property ("when", when);
+  command_column_l_->set_elt_property ("when", w.make_scm());
+  musical_column_l_->set_elt_property ("when", w.make_scm());
   command_column_l_->set_elt_property ("breakable", SCM_BOOL_T);
   
   Score_element_info i1(command_column_l_, 0), i2 (musical_column_l_,0);
@@ -82,11 +81,9 @@ Score_engraver::do_removal_processing()
   Engraver_group_engraver::do_removal_processing();
   scoreline_l_->set_bound(RIGHT,command_column_l_);
   command_column_l_->set_elt_property ("breakable", SCM_BOOL_T);
-
   
   typeset_all ();
 
-
   set_columns (0,0);
 }
 
@@ -149,7 +146,7 @@ Score_engraver::typeset_all()
            if (!s->get_bound (d))
              {
                s->set_bound(d, command_column_l_);
-               ::warning (_f ("unbound spanner `%s'", classname(s)));
+               ::warning (_f ("unbound spanner `%s'", s->name().ch_C()));
              }
          } while (flip(&d) != LEFT);
        }
@@ -171,16 +168,16 @@ Score_engraver::typeset_all()
 void
 Score_engraver::do_pre_move_processing()
 {
+  // this generates all items.
+  Engraver_group_engraver::do_pre_move_processing();
+  
+  typeset_all();
   if (to_boolean (command_column_l_->get_elt_property ("breakable")))
     {
       breaks_i_ ++;
       if (! (breaks_i_%8))
        progress_indication ("[" + to_str ( breaks_i_) + "]");
     }
-  // this generates all items.
-  Engraver_group_engraver::do_pre_move_processing();
-  
-  typeset_all();
 }
 
 void
@@ -195,20 +192,25 @@ Score_engraver::set_columns (Paper_column *new_command_l,
       if (*current[i])
        {
          scoreline_l_->add_column ((*current[i]));
+#if 0
+         /*
+           TODO: delay this decision.
+          */
          if (!Paper_column::used_b (*current[i]))
            {
              (*current[i])->suicide ();
              *current[i]  =0;
            }
+#endif
        }
       if (news[i])
        *current[i] = news[i];
     }
 
   if (new_musical_l)
-    set_property ("currentMusicalColumn", new_musical_l->self_scm_);
+    set_property ("currentMusicalColumn", new_musical_l->self_scm ());
   if (new_command_l)
-    set_property ("currentCommandColumn", new_command_l->self_scm_);  
+    set_property ("currentCommandColumn", new_command_l->self_scm ());  
 }
 
 Music_output*