X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedit.C;h=d9f55ba74d546a89eaf3f756e595d82224237a78;hb=6338f0b010dfd93ae6a823970d853cfdd5279500;hp=0792fa443c5a3c179b1306c6f696c2f7e736b9eb;hpb=05bf5047966713579bd8e7a692fda3b49bc43450;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/edit.C b/cinelerra-5.1/cinelerra/edit.C index 0792fa44..d9f55ba7 100644 --- a/cinelerra-5.1/cinelerra/edit.C +++ b/cinelerra-5.1/cinelerra/edit.C @@ -150,6 +150,9 @@ int Edit::copy(int64_t start, file->tag.set_title("NESTED_EDL"); file->tag.set_property("SRC", nested_edl->path); file->append_tag(); + file->tag.set_title("/NESTED_EDL"); + file->append_tag(); + file->append_newline(); } if(asset) @@ -279,7 +282,7 @@ void Edit::equivalent_output(Edit *edit, int64_t *result) !transition->identical(edit->transition)) || // Asset changed (asset && edit->asset && - !asset->equivalent(*edit->asset, 1, 1)) || + !asset->equivalent(*edit->asset, 1, 1, edl)) || // Nested EDL changed (nested_edl && edit->nested_edl && strcmp(nested_edl->path, edit->nested_edl->path)) @@ -687,11 +690,11 @@ int Edit::shift_end_out(int edit_mode, // Effects are shifted in length extension if(edit_plugins) - edits->shift_effects_recursive(oldposition /* startproject */, + edits->shift_effects_recursive(oldposition /* startproject */, cut_length, edit_autos); if(edit_autos) - edits->shift_keyframes_recursive(oldposition /* startproject */, + edits->shift_keyframes_recursive(oldposition /* startproject */, cut_length); for(Edit* current_edit = next; current_edit; current_edit = current_edit->next) @@ -710,13 +713,17 @@ int Edit::shift_end_out(int edit_mode, next->startproject += cut_length; next->startsource += cut_length; next->length -= cut_length; -//printf("Edit::shift_end_out 2 %d\n", cut_length); +//printf("Edit::shift_end_out %d cut_length=%d\n", __LINE__, cut_length); } else { +//printf("Edit::shift_end_out %d cut_length=%d next->length=%d\n", __LINE__, cut_length, next->length); cut_length = next->length; + next->startproject += next->length; + next->startsource += next->length; next->length = 0; length += cut_length; +//track->dump(); } } else @@ -795,7 +802,7 @@ int Edit::select_handle(float view_start, float zoom_units, int cursor_x, int cu pixel2 = right; pixel1 = pixel2 - 10; -// test right edit +// test right edit if(cursor_x >= pixel1 && cursor_x <= pixel2) { selection = right_unit;