InsertTrackCommand::InsertTrackCommand(MultitrackModel& model, int trackIndex, QUndoCommand* parent) : QUndoCommand(parent) , m_model(model) , m_trackIndex(trackIndex) , m_trackType(model.trackList().size() > 0 ? model.trackList().at(trackIndex).type : VideoTrackType) { if (m_trackType == AudioTrackType) setText(QObject::tr("Insert audio track")); else if (m_trackType == VideoTrackType) setText(QObject::tr("Insert video track")); }
RemoveTrackCommand::RemoveTrackCommand(MultitrackModel& model, int trackIndex, QUndoCommand* parent) : QUndoCommand(parent) , m_model(model) , m_trackIndex(trackIndex) , m_trackType(model.trackList().at(trackIndex).type) { if (m_trackType == AudioTrackType) setText(QObject::tr("Remove audio track")); else if (m_trackType == VideoTrackType) setText(QObject::tr("Remove video track")); // Save track XML. int mlt_index = m_model.trackList().at(m_trackIndex).mlt_index; QScopedPointer<Mlt::Producer> producer(m_model.tractor()->multitrack()->track(mlt_index)); if (producer && producer->is_valid()) { m_xml = MLT.XML(producer.data()); m_trackName = QString::fromUtf8(producer->get(kTrackNameProperty)); } }