add save project feature, shortcuts update
[goodguy/history.git] / cinelerra-5.1 / cinelerra / mwindow.h
index 30ecbec58059fcd6b72db3d512610eab59d8420f..c6db8e7ebc4039067d8f77bcff510673c4188ce4 100644 (file)
@@ -75,6 +75,7 @@
 #include "pluginset.inc"
 #include "preferences.inc"
 #include "preferencesthread.inc"
+#include "proxy.inc"
 #include "record.inc"
 #include "recordlabel.inc"
 #include "render.inc"
@@ -208,7 +209,7 @@ public:
        void create_mixers();
        void refresh_mixers(int dir=1);
        void stop_mixers();
-       void close_mixers();
+       void close_mixers(int destroy=1);
        void open_mixers();
        ZWindow *get_mixer(Mixer *&mixer);
        void del_mixer(ZWindow *zwindow);
@@ -351,8 +352,6 @@ public:
 // Calculate defaults path
        static void create_defaults_path(char *string, const char *config_file);
 
-       void delete_folder(char *folder);
-
        void delete_track();
        void delete_track(Track *track);
        void delete_tracks();
@@ -414,7 +413,8 @@ public:
        void move_track_up(Track *track);
        void move_tracks_up();
        void mute_selection();
-       void new_folder(const char *new_folder);
+       void new_folder(const char *new_folder, int is_clips);
+       void delete_folder(char *folder);
 // For clipboard commands
        void paste();
 // For splice and overwrite
@@ -486,6 +486,9 @@ public:
        void redo_entry(BC_WindowBase *calling_window_gui);
        void save_undo_data();
        void load_undo_data();
+       int copy_target(const char *path, const char *target);
+       int link_target(const char *real_path, const char *link_path, int relative);
+       void save_project(const char *dir, int save_mode, int overwrite, int reload);
 
        int cut_automation();
        int copy_automation();
@@ -508,13 +511,15 @@ public:
        int modify_pluginhandles();
        void finish_modify_handles();
        void rescale_proxy(EDL *clip, int orig_scale, int new_scale);
-       void set_proxy(int use_scaler, int new_scale, int auto_scale,
-               ArrayList<Indexable*> *orig_assets,
-               ArrayList<Indexable*> *proxy_assets);
        void add_proxy(int use_scaler,
                ArrayList<Indexable*> *orig_assets,
                ArrayList<Indexable*> *proxy_assets);
-       void render_proxy(ArrayList<Indexable *> &new_idxbls);
+       int render_proxy(ArrayList<Indexable *> &new_idxbls);
+       void beep(double freq, double secs, double gain);
+       int enable_proxy();
+       int disable_proxy();
+       int to_proxy(Asset *asset, int new_scale, int new_use_scaler);
+       ProxyBeep *proxy_beep;
 
        void dump_plugins(FILE *fp=stdout);
        void dump_edl(FILE *fp=stdout);
@@ -680,16 +685,16 @@ public:
        static void init_plugin_index(MWindow *mwindow, Preferences *preferences,
                FILE *fp, const char *plugin_dir);
        static int init_ladspa_index(MWindow *mwindow, Preferences *preferences,
-               const char *index_path, const char *plugin_dir);
+               FILE *fp, const char *plugin_dir);
        static void scan_plugin_index(MWindow *mwindow, Preferences *preferences,
                FILE *fp, const char *plug_dir, const char *plug_path, int &idx);
        static void init_ffmpeg();
        static void init_ffmpeg_index(MWindow *mwindow, Preferences *preferences, FILE *fp);
-       static int load_plugin_index(MWindow *mwindow, const char *index_path,
-               const char *plugin_dir);
+       static int load_plugin_index(MWindow *mwindow, FILE *fp, const char *plugin_dir);
        static PluginServer *new_ffmpeg_server(MWindow *mwindow, const char *name);
        static int init_lv2_index(MWindow *mwindow, Preferences *preferences, FILE *fp);
        static PluginServer *new_lv2_server(MWindow *mwindow, const char *name);
+       static void remove_plugin_index();
 
        void init_preferences();
        void init_signals();