]> git.sesse.net Git - kdenlive/blobdiff - src/mainwindow.cpp
Updated DVD wizard (added load/save dvd projects)
[kdenlive] / src / mainwindow.cpp
index 9dface829a0a1aec239845360164189933bfae7a..46f0fd9c81338a378f28e377d2a4aeb4f3d1c1eb 100644 (file)
@@ -842,6 +842,10 @@ void MainWindow::setupActions()
     collection->addAction("dvd_wizard", dvdWizard);
     connect(dvdWizard, SIGNAL(triggered(bool)), this, SLOT(slotDvdWizard()));
 
+    KAction *transcodeClip =  new KAction(KIcon("edit-copy"), i18n("Transcode Clip"), this);
+    collection->addAction("transcode_clip", transcodeClip);
+    connect(transcodeClip, SIGNAL(triggered(bool)), this, SLOT(slotTranscodeClip()));
+
     KAction *markIn = collection->addAction("mark_in");
     markIn->setText(i18n("Set In Point"));
     markIn->setShortcut(Qt::Key_I);
@@ -1438,7 +1442,7 @@ void MainWindow::recoverFiles(QList<KAutoSaveFile *> staleFiles)
 
 void MainWindow::parseProfiles(const QString &mltPath)
 {
-    //kdDebug()<<" + + YOUR MLT INSTALL WAS FOUND IN: "<< MLT_PREFIX <<endl;
+    // kDebug()<<" + + YOUR MLT INSTALL WAS FOUND IN: "<< MLT_PREFIX <<endl;
 
     //KdenliveSettings::setDefaulttmpfolder();
     if (!mltPath.isEmpty()) {
@@ -2635,7 +2639,7 @@ void MainWindow::slotShowTimeline(bool show)
     }
 }
 
-void MainWindow::slotMaximizeCurrent(bool show)
+void MainWindow::slotMaximizeCurrent(bool /*show*/)
 {
     //TODO: is there a way to maximize current widget?
     //if (show == true)
@@ -2670,18 +2674,27 @@ void MainWindow::loadTranscoders()
     }
 }
 
-void MainWindow::slotTranscode()
+void MainWindow::slotTranscode(QString url)
 {
-    QString url = m_projectList->currentClipUrl();
+    QString params;
+    if (url.isEmpty()) {
+        url = m_projectList->currentClipUrl();
+        QAction *action = qobject_cast<QAction *>(sender());
+        params = action->data().toString();
+
+    }
     if (url.isEmpty()) return;
-    QAction *action = qobject_cast<QAction *>(sender());
-    QString params = action->data().toString();
-    ClipTranscode *d = new ClipTranscode(m_projectList->currentClipUrl(), params);
+    ClipTranscode *d = new ClipTranscode(url, params);
     connect(d, SIGNAL(addClip(KUrl)), this, SLOT(slotAddProjectClip(KUrl)));
     d->show();
-
-
     //QProcess::startDetached("ffmpeg", parameters);
 }
 
+void MainWindow::slotTranscodeClip()
+{
+    KUrl url = KFileDialog::getOpenUrl(KUrl("kfiledialog:///projectfolder"));
+    if (url.isEmpty()) return;
+    slotTranscode(url.path());
+}
+
 #include "mainwindow.moc"