]> git.sesse.net Git - kdenlive/blobdiff - src/clipstabilize.h
SVN_SILENT made messages (.desktop file)
[kdenlive] / src / clipstabilize.h
index 5b0105de8d82745ac23a70514b543dc109dcbe40..1e80b44afca84fd25ac2e43d8357ec4064f3e86b 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(KUrl::List urls, const QString &params, Mlt::Filter* filter,QWidget * parent = 0);
     ~ClipStabilize();
 
 
 private slots:
     void slotShowStabilizeInfo();
     void slotStartStabilize();
-    void slotStabilizeFinished(int exitCode, QProcess::ExitStatus exitStatus);
-    void slotUpdateParams(int ix = -1);
+    void slotStabilizeFinished(bool success);
+       void slotRunStabilize();
+       void slotAbortStabilize();
+       void slotUpdateParams();
 
 private:
-    QProcess m_stabilizeProcess;
+       QFuture<void> m_stabilizeRun;
        QString filtername;
-       Mlt::Profile profile;
+       Mlt::Profile *m_profile;
+       Mlt::Consumer *m_consumer;
+       Mlt::Playlist *m_playlist;
     KUrl::List m_urls;
     int m_duration;
+       Mlt::Filter* m_filter;
+       QTimer *m_timer;
+       QHash<QString,QHash<QString,QString> > m_ui_params;
+       QVBoxLayout *vbox;
+       void fillParameters(QStringList);
 
 signals:
     void addClip(KUrl url);