4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
39 class MainFFMpegToggle;
41 #include "editpanel.h"
43 #include "labelnavigate.inc"
44 #include "mbuttons.inc"
45 #include "mwindow.inc"
46 #include "mwindowgui.inc"
47 #include "playtransport.h"
53 class MButtons : public BC_SubWindow
56 MButtons(MWindow *mwindow, MWindowGUI *gui);
59 void create_objects();
66 PlayTransport *transport;
67 MainEditing *edit_panel;
68 MainFFMpegToggle *ffmpeg_toggle;
71 class MainTransport : public PlayTransport
74 MainTransport(MWindow *mwindow, MButtons *mbuttons, int x, int y);
75 bool use_mixers() { return true; }
80 class MainEditing : public EditPanel
83 MainEditing(MWindow *mwindow, MButtons *mbuttons, int x, int y);
84 virtual ~MainEditing() {}
86 double get_position();
87 void set_position(double position);
88 void set_click_to_play(int v);
90 void panel_stop_transport();
91 void panel_toggle_label();
92 void panel_next_label(int cut);
93 void panel_prev_label(int cut);
94 void panel_prev_edit(int cut);
95 void panel_next_edit(int cut);
96 void panel_copy_selection();
97 void panel_overwrite_selection();
98 void panel_splice_selection();
99 void panel_set_inpoint();
100 void panel_set_outpoint();
101 void panel_unset_inoutpoint();
102 void panel_to_clip();
105 void panel_fit_selection();
106 void panel_fit_autos(int all);
107 void panel_set_editing_mode(int mode);
108 void panel_set_auto_keyframes(int v);
109 void panel_set_span_keyframes(int v);
110 void panel_set_labels_follow_edits(int v);
111 void panel_set_gang_tracks(int v);