}
}
-void CustomTrackView::slotDeleteTrack(int ix)
-{
- TrackDialog d(m_document, parentWidget());
- d.label->setText(i18n("Delete track"));
- d.before_select->setHidden(true);
- d.track_nb->setMaximum(m_document->tracksCount() - 1);
- d.track_nb->setValue(ix);
- d.slotUpdateName(ix);
- d.setWindowTitle(i18n("Delete Track"));
- d.video_track->setHidden(true);
- d.audio_track->setHidden(true);
- if (d.exec() == QDialog::Accepted) {
- ix = d.track_nb->value();
- TrackInfo info = m_document->trackInfoAt(m_document->tracksCount() - ix - 1);
- deleteTimelineTrack(ix, info);
- setDocumentModified();
- /*AddTrackCommand* command = new AddTrackCommand(this, ix, info, false);
- m_commandStack->push(command);*/
+void CustomTrackView::slotDeleteTrack(int ix, bool dialog)
+{
+ if (m_document->tracksCount() < 2) return;
+ if (dialog) {
+ TrackDialog d(m_document, parentWidget());
+ d.label->setText(i18n("Delete track"));
+ d.before_select->setHidden(true);
+ d.track_nb->setMaximum(m_document->tracksCount() - 1);
+ d.track_nb->setValue(ix);
+ d.slotUpdateName(ix);
+ d.setWindowTitle(i18n("Delete Track"));
+ d.video_track->setHidden(true);
+ d.audio_track->setHidden(true);
+ if (d.exec() == QDialog::Accepted)
+ ix = d.track_nb->value();
+ else
+ return;
}
+ TrackInfo info = m_document->trackInfoAt(m_document->tracksCount() - ix - 1);
+ deleteTimelineTrack(ix, info);
+ setDocumentModified();
}
void CustomTrackView::slotConfigTracks(int ix)
void slotUpdateAllThumbs();
void slotCheckPositionScrolling();
void slotInsertTrack(int ix);
- void slotDeleteTrack(int ix);
+
+ /** @brief Shows a dialog for selecting a track to delete.
+ * @param ix Number of the track, which should be pre-selected in the dialog
+ * @param dialog Show dialog or directly delete track @param ix? */
+ void slotDeleteTrack(int ix, bool dialog = true);
/** @brief Shows the configure tracks dialog. */
void slotConfigTracks(int ix);
void clipNameChanged(const QString id, const QString name);