trackmenu->add_item(new DeleteFirstTrack(mwindow));
trackmenu->add_item(new DeleteLastTrack(mwindow));
trackmenu->add_item(new ConcatenateTracks(mwindow));
+ trackmenu->add_item(new SwapTracksUp(mwindow));
+ trackmenu->add_item(new SwapTracksDown(mwindow));
AppendTracks *append_tracks;
trackmenu->add_item(append_tracks = new AppendTracks(mwindow));
append_tracks->create_objects();
windowmenu->add_item(split_x = new SplitX(mwindow));
windowmenu->add_item(split_y = new SplitY(mwindow));
windowmenu->add_item(mixer_items = new MixerItems(mwindow));
+ windowmenu->add_item(align_timecodes = new AlignTimecodes(mwindow));
mixer_items->create_objects();
windowmenu->add_item(new TileWindows(mwindow,_("Tile left"),0));
windowmenu->add_item(new TileWindows(mwindow,_("Tile right"),1));
int AddVideoTrack::handle_event()
{
if( mwindow->session->current_operation == NO_OPERATION )
- mwindow->add_video_track_entry();
+ mwindow->add_video_track_entry(1, 0);
return 1;
}
}
+SwapTracksUp::SwapTracksUp(MWindow *mwindow)
+ : BC_MenuItem(_("Swap tracks up"), 0, UP)
+{
+ this->mwindow = mwindow;
+ set_shift();
+}
+
+int SwapTracksUp::handle_event()
+{
+ if( mwindow->session->current_operation == NO_OPERATION )
+ mwindow->swap_tracks_up();
+ return 1;
+}
+
+SwapTracksDown::SwapTracksDown(MWindow *mwindow)
+ : BC_MenuItem(_("Swap tracks down"), 0, DOWN)
+{
+ set_shift(); this->mwindow = mwindow;
+}
+
+int SwapTracksDown::handle_event()
+{
+ if( mwindow->session->current_operation == NO_OPERATION )
+ mwindow->swap_tracks_down();
+ return 1;
+}
+
+
ConcatenateTracks::ConcatenateTracks(MWindow *mwindow)
int AddSubttlTrack::handle_event()
{
if( mwindow->session->current_operation == NO_OPERATION )
- mwindow->add_subttl_track_entry();
+ mwindow->add_subttl_track_entry(1, 0);
return 1;
}
}
int ShowVWindow::handle_event()
{
+ mwindow->gui->unlock_window();
mwindow->show_vwindow();
+ mwindow->gui->lock_window("ShowVWindow::handle_event");
return 1;
}
}
int ShowAWindow::handle_event()
{
+ mwindow->gui->unlock_window();
mwindow->show_awindow();
+ mwindow->gui->lock_window("ShowAWindow::handle_event");
return 1;
}
}
int ShowCWindow::handle_event()
{
+ mwindow->gui->unlock_window();
mwindow->show_cwindow();
+ mwindow->gui->lock_window("ShowCWindow::handle_event");
return 1;
}
int ShowGWindow::handle_event()
{
if( mwindow->session->current_operation == NO_OPERATION ) {
+ mwindow->gui->unlock_window();
if( !mwindow->session->show_gwindow )
mwindow->show_gwindow();
else
mwindow->hide_gwindow();
+ mwindow->gui->lock_window("ShowGWindow::handle_event");
set_checked(mwindow->session->show_gwindow);
}
return 1;
}
int ShowLWindow::handle_event()
{
+ mwindow->gui->unlock_window();
mwindow->show_lwindow();
+ mwindow->gui->lock_window("ShowLWindow::handle_event");
return 1;
}
MWindow *mwindow = mixer_items->mwindow;
Mixer *mixer = mwindow->edl->mixers.get_mixer(idx);
if( !mixer ) return 0;
- ZWindow *zwindow = mwindow->get_mixer(mixer);
+ ZWindow *zwindow = mwindow->get_mixer(idx);
+ if( !zwindow )
+ zwindow = mwindow->get_mixer(mixer);
if( !zwindow->zgui ) {
zwindow->set_title(mixer->title);
zwindow->start();
}
+AlignTimecodes::AlignTimecodes(MWindow *mwindow)
+ : BC_MenuItem(_("Align Timecodes"))
+{
+ this->mwindow = mwindow;
+}
+
+int AlignTimecodes::handle_event()
+{
+ mwindow->align_timecodes();
+ return 1;
+}
+
+
LoadLayoutItem::LoadLayoutItem(LoadLayout *load_layout, const char *text, int idx, int hotkey)
: BC_MenuItem(text, "", hotkey)
{