switch move/swap tracks, add mv trk shortcut, update msg
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / tracks.h
index 88a96e484e39767725cc1cdbc1fe8057bb8ea9e3..cc1486d828f8dd32d852612ab4271a812d02cafb 100644 (file)
@@ -57,9 +57,9 @@ public:
 
 // Construct a list of all the recordable edits which start on position
        void clear_selected_edits();
-       void select_affected_edits(double position, Track *start_track, int sense);
        int clear_hard_edges(double start, double end);
        void get_selected_edits(ArrayList<Edit*> *drag_edits);
+       void select_edits(double start, double end);
        int next_group_id();
        int new_group(int id);
        int set_group_selected(int id, int v);
@@ -73,10 +73,15 @@ public:
 
        void equivalent_output(Tracks *tracks, double *result);
 
-       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
+       void roll_tracks(Track *src, Track *dst, int n);
+       int roll_track_up(Track *track);
+       int roll_track_down(Track *track);
+       int roll_tracks_up();
+       int roll_tracks_down();
+       int move_track_up(Track *track);
+       int move_track_down(Track *track);
+       int move_tracks_up();
+       int move_tracks_down();
        void paste_audio_transition(PluginServer *server);
        void paste_video_transition(PluginServer *server, int first_track = 0);
 
@@ -108,6 +113,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 +124,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 +250,8 @@ 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);
+       void create_keyframes(double position, int mask, int mode);
 
 // ================================== accounting
 
@@ -258,7 +268,6 @@ public:
        Track* number(int number);      // pointer to track number
        Track *get(int idx, int data_type);
 
-
 private:
 };