{
int track = m_tracksCount - clip->track();
GenTime pos = GenTime(clip->startPos(), m_document->fps());
- m_document->renderer()->mltRemoveEffect(track, pos, "-1");
+ m_document->renderer()->mltRemoveEffect(track, pos, "-1", false);
for (int i = 0; i < clip->effectsCount(); i++) {
- m_document->renderer()->mltAddEffect(track, pos, clip->getEffectArgs(clip->effectAt(i)));
+ m_document->renderer()->mltAddEffect(track, pos, clip->getEffectArgs(clip->effectAt(i)), false);
}
+ m_document->renderer()->doRefresh();
}
void CustomTrackView::addEffect(int track, GenTime pos, QDomElement effect)
m_isBlocked = false;
}
-void Render::mltRemoveEffect(int track, GenTime position, QString index)
+void Render::mltRemoveEffect(int track, GenTime position, QString index, bool doRefresh)
{
Mlt::Service service(m_mltProducer->parent().get_service());
filter = clipService.filter( ct );
}
m_isBlocked = false;
- refresh();
+ if (doRefresh) refresh();
}
-void Render::mltAddEffect(int track, GenTime position, QMap <QString, QString> args)
+void Render::mltAddEffect(int track, GenTime position, QMap <QString, QString> args, bool doRefresh)
{
Mlt::Service service(m_mltProducer->parent().get_service());
Mlt::Tractor tractor(service);
clipService.attach(*filter);
delete[] filterId;
m_isBlocked = false;
- refresh();
+ if (doRefresh) refresh();
}
void mltMoveClip(int startTrack, int endTrack, GenTime pos, GenTime moveStart);
void mltMoveClip(int startTrack, int endTrack, int pos, int moveStart);
void mltRemoveClip(int track, GenTime position);
- void mltRemoveEffect(int track, GenTime position, QString index);
- void mltAddEffect(int track, GenTime position, QMap <QString, QString> args);
+ void mltRemoveEffect(int track, GenTime position, QString index, bool doRefresh = true);
+ void mltAddEffect(int track, GenTime position, QMap <QString, QString> args, bool doRefresh = true);
void mltEditEffect(int track, GenTime position, QMap <QString, QString> args);
void mltChangeTrackState(int track, bool mute, bool blind);
void mltMoveTransition(QString type, int startTrack, int trackOffset, GenTime oldIn, GenTime oldOut, GenTime newIn, GenTime newOut);