]> git.sesse.net Git - kdenlive/blobdiff - src/monitor.cpp
Improved Dvd Wizard (new chapters dialog)
[kdenlive] / src / monitor.cpp
index ba5d57ae07e4e87f9b1fa206d38b2af5cfb762d9..571fb884d75abb273fd23653c0f36e93785b6ddc 100644 (file)
@@ -421,7 +421,7 @@ void Monitor::slotExtractCurrentFrame()
     QPixmap frame = render->extractFrame(m_position);
     QString outputFile = KFileDialog::getSaveFileName(KUrl(), "image/png");
     if (!outputFile.isEmpty()) {
-        if (QFile::exists(outputFile) && KMessageBox::questionYesNo(this, i18n("File already exists.\nDo you want to overwrite it ?")) == KMessageBox::No) return;
+        if (QFile::exists(outputFile) && KMessageBox::questionYesNo(this, i18n("File already exists.\nDo you want to overwrite it?")) == KMessageBox::No) return;
         frame.save(outputFile);
     }
 }
@@ -436,6 +436,12 @@ void Monitor::activateMonitor()
     if (!m_isActive) m_monitorManager->switchMonitors(); //m_monitorManager->activateMonitor(m_name);
 }
 
+void Monitor::setTimePos(const QString &pos)
+{
+    m_timePos->setText(pos);
+    slotSeek();
+}
+
 void Monitor::slotSeek()
 {
     const int frames = m_monitorManager->timecode().getFrameCount(m_timePos->text(), m_monitorManager->timecode().fps());
@@ -537,8 +543,12 @@ void Monitor::slotRewindOneFrame(int diff)
     activateMonitor();
     render->play(0);
     if (m_position < 1) return;
-    m_position -= diff;
-    m_position = qMax(m_position, 0);
+    /*
+     * freebsd needs this hack to upgrade m_position value:
+     * http://www.kdenlive.org/mantis/view.php?id=491
+     */
+    int position = m_position - diff;
+    m_position = qMax(position, 0);
     render->seekToFrame(m_position);
     emit renderPosition(m_position);
     m_timePos->setText(m_monitorManager->timecode().getTimecodeFromFrames(m_position));