connect(m_ruler, SIGNAL(seekRenderer(int)), this, SLOT(slotSeek(int)));
connect(render, SIGNAL(durationChanged(int)), this, SLOT(adjustRulerSize(int)));
connect(render, SIGNAL(rendererStopped(int)), this, SLOT(rendererStopped(int)));
+ connect(render, SIGNAL(rendererPosition(int)), this, SLOT(seekCursor(int)));
if (name != "clip") {
connect(render, SIGNAL(rendererPosition(int)), this, SIGNAL(renderPosition(int)));
data.append(list.join(";").toUtf8());
mimeData->setData("kdenlive/clip", data);
drag->setMimeData(mimeData);
- QPixmap pix = m_currentClip->thumbnail();
+ /*QPixmap pix = m_currentClip->thumbnail();
drag->setPixmap(pix);
- drag->setHotSpot(QPoint(0, 50));
+ drag->setHotSpot(QPoint(0, 50));*/
drag->start(Qt::MoveAction);
//Qt::DropAction dropAction;
void Monitor::stop()
{
- disconnect(render, SIGNAL(rendererPosition(int)), this, SLOT(seekCursor(int)));
if (render) render->stop();
}
{
if (!isVisible()) return;
if (render) render->start();
- connect(render, SIGNAL(rendererPosition(int)), this, SLOT(seekCursor(int)));
}
void Monitor::refreshMonitor(bool visible)
render->setProducer(prod, render->seekFramePosition());
}
-void Monitor::slotSetClipProducer(DocClipBase *clip, QPoint zone, int position)
+void Monitor::slotSetClipProducer(DocClipBase *clip, QPoint zone, bool forceUpdate, int position)
{
if (render == NULL) return;
if (clip == NULL && m_currentClip != NULL) {
return;
}
- if (clip != m_currentClip) {
+ if (clip != m_currentClip || forceUpdate) {
m_currentClip = clip;
if (m_currentClip) activateMonitor();
updateMarkers(clip);
{
m_timePos->updateTimeCode(m_monitorManager->timecode());
if (render == NULL) return;
- render->resetProfile(profile);
+ if (!render->hasProfile(profile)) {
+ activateMonitor();
+ render->resetProfile(profile);
+ }
if (m_effectWidget)
m_effectWidget->resetProfile(render);
}
emit requestFrameForAnalysis(show);
if (show) {
m_effectWidget->getScene()->slotZoomFit();
- render->doRefresh();
}
+ render->doRefresh();
}
}