X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fauto.C;h=f4e751aa0e7a5dc8abd840aed8456bb2784ad795;hb=9bfa5ffc623a598d68264609cad82d71432981c5;hp=f1cf457dd963ace9ac0dc75726f6dc731275bb0f;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/auto.C b/cinelerra-5.1/cinelerra/auto.C index f1cf457d..f4e751aa 100644 --- a/cinelerra-5.1/cinelerra/auto.C +++ b/cinelerra-5.1/cinelerra/auto.C @@ -2,6 +2,7 @@ /* * CINELERRA * Copyright (C) 2008 Adam Williams + * Copyright (C) 2003-2016 Cinelerra CV contributors * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,6 +22,7 @@ #include "auto.h" #include "autos.h" +#include "edl.h" #include "filexml.h" Auto::Auto() @@ -29,10 +31,11 @@ Auto::Auto() this->edl = 0; this->autos = 0; position = 0; - skip = 0; - WIDTH = 10; - HEIGHT = 10; + WIDTH = xS(10); + HEIGHT = yS(10); is_default = 0; + id = EDL::next_id(); + orig_id = id; } Auto::Auto(EDL *edl, Autos *autos) @@ -41,10 +44,11 @@ Auto::Auto(EDL *edl, Autos *autos) this->edl = edl; this->autos = autos; position = 0; - skip = 0; - WIDTH = 10; - HEIGHT = 10; + WIDTH = xS(10); + HEIGHT = yS(10); is_default = 0; + id = EDL::next_id(); + orig_id = id; } Auto& Auto::operator=(Auto& that) @@ -66,6 +70,7 @@ void Auto::copy(int64_t start, int64_t end, FileXML *file, int default_only) void Auto::copy_from(Auto *that) { + this->orig_id = that->orig_id; this->position = that->position; } @@ -75,8 +80,11 @@ int Auto::interpolate_from(Auto *a1, Auto *a2, int64_t new_position, Auto *templ if( !templ ) templ = previous; if( !templ && this->autos ) templ = this->autos->default_auto; - if( templ ) + if( templ ) { + int orig_id = this->orig_id; copy_from(templ); + this->orig_id = orig_id; + } position = new_position; return 0; }