gui->draw_overlays(1);
}
-void MWindow::select_edits()
+void MWindow::select_edits(int v)
{
double start = edl->local_session->get_selectionstart();
double end = edl->local_session->get_selectionend();
- edl->tracks->select_edits(start, end);
+ edl->tracks->select_edits(start, end, v);
gui->draw_overlays(1);
}
ArrayList<SharedLocation> shared_locations;
PluginSet *pluginset = session->pluginset_highlighted;
- int gang = edl->session->gang_tracks != GANG_NONE ? 1 : 0;
+ int gang = edl->local_session->gang_tracks != GANG_NONE ? 1 : 0;
int data_type = dest_track->data_type;
int first_track = 1;
cwindow->update(1, 0, 0, 0, 1);
}
+int MWindow::modify_transnhandles()
+{
+ gui->reset_default_message();
+ gui->default_message();
+ Transition *transition = session->drag_transition;
+ if( !transition ) return 1;
+ int64_t length = transition->length;
+ Track *track = transition->edit->track;
+ int64_t start_pos = track->to_units(session->drag_start, 0);
+ int64_t end_pos = track->to_units(session->drag_position, 0);
+ length += end_pos - start_pos;
+ if( length < 0 ) length = 0;
+ if( length == transition->length ) return 0;
+
+ undo_before();
+ transition->length = length;
+ undo_after(_("trans handle"), LOAD_EDITS);
+
+ save_backup();
+ restart_brender();
+ sync_parameters(CHANGE_EDL);
+ update_plugin_guis();
+ gui->update(1, FORCE_REDRAW, 1, 1, 1, 1, 0);
+ cwindow->update(1, 0, 0, 0, 1);
+
+ return 0;
+}
+
void MWindow::match_output_size(Track *track)
{
undo_before();
sync_parameters(CHANGE_EDL);
}
-void MWindow::move_track_down(Track *track)
+void MWindow::roll_track_down(Track *track)
{
undo_before();
- edl->tracks->move_track_down(track);
+ edl->tracks->roll_track_down(track);
save_backup();
undo_after(_("move track down"), LOAD_ALL);
save_backup();
}
-void MWindow::move_tracks_down()
+void MWindow::roll_tracks_down()
{
undo_before();
- edl->tracks->move_tracks_down();
+ edl->tracks->roll_tracks_down();
save_backup();
undo_after(_("move tracks down"), LOAD_ALL);
save_backup();
}
-void MWindow::move_track_up(Track *track)
+void MWindow::roll_track_up(Track *track)
{
undo_before();
- edl->tracks->move_track_up(track);
+ edl->tracks->roll_track_up(track);
save_backup();
undo_after(_("move track up"), LOAD_ALL);
restart_brender();
save_backup();
}
-void MWindow::move_tracks_up()
+void MWindow::roll_tracks_up()
{
undo_before();
- edl->tracks->move_tracks_up();
+ edl->tracks->roll_tracks_up();
save_backup();
undo_after(_("move tracks up"), LOAD_ALL);
restart_brender();
}
-void MWindow::swap_track_down(Track *track)
+void MWindow::move_track_down(Track *track)
{
undo_before();
- edl->tracks->swap_track_down(track);
+ edl->tracks->move_track_down(track);
save_backup();
undo_after(_("swap track down"), LOAD_ALL);
save_backup();
}
-void MWindow::swap_tracks_down()
+void MWindow::move_tracks_down()
{
undo_before();
- edl->tracks->swap_tracks_down();
+ edl->tracks->move_tracks_down();
save_backup();
undo_after(_("swap tracks down"), LOAD_ALL);
save_backup();
}
-void MWindow::swap_track_up(Track *track)
+void MWindow::move_track_up(Track *track)
{
undo_before();
- edl->tracks->swap_track_up(track);
+ edl->tracks->move_track_up(track);
save_backup();
undo_after(_("swap track up"), LOAD_ALL);
restart_brender();
save_backup();
}
-void MWindow::swap_tracks_up()
+void MWindow::move_tracks_up()
{
undo_before();
- edl->tracks->swap_tracks_up();
+ edl->tracks->move_tracks_up();
save_backup();
undo_after(_("swap tracks up"), LOAD_ALL);
restart_brender();
// Delete current project
if( load_mode == LOADMODE_REPLACE ||
load_mode == LOADMODE_REPLACE_CONCATENATE ) {
- reset_caches();
+ reset_caches(1);
edl->save_defaults(defaults);
hide_plugins();
edl->Garbage::remove_user();
for( ; track && !track->master; track=track->next )
mixer_last = track;
Track *next_track = track;
+ if( !master_track->armed ) {
+ master_track = next_track;
+ continue;
+ }
Mixer *master_mixer = 0;
for( int i=0, n=edl->mixers.size(); i<n; ++i ) {
if( master_track->index_in(edl->mixers[i]) >= 0 ) {