X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedit.h;h=95dff778d00883fb3fb16d55da2c4a86fa35948f;hp=ed0e22b8b17c94a5ebff26a46305489a396c5c9a;hb=ddfda6a8cc59bda4dc734973c1c5fecaa31ea487;hpb=834732af87bfd7f1d4035109f31e48db12b415fa diff --git a/cinelerra-5.1/cinelerra/edit.h b/cinelerra-5.1/cinelerra/edit.h index ed0e22b8..95dff778 100644 --- a/cinelerra-5.1/cinelerra/edit.h +++ b/cinelerra-5.1/cinelerra/edit.h @@ -54,6 +54,7 @@ public: Indexable* get_source(); // Copy from different EDL virtual void copy_from(Edit *edit); + virtual void clone_from(Edit *edit); // Compare with edit in same EDL virtual int identical(Edit &edit); virtual Edit& operator=(Edit& edit); @@ -65,6 +66,8 @@ public: virtual void synchronize_params(Edit *edit); // Used by Edits::insert_edits to shift plugin keyframes virtual void shift_keyframes(int64_t position) {}; + virtual int is_plugin() { return 0; } + virtual int is_transition() { return 0; } // Get size of frame to draw on timeline double picon_w(); @@ -77,18 +80,22 @@ public: // Shift in time virtual void shift(int64_t difference); + + void trim(int64_t difference); int shift_start(int edit_mode, int64_t newposition, int64_t oldposition, - int edit_edits, int edit_labels, int edit_plugins, int edit_autos, - Edits *trim_edits); + int edit_labels, int edit_autos, int edit_plugins, Edits *trim_edits); int shift_end(int edit_mode, int64_t newposition, int64_t oldposition, - int edit_edits, int edit_labels, int edit_plugins, int edit_autos, - Edits *trim_edits); + int edit_labels, int edit_autos, int edit_plugins, Edits *trim_edits); + int follow_edits(int64_t start, int64_t end, int64_t cut_length, + int edits_moved, int rest_moved, int edit_labels, int edit_autos, + int edit_plugins, Edits *trim_edits); void insert_transition(char *title); void detach_transition(); // Determine if silence depending on existance of asset or plugin title virtual int silence(); void set_selected(int v); + void select_affected_edits(int v, int gang); // Media edit information // Units are native units for the track. @@ -102,13 +109,13 @@ public: int64_t length; // Channel or layer of source int channel; -// ID for resource pixmaps - int id; +// ID for resource pixmaps, plugins + int id, orig_id; // ID for selection groups int group_id; // User defined title for timeline char user_title[BCTEXTLEN]; - int is_plugin, is_selected; + int is_selected; // edge cannot be optimized int hard_left, hard_right; // title bar color @@ -118,7 +125,6 @@ public: Transition *transition; Edits *edits; - Track *track; // points to an object in edl->assets if set