#include "ui_clipstabilize_ui.h"
#include <KUrl>
-#include <mlt++/Mlt.h>
-#include <QProcess>
+#include <QFuture>
class ClipStabilize : public QDialog, public Ui::ClipStabilize_UI
{
Q_OBJECT
public:
- ClipStabilize(KUrl::List urls, const QString ¶ms, QWidget * parent = 0);
+ explicit ClipStabilize(const QStringList &urls, 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();
+ void slotValidate();
private:
- QProcess m_stabilizeProcess;
- QString filtername;
- Mlt::Profile profile;
- KUrl::List m_urls;
- int m_duration;
+ QString m_filtername;
+ QStringList m_urls;
+ QHash<QString,QHash<QString,QString> > m_ui_params;
+ QVBoxLayout *vbox;
+ void fillParameters(QStringList);
+ QStringList m_fixedParams;
signals:
- void addClip(KUrl url);
+ void addClip(const KUrl &url);
};