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 |
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);
elems.push (dynamic_cast<Score_element*> (elem_l_arr_[i]));
}
-
-
if (!elems.size ())
return;
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;
}
/*
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_;
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);
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())
{
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);
}
}
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_,
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 ();
};