rework undo compression, add shift viewer overwr/copy/clip/splice, fix paste edl...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / mwindow.h
index 12dac24fac63ff96cb299d3c6ee8875ef0510820..8482dc06f16606211503255bed9cf785580975c7 100644 (file)
@@ -146,10 +146,6 @@ public:
        int asset_to_edl(EDL *new_edl,
                Asset *new_asset,
                RecordLabels *labels = 0);
-// Convert nested_edl to a nested EDL in new_edl
-// suitable for pasting in paste_edls
-       int edl_to_nested(EDL *new_edl,
-               EDL *nested_edl);
 
 // Entry point to insert assets and insert edls.  Called by TrackCanvas
 // and AssetPopup when assets are dragged in from AWindow.
@@ -199,13 +195,15 @@ public:
 // Find the plugin whose title matches title and return it
        static PluginServer* scan_plugindb(char *title,
                int data_type);
+       static void fix_plugin_title(char *title);
        static int plugin_exists(const char *plugin_path, ArrayList<PluginServer*> &plugins);
        static int plugin_exists(char *plugin_path);
        void dump_plugindb(FILE *fp);
        void stop_playback(int wait);
+       void stop_transport();
 
        void queue_mixers(EDL *edl, int command, int wait_tracking,
-               int use_inout, int update_refresh, int toggle_audio);
+               int use_inout, int update_refresh, int toggle_audio, int loop_play);
        void create_mixers();
        void refresh_mixers();
        void stop_mixers();
@@ -341,11 +339,11 @@ public:
        void cut();
        void blade(double position);
        void cut(double start, double end, double new_position=-1);
-// snap off edit from current position to handle/label
-       void snap_left_edit();
-       void snap_right_edit();
-       void snap_left_label();
-       void snap_right_label();
+// cut edit from current position to handle/label
+       void cut_left_edit();
+       void cut_right_edit();
+       void cut_left_label();
+       void cut_right_label();
 
 // Calculate aspect ratio from pixel counts
        static int create_aspect_ratio(float &w, float &h, int width, int height);
@@ -416,24 +414,17 @@ public:
        void move_tracks_up();
        void mute_selection();
        void new_folder(const char *new_folder);
-       void overwrite(EDL *source);
 // For clipboard commands
        void paste();
 // For splice and overwrite
-       int paste(double start,
-               double end,
-               FileXML *file,
-               int edit_labels,
-               int edit_plugins,
-               int edit_autos);
-       int paste_output(int64_t startproject,
-                               int64_t endproject,
-                               int64_t startsource_sample,
-                               int64_t endsource_sample,
-                               int64_t startsource_frame,
-                               int64_t endsource_frame,
-                               Asset *asset,
-                               RecordLabels *new_labels);
+       void overwrite(EDL *source, int all);
+       void splice(EDL *source, int all);
+       int paste(double start, double end, FileXML *file,
+               int edit_labels, int edit_plugins, int edit_autos);
+       int paste_output(int64_t startproject, int64_t endproject,
+               int64_t startsource_sample, int64_t endsource_sample,
+               int64_t startsource_frame, int64_t endsource_frame,
+               Asset *asset, RecordLabels *new_labels);
        void paste_silence();
 
 // Detach single transition
@@ -482,14 +473,13 @@ public:
        void set_inpoint(int is_mwindow);
        void set_outpoint(int is_mwindow);
        void unset_inoutpoint(int is_mwindow);
-       void splice(EDL *source);
        void toggle_loop_playback();
        void trim_selection();
 // Synchronize EDL settings with all playback engines depending on current
 // operation.  Doesn't redraw anything.
        void sync_parameters(int change_type = CHANGE_PARAMS);
        void save_clip(EDL *new_edl, const char *txt);
-       void to_clip(EDL *edl, const char *txt);
+       void to_clip(EDL *edl, const char *txt, int all);
        int toggle_label(int is_mwindow);
        void undo_entry(BC_WindowBase *calling_window_gui);
        void redo_entry(BC_WindowBase *calling_window_gui);