projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
upgrade libx265 to 3.1.2, tweak menupopup placement
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
tracks.C
diff --git
a/cinelerra-5.1/cinelerra/tracks.C
b/cinelerra-5.1/cinelerra/tracks.C
index 4873fac020d351c396da0fb0914c2d8be64ae38c..7feb1f99cfc1febeec05653ee8843c244ec52f1f 100644
(file)
--- a/
cinelerra-5.1/cinelerra/tracks.C
+++ b/
cinelerra-5.1/cinelerra/tracks.C
@@
-170,6
+170,8
@@
void Tracks::copy_from(Tracks *tracks)
Track *new_track = 0;
delete_all_tracks();
Track *new_track = 0;
delete_all_tracks();
+ int solo_track_id = tracks->edl->local_session->solo_track_id;
+
for(Track *current = tracks->first; current; current = NEXT)
{
switch(current->data_type)
for(Track *current = tracks->first; current; current = NEXT)
{
switch(current->data_type)
@@
-187,6
+189,9
@@
void Tracks::copy_from(Tracks *tracks)
continue;
}
new_track->copy_from(current);
continue;
}
new_track->copy_from(current);
+
+ if( current->get_id() == solo_track_id )
+ edl->local_session->solo_track_id = new_track->get_id();
}
}
}
}
@@
-625,6
+630,12
@@
Track* Tracks::number(int number)
return current;
}
return current;
}
+Track* Tracks::get_track_by_id(int id)
+{
+ Track *track = edl->tracks->first;
+ while( track && track->get_id() != id ) track = track->next;
+ return track;
+}
int Tracks::total_playable_vtracks()
{
int Tracks::total_playable_vtracks()
{