layout->addWidget(m_ruler);
connect(m_audioSlider, SIGNAL(valueChanged(int)), this, SLOT(slotSetVolume(int)));
- 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)));
bool Monitor::createOpenGlWidget(QWidget *parent, const QString profile)
{
render = new Render(id(), 0, profile, this);
+ kDebug()<<"+++++++++++++\nCREATED OPENGL WIDG\n++++++++++++++";
m_glWidget = new VideoGLWidget(parent);
if (m_glWidget == NULL) {
// Creation failed, we are in trouble...
QAction *go = m_markerMenu->addAction(position);
go->setData(pos);
}
- m_ruler->setMarkers(marks);
- } else m_ruler->setMarkers(QList <int>());
+ }
+ m_ruler->setMarkers(markers);
m_markerMenu->setEnabled(!m_markerMenu->isEmpty());
}
}
void Monitor::seekCursor(int pos)
{
- //slotActivateMonitor();
if (m_ruler->slotNewValue(pos)) {
checkOverlay();
m_timePos->setValue(pos);
void Monitor::start()
{
if (!isVisible() || !isActive()) return;
- if (render) render->doRefresh();// start();
+ if (render) render->startConsumer();
}
void Monitor::refreshMonitor(bool visible)
m_playAction->setIcon(m_playIcon);
render->switchPlay(false);
}
+ m_ruler->refreshRuler();
}
void Monitor::slotPlayZone()
{
if (render == NULL) return;
if (clip == NULL && m_currentClip != NULL) {
+ m_currentClip->lastSeekPosition = render->seekFramePosition();
kDebug()<<"// SETTING NULL CLIP MONITOR";
m_currentClip = NULL;
m_length = -1;
}
if (clip != m_currentClip || forceUpdate) {
+ if (m_currentClip) m_currentClip->lastSeekPosition = render->seekFramePosition();
m_currentClip = clip;
- if (m_currentClip) slotActivateMonitor();
+ if (position == -1) position = clip->lastSeekPosition;
updateMarkers(clip);
Mlt::Producer *prod = NULL;
if (clip) prod = clip->getCloneProducer();