]> git.sesse.net Git - kdenlive/blobdiff - src/monitor.cpp
start/endviewport not setup'able
[kdenlive] / src / monitor.cpp
index 7d0a5938a1337cdee71bfc0e2094769e3a0c7a54..4a432208b8c30040ea49d10527ccdb7bfc161fd6 100644 (file)
@@ -55,6 +55,10 @@ Monitor::Monitor(QString name, MonitorManager *manager, QWidget *parent)
   connect(render, SIGNAL(playListDuration(int)), this, SLOT(adjustRulerSize(int)));
   connect(render, SIGNAL(rendererPosition(int)), this, SLOT(seekCursor(int)));
   connect(render, SIGNAL(rendererStopped(int)), this, SLOT(rendererStopped(int)));
+  if (name != "clip") {
+    connect(render, SIGNAL(rendererPosition(int)), this, SIGNAL(renderPosition(int)));
+    connect(render, SIGNAL(durationChanged(int)), this, SIGNAL(durationChanged(int)));
+  }
   //render->createVideoXWindow(ui.video_frame->winId(), -1);
   int width = m_ruler->width();
   m_ruler->setLength(width);
@@ -77,6 +81,11 @@ void Monitor::wheelEvent ( QWheelEvent * event )
   else slotRewindOneFrame();
 }
 
+void Monitor::activateMonitor()
+{
+  if (!m_isActive) m_monitorManager->activateMonitor(m_name);
+}
+
 void Monitor::slotSeek(int pos)
 {
   if (!m_isActive) m_monitorManager->activateMonitor(m_name);
@@ -84,6 +93,7 @@ void Monitor::slotSeek(int pos)
   int realPos = ((double) pos) / m_scale;
   render->seekToFrame(realPos);
   m_position = realPos;
+  emit renderPosition(m_position);
   ui.monitor_time->setText(m_monitorManager->timecode().getTimecodeFromFrames(m_position));
 }