fix behaviour when opening up a gap to insert new Stripables.
Need to include all stripables, not just routes, and need to include master since editor (and maybe others) opt to use the presentation_info().order() value for it
This commit is contained in:
parent
05a069a9e9
commit
02a18400fa
@ -2938,17 +2938,18 @@ Session::ensure_route_presentation_info_gap (PresentationInfo::order_t first_new
|
||||
/* create a gap in the presentation info to accomodate @param how_many
|
||||
* new objects.
|
||||
*/
|
||||
boost::shared_ptr <RouteList> rd = routes.reader();
|
||||
StripableList sl;
|
||||
get_stripables (sl);
|
||||
|
||||
for (RouteList::iterator ri = rd->begin(); ri != rd->end(); ++ri) {
|
||||
boost::shared_ptr<Route> rt (*ri);
|
||||
for (StripableList::iterator si = sl.begin(); si != sl.end(); ++si) {
|
||||
boost::shared_ptr<Stripable> s (*si);
|
||||
|
||||
if (rt->presentation_info().special()) {
|
||||
if (s->is_monitor() || s->is_auditioner()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (rt->presentation_info().order () >= first_new_order) {
|
||||
rt->set_presentation_order (rt->presentation_info().order () + how_many);
|
||||
if (s->presentation_info().order () >= first_new_order) {
|
||||
s->set_presentation_order (s->presentation_info().order () + how_many);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user