]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/score-column.cc
release: 0.1.48
[lilypond.git] / lily / score-column.cc
index 2fd3def678c7f5b1edff171d74d28ca8a5a7c724..fda759a2da5411d981e3b17df313e4a0c602d94e 100644 (file)
 #include "p-col.hh"
 #include "score-column.hh"
 
-Score_column::Score_column(Moment w)
+Score_column::Score_column (Moment w)
 {
-    when_ = w;
-    musical_b_ = false;
+  when_ = w;
+  musical_b_ = false;
 }
 
 void
-Score_column::print() const
+Score_column::do_print() const
 {
 #ifndef NPRINT
-    mtor << "Score_column { mus "<< musical_b_ <<" at " <<  when_<<'\n';
-    mtor << "durations: [";
-    for (int i=0; i < durations.size(); i++)
-       mtor << durations[i] << " ";
-    mtor << "]\n";
-    PCol::print();
-    mtor << "}\n";
+  DOUT << "mus "<< musical_b_ <<" at " <<  when_<<'\n';
+  DOUT << "durations: [";
+  for (int i=0; i < durations.size(); i++)
+    DOUT << durations[i] << " ";
+  DOUT << "]\n";
+  Paper_column::do_print();
 #endif
 }
 
 int
-Moment_compare(Moment const &m1, Moment const &m2)
+Moment_compare (Moment const &m1, Moment const &m2)
 {
-    return sign(m1-m2);
+  return sign (m1-m2);
 }
 
 void
 Score_column::preprocess()
 {
-    durations.sort(Moment_compare);
+  durations.sort (Moment_compare);
 }
 
 void
-Score_column::add_duration(Moment d)
+Score_column::add_duration (Moment d)
 {
-    assert(d);
-    for (int i = 0; i< durations.size(); i++) {
-       if (d == durations[i])
-           return ;
+  if (!d)
+    {
+      warning (_("Ignoring zero duration added to column at ")
+              + when_.str ());
+      return;
     }
-    durations.push(d);
+  
+  for (int i = 0; i< durations.size(); i++) 
+    {
+      if (d == durations[i])
+       return ;
+    }
+  durations.push (d);
 }
 
-void
-Score_column::do_set_breakable()
-{
-    Score_column *c1 = new Score_column(when_);
-    Score_column *c2 = new Score_column(when_);
-    prebreak_p_ =c1;
-    postbreak_p_ = c2;
-    c1->durations = durations;
-    c2->durations = durations;
-    c1->musical_b_ 
-       = c2->musical_b_ = musical_b_;
-}
+IMPLEMENT_IS_TYPE_B1(Score_column, Paper_column);