]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.1.57
authorfred <fred>
Tue, 26 Mar 2002 22:14:58 +0000 (22:14 +0000)
committerfred <fred>
Tue, 26 Mar 2002 22:14:58 +0000 (22:14 +0000)
input/test/volta.fly
lily/break-align-item.cc
lily/repeat-engraver.cc
lily/spacing-spanner.cc
lily/spring-spacer.cc
midi2ly/include/midi-score-parser.hh

index 17b42bd28f4f86a37f5f7956ac810d140dfceafb..9386a436694a673e4984c8b3dd3e9dbcc079c472 100644 (file)
@@ -4,7 +4,7 @@
 c' d e f |
 \repeat semi 2 { g a b c }
 \alternative { { c b a g a g a g} { f e d c } } \break
-c, d e f |  % Assertion failure if this line is removed!!
+%c, d e f |  % Assertion failure if this line is removed!!
 \repeat semi 2 { g a b c }
 \alternative { { c b a g \break a g a g} { f e d c } } \break
 c, d e f |
index bd8e723ea3a6f3524e8be389c692c34bcd50eb6c..d8e284a388584162f8860d4edd86d0e0d6fda259 100644 (file)
 void
 Break_align_item::do_pre_processing()
 {
-  align_dir_ = break_status_dir();
+  if (break_status_dir() == LEFT)
+    align_dir_ = LEFT;
+  else
+    align_dir_ = RIGHT;
+  
   flip (&align_dir_);
   sort_elements ();
   Real interline= paper_l ()->get_realvar (interline_scm_sym); 
@@ -38,8 +42,6 @@ Break_align_item::do_pre_processing()
        elems.push (dynamic_cast<Score_element*> (elem_l_arr_[i]));
     }
   
-
-  
   if (!elems.size ())
     return;
 
index 9ca3649fe3a9c8192367df058531512ff2d6ab52..5dd89eb2f56a620c2a953016a8860c751500fb03 100644 (file)
@@ -104,8 +104,13 @@ Repeat_engraver::queue_events ()
          else
            becel.append (new Bar_create_event (walk_mom, "stop"));
        }
-    } 
-  create_barmoments_queue_ = becel.head_ ;
+    }
+
+  Cons<Bar_create_event> *&tail = create_barmoments_queue_
+    ? last_cons (create_barmoments_queue_)->next_
+    : create_barmoments_queue_;
+
+  tail = becel.head_ ;
   becel.head_ = 0;
 }
 
@@ -129,7 +134,6 @@ Repeat_engraver::do_process_requests ()
   /*
     Do all the events that need to be done now.
   */
-  bool stop = false;
   while (head && now_mom () == head->car_->when_)
     {
       create_barmoments_queue_ = create_barmoments_queue_->next_;
index fad2d6903aa2993d8dcc6e085093eb6a2cb30897..646d37cd97b9baed08b1a7800583c60f6cd3415a 100644 (file)
@@ -67,6 +67,7 @@ Spacing_spanner::do_measure (int col1, int col2) const
 
   Array<Spring> meas_springs;
 
+  Real non_musical_space_strength = paper_l ()->get_var ("non_musical_space_strength");
   for (int i= col1; i < col2; i++)
     {
       Item * l = scol(i);
@@ -101,7 +102,7 @@ Spacing_spanner::do_measure (int col1, int col2) const
          else if (!lc->musical_b() && i+1 < col_count())
            {
              s.distance_f_ = default_bar_spacing (lc,rc,shortest);
-             s.strength_f_ = 2.0;
+             s.strength_f_ = non_musical_space_strength; // fixed after complaints by michael krause
            }
          else if (lc->musical_b())
            {
@@ -127,7 +128,15 @@ Spacing_spanner::do_measure (int col1, int col2) const
 
              s.distance_f_ += correction;
            }
-         
+
+         if (s.distance_f_ <=0)
+           {
+             /*
+               \bar "".  We give it 0 space, with high strength. 
+              */
+             s.distance_f_ = 0.0 PT;
+             s.strength_f_ = 20.0; 
+           }
          meas_springs.push (s);        
        }
     }
index e89060286966895aa731ce3f3cd856a3fb005009..aee2bba8bce4b42e1b43ad84ddb154950d04297c 100644 (file)
@@ -407,8 +407,7 @@ Spring_spacer::add_column (Paper_column  *col, bool fixed, Real fixpos)
       Real d  = cr.distance_f_;
       if (fabs (d) < EPS)
        {
-         connect (idx, this_rank, 0.0, 10); // large strength. 
-         programming_error ("requesting zero distance.");
+         connect (idx, this_rank, cr.distance_f_, cr.strength_f_); // large strength. 
        }
       else
        connect (idx, this_rank, cr.distance_f_,
index 02d6f18aebdc3239f188ad6886d15c2e5a93032d..fca4fdf006cb45e02d1fea39532f95880316b344 100644 (file)
@@ -24,8 +24,6 @@ private:
   void open (String filename_str, Sources*);
 
   void parse_header ();
-  // why the #*&$#{%) has Link_array another behaviour than Link_list??
-  //  int find_earliest_i (Link_array<Midi_track_parser*>& tracks);
   int find_earliest_i (Link_array<Midi_track_parser>& tracks);
   Mudela_score* parse_score ();
 };