X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fmwindow.h;h=f15081b63b6adc296bbda43bd641198fed6420a8;hb=ad2996ab94e6e12c9c14a5b9f14792f76111dff7;hp=ede2ffe6afe616a712f2b64488eb67115a48fbb0;hpb=29cc4023b50d6f7f9ab518978d8c9e839832b900;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/mwindow.h b/cinelerra-5.1/cinelerra/mwindow.h index ede2ffe6..f15081b6 100644 --- a/cinelerra-5.1/cinelerra/mwindow.h +++ b/cinelerra-5.1/cinelerra/mwindow.h @@ -24,10 +24,12 @@ #include #include +#include "apatchgui.h" #include "arraylist.h" #include "asset.inc" #include "assets.inc" #include "audiodevice.inc" +#include "autos.inc" #include "awindow.inc" #include "batchrender.inc" #include "bcwindowbase.inc" @@ -91,7 +93,9 @@ #include "transition.inc" #include "transportque.inc" #include "videowindow.inc" +#include "vpatchgui.h" #include "vwindow.inc" +#include "zwindow.inc" #include "wwindow.inc" #include "wavecache.inc" @@ -118,7 +122,7 @@ public: int run_script(FileXML *script); int new_project(); int delete_project(int flash = 1); - void quit(int unlock); + void quit(); int restart() { return restart_status; } int load_defaults(); @@ -134,6 +138,7 @@ public: void show_lwindow(); void show_cwindow(); void show_gwindow(); + void hide_gwindow(); int tile_windows(int window_config); char *get_cwindow_display(); // void set_titles(int value); @@ -197,10 +202,17 @@ public: static int plugin_exists(const char *plugin_path, ArrayList &plugins); static int plugin_exists(char *plugin_path); void dump_plugindb(FILE *fp); - void stop_playback(int wait=0); - - - + void stop_playback(int wait); + + void queue_mixers(EDL *edl, int command, int wait_tracking, + int use_inout, int update_refresh, int toggle_audio); + void stop_mixers(); + ZWindow *get_mixer(Mixer *&mixer); + void del_mixer(ZWindow *zwindow); + int mixer_track_active(Track *track); + void update_mixer_tracks(); + void start_mixer(); + int select_zwindow(ZWindow *zwindow); int load_filenames(ArrayList *filenames, int load_mode = LOADMODE_REPLACE, @@ -319,6 +331,13 @@ public: void copy(); int copy(double start, double end); 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(); // Calculate aspect ratio from pixel counts static int create_aspect_ratio(float &w, float &h, int width, int height); @@ -448,6 +467,7 @@ public: void set_automation_mode(int mode); void set_keyframe_type(int mode); void set_auto_keyframes(int value, int lock_mwindow, int lock_cwindow); + void set_auto_visibility(Autos *autos, int value); void set_labels_follow_edits(int value); // Update the editing mode @@ -461,7 +481,8 @@ public: // Synchronize EDL settings with all playback engines depending on current // operation. Doesn't redraw anything. void sync_parameters(int change_type = CHANGE_PARAMS); - void to_clip(); + void save_clip(EDL *new_edl, const char *txt); + void to_clip(EDL *edl, const char *txt); int toggle_label(int is_mwindow); void undo_entry(BC_WindowBase *calling_window_gui); void redo_entry(BC_WindowBase *calling_window_gui); @@ -479,9 +500,21 @@ public: int paste_default_keyframe(); int clear_default_keyframe(); + FloatAuto* get_float_auto(PatchGUI *patch,int idx); + IntAuto* get_int_auto(PatchGUI *patch,int idx); + PanAuto* get_pan_auto(PatchGUI *patch); + PatchGUI *get_patchgui(Track *track); + int modify_edithandles(); int modify_pluginhandles(); void finish_modify_handles(); + void set_proxy(int use_scaler, int new_scale, int auto_scale, + ArrayList *orig_assets, + ArrayList *proxy_assets); + void add_proxy(int use_scaler, + ArrayList *orig_assets, + ArrayList *proxy_assets); + void render_proxy(ArrayList &new_idxbls); void dump_plugins(FILE *fp=stdout); void dump_edl(FILE *fp=stdout); @@ -519,6 +552,8 @@ public: MainIndexes *mainindexes; MainProgress *mainprogress; BRender *brender; + char cin_lang[4]; + int brender_active; const char *default_standard; static Commercials *commercials; int commercial_active; @@ -575,6 +610,9 @@ public: // Viewer Mutex *vwindows_lock; ArrayList vwindows; +// Mixer + Mutex *zwindows_lock; + ArrayList zwindows; // Asset manager AWindow *awindow; // Automation window @@ -587,6 +625,7 @@ public: int wait_warning(); // Levels LevelWindow *lwindow; + Mutex *run_lock; // Lock during creation and destruction of GUI Mutex *plugin_gui_lock; Mutex *dead_plugin_lock; @@ -611,7 +650,7 @@ public: // This one happens asynchronously of the others. Used by playback to // see what frame is background rendered. int brender_available(int position); - void set_brender_start(); + void set_brender_active(int v, int update=1); int put_commercial(); void activate_commercial() { commercial_active = 1; } void commit_commercial(); @@ -622,6 +661,7 @@ public: void init_error(); void finit_error(); static void init_defaults(BC_Hash* &defaults, char *config_path); + void check_language(); const char *default_std(); void fill_preset_defaults(const char *preset, EDLSession *session); const char *get_preset_name(int index); @@ -633,6 +673,7 @@ public: static void get_plugin_path(char *path, const char *plug_dir, const char *fs_path); static int init_plugins(MWindow *mwindow, Preferences *preferences); static int init_ladspa_plugins(MWindow *mwindow, Preferences *preferences); + static void init_plugin_tips(ArrayList &plugins, const char *lang); static int check_plugin_index(ArrayList &plugins, const char *plug_dir, const char *plug_path); static void init_plugin_index(MWindow *mwindow, Preferences *preferences, @@ -662,7 +703,7 @@ public: void init_commercials(); static void add_plugins(ArrayList &plugins); static void delete_plugins(); -// +// void clean_indexes(); // TimeBomb timebomb; SigHandler *sighandler;