add edit length update when open_edl changes media length, replace stack_warn with...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / tracks.h
index f5a328ed5f8fc78295619dbb8ef17179ad455894..c44cbfef0835ed180f17f73c9c29299fb193d981 100644 (file)
@@ -73,10 +73,14 @@ public:
        void equivalent_output(Tracks *tracks, double *result);
 
        void move_tracks(Track *src, Track *dst, int n);
-       int move_track_up(Track *track);        // move recordable tracks up
-       int move_track_down(Track *track);      // move recordable tracks down
-       int move_tracks_up();                   // move recordable tracks up
-       int move_tracks_down();                 // move recordable tracks down
+       int move_track_up(Track *track);
+       int move_track_down(Track *track);
+       int move_tracks_up();
+       int move_tracks_down();
+       int swap_track_up(Track *track);
+       int swap_track_down(Track *track);
+       int swap_tracks_up();
+       int swap_tracks_down();
        void paste_audio_transition(PluginServer *server);
        void paste_video_transition(PluginServer *server, int first_track = 0);
 
@@ -108,6 +112,7 @@ public:
        void translate_camera(float dx, float dy, int all=0);
        void crop_resize(float x, float y, float z);
        void crop_shrink(float x, float y, float z);
+       double align_timecodes();
 
        int total_of(int type);
        Track* get_track_by_id(int id);
@@ -118,9 +123,11 @@ public:
 //     Track* add_audio_track(int to_end = 1);
 //     Track* add_video_track(int to_end = 1);
 // delete any track
-       int delete_track(Track* track);
+       int delete_track(Track *track, int gang=-1);
 // detach shared effects referencing module
        int detach_shared_effects(int module);
+// detach all corresponding effects in gang
+       int detach_ganged_effects(Plugin *plugin);
 
        EDL *edl;
 
@@ -242,6 +249,7 @@ public:
        void set_transition_length(double start, double end, double length);
        void set_transition_length(Transition *transition, double length);
        void paste_transitions(double start, double end, int track_type, char* title);
+       void update_idxbl_length(int id, double dt);
 
 // ================================== accounting