X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fedl.h;h=0798b408164c6889a2b626ec30b266e98d03cb10;hp=4befb9ffbb3100a0f6e7f430ee4b759df05f7408;hb=eb7b1a0bb84ed4f40b651b74ff72e63b97cce1c2;hpb=e41864cf7931bfb86f68c5d35d4578dfe161d386 diff --git a/cinelerra-5.1/cinelerra/edl.h b/cinelerra-5.1/cinelerra/edl.h index 4befb9ff..0798b408 100644 --- a/cinelerra-5.1/cinelerra/edl.h +++ b/cinelerra-5.1/cinelerra/edl.h @@ -97,8 +97,9 @@ public: double frame_align(double position, int round); // frame align if cursor alignment is enabled double align_to_frame(double position, int round); -// get position under cursor in pane +// get position under cursor in pane, and inverse double get_cursor_position(int cursor_x, int pane_no); + int64_t get_position_cursorx(double position, int pane_no); // increase track w/h to at least session w/h void retrack(); @@ -106,21 +107,29 @@ public: void rechannel(); void resample(double old_rate, double new_rate, int data_type); - int copy(double start, double end, int all, + int copy(int copy_flags, double start, double end, FileXML *file, const char *output_path, int rewind_it); - int copy(int all, FileXML *file, const char *output_path, int rewind_it); + int copy(int copy_flags, FileXML *file, const char *output_path, + int rewind_it); - int copy_clip(double start, double end, int all, + int copy_clip(int copy_flags, double start, double end, FileXML *file, const char *output_path, int rewind_it); - int copy_clip(int all, FileXML *file, const char *output_path, int rewind_it); + int copy_clip(int copy_flags, FileXML *file, const char *output_path, + int rewind_it); - int copy_nested_edl(double start, double end, int all, + int copy_nested(int copy_flags, double start, double end, FileXML *file, const char *output_path, int rewind_it); - int copy_nested_edl(int all, FileXML *file, const char *output_path, int rewind_it); + int copy_nested(int copy_flags, FileXML *file, const char *output_path, + int rewind_it); - int copy_vwindow_edl(double start, double end, int all, + int copy_vwindow(int copy_flags, double start, double end, FileXML *file, const char *output_path, int rewind_it); - int copy_vwindow_edl(int all, FileXML *file, const char *output_path, int rewind_it); + int copy_vwindow(int copy_flags, FileXML *file, const char *output_path, + int rewind_it); + + int copy_xml(int copy_flags, double start, double end, + FileXML *file, const char *closer, const char *output_path, + int rewind_it); void copy_tracks(EDL *edl); // Copies project path, folders, EDLSession, and LocalSession from edl argument. @@ -158,6 +167,7 @@ public: // return next/prev edit starting from position double next_edit(double position); double prev_edit(double position); + double skip_silence(double position); // Debug int dump(FILE *fp=stdout); static int next_id(); @@ -167,35 +177,24 @@ public: const char *get_folder_name(int no); int new_folder(const char *title, int is_clips); int delete_folder(const char *title); + void delete_edits(ArrayList*, int); + void delete_edit_labels(ArrayList *edits, int collapse); + void move_edit_labels(ArrayList *edits, double dist); - void modify_edithandles(double oldposition, - double newposition, - int currentend, - int handle_mode, - int edit_labels, - int edit_plugins, - int edit_autos); + void modify_edithandles(double oldposition, double newposition, + int currentend, int handle_mode, int edit_labels, + int edit_plugins, int edit_autos, int group_id); - void modify_pluginhandles(double oldposition, - double newposition, - int currentend, - int handle_mode, - int edit_labels, - int edit_autos, - Edits *trim_edits); - - int trim_selection(double start, - double end, - int edit_labels, - int edit_plugins, - int edit_autos); + void modify_pluginhandles(double oldposition, double newposition, + int currentend, int handle_mode, int edit_labels, + int edit_autos, Edits *trim_edits); + + int trim_selection(double start, double end, + int edit_labels, int edit_plugins, int edit_autos); // Editing functions - int copy_assets(double start, double end, - FileXML *file, int all, const char *output_path); - int copy(double start, double end, int all, - const char *closer, FileXML *file, - const char *output_path, int rewind_it); + int copy_assets(int copy_flags, double start, double end, + FileXML *file, const char *output_path); void copy_indexables(EDL *edl); EDL *new_nested(EDL *edl, const char *path); EDL *create_nested_clip(EDL *nested); @@ -223,6 +222,16 @@ public: int insert_clips(ArrayList *new_edls, int load_mode, Track *first_track = 0); // Add a copy of EDL* to the clip array. Returns the copy. EDL* add_clip(EDL *edl); + EDL *selected_edits_to_clip(int packed, + double *start_position, Track **start_track, + int edit_labels, int edit_autos, int edit_plugins); + EDL *selected_edits_to_clip(int packed, double *start_position, Track **start_track); + void selected_edits_to_clipboard(int packed); + void paste_edits(EDL *clip, Track *first_track, double position, int overwrite, + int edit_edits, int edit_labels, int edit_autos, int edit_plugins); + void paste_edits(EDL *clip, Track *first_track, double position, int overwrite); +// resequence group ids starting at next_id + int regroup(int next_id); void get_shared_plugins(Track *source, ArrayList *plugin_locations, int omit_recordable, int data_type); @@ -263,6 +272,7 @@ public: void add_proxy(int use_scaler, ArrayList *orig_assets, ArrayList *proxy_assets); Asset *get_proxy_asset(); + Track *add_new_track(int data_type); // Titles of all subfolders BinFolders folders;