X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fmwindow.h;h=12dac24fac63ff96cb299d3c6ee8875ef0510820;hb=a88121d876acc81c5a28dbd2cc71e7c6856e2ac0;hp=a7bd7e3d507f38f2df50479d3045ebee65fa6a71;hpb=9d832a1fff11b11aaa1108c460690ed05e2bdc05;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/mwindow.h b/cinelerra-5.1/cinelerra/mwindow.h index a7bd7e3d..12dac24f 100644 --- a/cinelerra-5.1/cinelerra/mwindow.h +++ b/cinelerra-5.1/cinelerra/mwindow.h @@ -95,6 +95,7 @@ #include "videowindow.inc" #include "vpatchgui.h" #include "vwindow.inc" +#include "zwindow.inc" #include "wwindow.inc" #include "wavecache.inc" @@ -201,10 +202,22 @@ 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 create_mixers(); + void refresh_mixers(); + void stop_mixers(); + void close_mixers(); + void open_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); + void tile_mixers(); int load_filenames(ArrayList *filenames, int load_mode = LOADMODE_REPLACE, @@ -237,6 +250,7 @@ public: int move_right(int64_t distance = 0); void move_up(int64_t distance = 0); void move_down(int64_t distance = 0); + int find_selection(double position, int scroll_display = 0); // seek to labels // shift_down must be passed by the caller because different windows call @@ -246,6 +260,8 @@ public: // seek to edit handles int next_edit_handle(int shift_down); int prev_edit_handle(int shift_down); +// seek to keyframes + int nearest_plugin_keyframe(int shift_down, int dir); // offset is pixels to add to track_start void trackmovement(int offset, int pane_number); // view_start is pixels @@ -316,13 +332,14 @@ public: // Clears active region in EDL. // If clear_handle, edit boundaries are cleared if the range is 0. // Called by paste, record, menueffects, render, and CWindow drop. - void clear(int clear_handle, int deglitch); + void clear(int clear_handle); void clear_labels(); int clear_labels(double start, double end); void concatenate_tracks(); 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(); @@ -336,8 +353,6 @@ public: static void create_defaults_path(char *string, const char *config_file); void delete_folder(char *folder); - void delete_inpoint(); - void delete_outpoint(); void delete_track(); void delete_track(Track *track); @@ -466,6 +481,7 @@ public: void toggle_editing_mode(); 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(); @@ -494,6 +510,7 @@ public: 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(); @@ -600,6 +617,9 @@ public: // Viewer Mutex *vwindows_lock; ArrayList vwindows; +// Mixer + Mutex *zwindows_lock; + ArrayList zwindows; // Asset manager AWindow *awindow; // Automation window