X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedl.C;h=ddda393dfdc00a43399e7e31bee2af253e3c53d7;hb=2cda7606e91cc23cf68a7f6376af2e8b9520b273;hp=7b2304bdc5f17e103e7a15ff648ed16986e6cdcc;hpb=8dda42be9fa556f31e585eca361122730d7c3aa2;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/edl.C b/cinelerra-5.1/cinelerra/edl.C index 7b2304bd..ddda393d 100644 --- a/cinelerra-5.1/cinelerra/edl.C +++ b/cinelerra-5.1/cinelerra/edl.C @@ -805,8 +805,6 @@ static int dead_edit_cmp(Edit**ap, Edit**bp) void EDL::delete_edits(ArrayList *edits, int collapse) { edits->sort(dead_edit_cmp); - if( session->labels_follow_edits ) - delete_edit_labels(edits, collapse); for( int i=0; isize(); ++i ) { Edit *edit = edits->get(i); Track *track = edit->track; @@ -821,7 +819,8 @@ void EDL::delete_edits(ArrayList *edits, int collapse) PluginSet *plugin_set = track->plugin_set[k]; plugin_set->clear(start, end, 1); if( !collapse ) - plugin_set->paste_silence(start, end); + plugin_set->paste_silence(start, end, 1); + plugin_set->optimize(); } } Edit *dead_edit = edit; @@ -831,10 +830,7 @@ void EDL::delete_edits(ArrayList *edits, int collapse) } delete dead_edit; } -// optimize edits only. -// full optimize deletes pluginsets, mistargeting drag and drop - for( Track *track=tracks->first; track; track=track->next ) - track->edits->optimize(); + optimize(); } class Range { @@ -913,59 +909,31 @@ void EDL::move_edit_labels(ArrayList *edits, double dist) } } +void EDL::modify_edithandles(double oldposition, double newposition, + int currentend, int handle_mode, int edit_labels, + int edit_plugins, int edit_autos, int group_id) +{ + tracks->modify_edithandles(oldposition, newposition, + currentend, handle_mode, edit_labels, + edit_plugins, edit_autos, group_id); +} -void EDL::modify_edithandles(double oldposition, - double newposition, - int currentend, - int handle_mode, - int edit_labels, - int edit_plugins, - int edit_autos) +void EDL::modify_pluginhandles(double oldposition, double newposition, + int currentend, int handle_mode, int edit_labels, + int edit_autos, Edits *trim_edits) { - tracks->modify_edithandles(oldposition, - newposition, - currentend, - handle_mode, - edit_labels, - edit_plugins, - edit_autos); - labels->modify_handles(oldposition, - newposition, - currentend, - handle_mode, - edit_labels); -} - -void EDL::modify_pluginhandles(double oldposition, - double newposition, - int currentend, - int handle_mode, - int edit_labels, - int edit_autos, - Edits *trim_edits) -{ - tracks->modify_pluginhandles(oldposition, - newposition, - currentend, - handle_mode, - edit_labels, - edit_autos, - trim_edits); + tracks->modify_pluginhandles(oldposition, newposition, + currentend, handle_mode, edit_labels, + edit_autos, trim_edits); optimize(); } -void EDL::paste_silence(double start, - double end, - int edit_labels, - int edit_plugins, - int edit_autos) +void EDL::paste_silence(double start, double end, + int edit_labels, int edit_plugins, int edit_autos) { if( edit_labels ) labels->paste_silence(start, end); - tracks->paste_silence(start, - end, - edit_plugins, - edit_autos); + tracks->paste_silence(start, end, edit_plugins, edit_autos); }