+ // Now cater for slurs starting/ending at a notehead: those override
+ // the column bounds
+ if (note_slurs_[START].empty () && note_slurs_[STOP].empty ())
+ return;
+ extract_grob_set (e, "note-heads", heads);
+ for (vsize i = heads.size (); i--;)
+ {
+ if (Stream_event *ev =
+ unsmob<Stream_event> (heads[i]->get_property ("cause")))
+ for (LEFT_and_RIGHT (d))
+ {
+ std::pair<Note_slurs::const_iterator, Note_slurs::const_iterator> its
+ = note_slurs_[d].equal_range (ev);
+ for (Note_slurs::const_iterator it = its.first;
+ it != its.second;
+ ++it)
+ it->second->set_bound (d, heads[i]);
+ }
+ }