+ Music* e = text_events_[i];
+ SCM t = e->get_mus_property ("text");
+ SCM dir = e->get_mus_property ("direction");
+ sp->set_grob_property ("text",t);
+ if (is_direction (dir))
+ sp->set_grob_property ("direction",dir);
+
+ numbers_.push (sp);
+ announce_grob (sp, e->self_scm());
+ }
+
+ /*
+ Stack different scripts.
+ */
+ Direction d = DOWN;
+ do {
+ Grob *last =0;
+ for (int i=0; i <numbers_.size(); i++)
+ {
+ if (gh_int2scm (d) == numbers_[i]->get_grob_property ("direction"))
+ {
+ if (last)
+ Side_position_interface::add_support (numbers_[i], last);
+ last = numbers_[i];
+ }
+ }
+ } while (flip (&d) != DOWN);
+ }
+ else
+ {
+ Spanner *sp
+ = new Spanner (get_property ("MultiMeasureRestNumber"));
+ numbers_.push (sp);
+ announce_grob (sp, busy_span_req_->self_scm());
+ }
+
+ for (int i =0 ; i < numbers_.size(); i++)
+ {
+ Side_position_interface::add_support (numbers_[i], mmrest_);
+ numbers_[i]->set_parent (mmrest_, Y_AXIS);
+ }
+
+ announce_grob (mmrest_, busy_span_req_->self_scm());
+ start_measure_
+ = gh_scm2int (get_property ("currentBarNumber"));
+ }