\relative c'' {
\textLengthOn
- <c\3>4-"inside"( d' <e,\2>-"inside" g
+ <c\3>4-"outside"( d' <e,\2>-"inside" g
<c\1>1-"outside")
}
Grob *f = ft.script_;
f->set_parent (ft.head_, X_AXIS);
f->set_parent (ft.head_, Y_AXIS);
- f->set_property ("avoid-slur", SCM_BOOL_F);
+ f->set_property ("avoid-slur", ly_symbol2scm ("inside"));
if (hordir == LEFT
&& unsmob_grob (ft.head_->get_object ("accidental-grob")))
Side_position_interface::add_support (f,
vector<Stream_event *> stop_events_;
vector<Grob *> slurs_;
vector<Grob *> end_slurs_;
+ vector<Grob_info> objects_to_acknowledge_;
protected:
DECLARE_TRANSLATOR_LISTENER (phrasing_slur);
void
Phrasing_slur_engraver::acknowledge_extra_object (Grob_info info)
{
- Slur::auxiliary_acknowledge_extra_object (info, slurs_, end_slurs_);
+ objects_to_acknowledge_.push_back (info);
}
void
void
Phrasing_slur_engraver::stop_translation_timestep ()
{
+ for (vsize i = 0; i < objects_to_acknowledge_.size (); i++)
+ Slur::auxiliary_acknowledge_extra_object (objects_to_acknowledge_[i], slurs_, end_slurs_);
+
end_slurs_.clear ();
start_events_.clear ();
stop_events_.clear ();
+ objects_to_acknowledge_.clear ();
}
ADD_ACKNOWLEDGER (Phrasing_slur_engraver, accidental);
vector<Stream_event *> stop_events_;
vector<Grob *> slurs_;
vector<Grob *> end_slurs_;
+ vector<Grob_info> objects_to_acknowledge_;
void set_melisma (bool);
void
Slur_engraver::acknowledge_extra_object (Grob_info info)
{
- Slur::auxiliary_acknowledge_extra_object (info, slurs_, end_slurs_);
+ objects_to_acknowledge_.push_back (info);
}
void
s->set_bound (RIGHT, unsmob_grob (get_property ("currentMusicalColumn")));
announce_end_grob (s, SCM_EOL);
}
+
+ for (vsize i = 0; i < objects_to_acknowledge_.size (); i++)
+ Slur::auxiliary_acknowledge_extra_object (objects_to_acknowledge_[i], slurs_, end_slurs_);
+
+ objects_to_acknowledge_.clear ();
end_slurs_.clear ();
start_events_.clear ();
stop_events_.clear ();