]> git.sesse.net Git - kdenlive/commitdiff
click on monitor ruler now seeks
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 23 Jun 2008 21:52:17 +0000 (21:52 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 23 Jun 2008 21:52:17 +0000 (21:52 +0000)
svn path=/branches/KDE4/; revision=2269

src/monitor.cpp
src/smallruler.cpp

index 6e06e26f446973f9979509ea8085812f672867b2..2ab55376a10542ae9fa2145d6df84cfc75935126 100644 (file)
@@ -110,7 +110,7 @@ Monitor::Monitor(QString name, MonitorManager *manager, QWidget *parent)
     m_contextMenu->addMenu(playMenu);
     QAction *extractFrame = m_contextMenu->addAction(KIcon("document-new"), i18n("Extract frame"));
     connect(extractFrame, SIGNAL(triggered()), this, SLOT(slotExtractCurrentFrame()));
-
+       connect(m_ruler, SIGNAL(seekRenderer(int)), this, SLOT(slotSeek(int)));
     kDebug() << "/////// BUILDING MONITOR, ID: " << ui.video_frame->winId();
 }
 
@@ -199,16 +199,16 @@ void Monitor::slotForwardOneFrame() {
 
 void Monitor::seekCursor(int pos) {
     if (!m_isActive) m_monitorManager->activateMonitor(m_name);
-    int rulerPos = (int)(pos * m_scale);
+    //int rulerPos = (int)(pos * m_scale);
     m_position = pos;
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(pos));
     //kDebug() << "seek: " << pos << ", scale: " << m_scale;
-    m_ruler->slotNewValue(rulerPos);
+    m_ruler->slotNewValue(pos); //rulerPos);
 }
 
 void Monitor::rendererStopped(int pos) {
-    int rulerPos = (int)(pos * m_scale);
-    m_ruler->slotNewValue(rulerPos);
+    //int rulerPos = (int)(pos * m_scale);
+    m_ruler->slotNewValue(pos);
     m_position = pos;
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(pos));
     m_playAction->setChecked(false);
index 687da8c593374b7d1cd17546f0ab0b37be627fec..4516d1d5b6a1c546055ac1009a646f27b81400b0 100644 (file)
@@ -61,23 +61,19 @@ void SmallRuler::setPixelPerMark(double rate) {
 
 // virtual
 void SmallRuler::mousePressEvent(QMouseEvent * event) {
-    int pos = event->x();
-    //slotNewValue( pos );
-    emit seekRenderer(pos);
-    kDebug() << pos;
+    double pos = event->x() / pixelPerMark();
+    emit seekRenderer((int) pos);
 }
 
 // virtual
 void SmallRuler::mouseMoveEvent(QMouseEvent * event) {
-    int pos = event->x();
-    //slotNewValue( pos );
-    emit seekRenderer(pos);
-    kDebug() << pos;
+    double pos = event->x() / pixelPerMark();
+    emit seekRenderer((int) pos);
 }
 
 void SmallRuler::slotNewValue(int _value) {
-    m_cursorPosition = (int)(_value / pixelPerMark());
-    KRuler::slotNewValue(_value);
+    m_cursorPosition = (int)(_value ); /// pixelPerMark());
+    KRuler::slotNewValue(_value * pixelPerMark());
 }
 
 // virtual