]> git.sesse.net Git - kdenlive/blobdiff - src/clipstabilize.h
Merge branch 'master' into feature/pkey
[kdenlive] / src / clipstabilize.h
index 5b0105de8d82745ac23a70514b543dc109dcbe40..269c0c4be39ca4fb40f3553ed510fdd0eef7db2d 100644 (file)
 #include "ui_clipstabilize_ui.h"
 
 #include <KUrl>
-#include <mlt++/Mlt.h>
 #include <QProcess>
+#include <QFuture>
+
+class QTimer;
+namespace Mlt{
+       class Profile;
+       class Playlist;
+       class Consumer;
+       class Filter;
+};
 
 class ClipStabilize : public QDialog, public Ui::ClipStabilize_UI
 {
     Q_OBJECT
 
 public:
-    ClipStabilize(KUrl::List urls, const QString &params, QWidget * parent = 0);
+    ClipStabilize(const QString &dest, int count, const QString &filterName,QWidget * parent = 0);
     ~ClipStabilize();
+    /** @brief Should the generated clip be added to current project. */
+    bool autoAddClip() const;
+    /** @brief Return the filter parameters. */
+    QStringList params();
+    /** @brief Return the destination file or folder. */
+    QString destination() const;
+    /** @brief Return the job description. */
+    QString desc() const;
 
 
 private slots:
-    void slotShowStabilizeInfo();
     void slotStartStabilize();
-    void slotStabilizeFinished(int exitCode, QProcess::ExitStatus exitStatus);
-    void slotUpdateParams(int ix = -1);
+    void slotUpdateParams();
 
 private:
-    QProcess m_stabilizeProcess;
-       QString filtername;
-       Mlt::Profile profile;
-    KUrl::List m_urls;
-    int m_duration;
+    QString m_filtername;
+    int m_count;
+    QHash<QString,QHash<QString,QString> > m_ui_params;
+    QVBoxLayout *vbox;
+    void fillParameters(QStringList);
 
 signals:
     void addClip(KUrl url);