X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedit.C;h=40e7151a93aed99773d626f21e1ed999fe484412;hp=79e95f36ee6202c67ed2e702de69bceb685190ae;hb=0a6f0e773e20a4a8ada053c47ee9d93b1bd06e81;hpb=3d7a882d0808f456957f823454bd84ff8317a51a diff --git a/cinelerra-5.1/cinelerra/edit.C b/cinelerra-5.1/cinelerra/edit.C index 79e95f36..40e7151a 100644 --- a/cinelerra-5.1/cinelerra/edit.C +++ b/cinelerra-5.1/cinelerra/edit.C @@ -87,6 +87,7 @@ void Edit::reset() hard_left = 0; hard_right = 0; color = 0; + group_id = 0; } Indexable* Edit::get_source() @@ -143,6 +144,7 @@ int Edit::copy(int64_t start, file->tag.set_property("HARD_LEFT", hard_left); file->tag.set_property("HARD_RIGHT", hard_right); file->tag.set_property("COLOR", color); + file->tag.set_property("GROUP_ID", group_id); if(user_title[0]) file->tag.set_property("USER_TITLE", user_title); //printf("Edit::copy 5\n"); @@ -240,7 +242,23 @@ int Edit::silence() asset || nested_edl : *((SEdit *)this)->get_text()) ? 0 : 1; } +void Edit::mute() +{ + if( track->data_type != TRACK_SUBTITLE ) { + asset = 0; + nested_edl = 0; + } + else + *((SEdit *)this)->get_text() = 0; +} +void Edit::set_selected(int v) +{ + if( group_id ) + edl->tracks->set_group_selected(group_id, v); + else + is_selected = v >= 0 ? v : !is_selected ? 1 : 0; +} void Edit::copy_from(Edit *edit) { @@ -252,6 +270,7 @@ void Edit::copy_from(Edit *edit) this->hard_left = edit->hard_left; this->hard_right = edit->hard_right; this->color = edit->color; + this->group_id = edit->group_id; strcpy (this->user_title, edit->user_title); if(edit->transition) @@ -378,7 +397,8 @@ int Edit::dump(FILE *fp) asset, asset ? asset->path : ""); fflush(fp); - fprintf(fp," channel %d, color %08x\n", channel, color); + fprintf(fp," channel %d, color %08x, group_id %d, is_selected %d\n", + channel, color, group_id, is_selected); if(transition) { fprintf(fp," TRANSITION %p\n", transition); @@ -395,7 +415,8 @@ int Edit::load_properties(FileXML *file, int64_t &startproject) length = file->tag.get_property("LENGTH", (int64_t)0); hard_left = file->tag.get_property("HARD_LEFT", (int64_t)0); hard_right = file->tag.get_property("HARD_RIGHT", (int64_t)0); - color = file->tag.get_property("COLOR", (int64_t)-1); + color = file->tag.get_property("COLOR", 0); + group_id = file->tag.get_property("GROUP_ID", group_id); user_title[0] = 0; file->tag.get_property("USER_TITLE", user_title); this->startproject = startproject;