]> git.sesse.net Git - kdenlive/blobdiff - src/slideshowclip.h
Const'ref
[kdenlive] / src / slideshowclip.h
index 83db3d81c3602b722423ed6f0a93d3ef18d14b2d..fe0134fb8dfb44771b75c648502fe2f61f659eb4 100644 (file)
 #include "timecode.h"
 #include "ui_slideshowclip_ui.h"
 
-#include <QFuture>
-#include <QFutureWatcher>
+#include <KIO/PreviewJob>
 
 class SlideshowClip : public QDialog
 {
     Q_OBJECT
 
 public:
-    SlideshowClip(Timecode tc, QWidget * parent = 0);
+    explicit SlideshowClip(const Timecode& tc, QWidget * parent = 0);
+    virtual ~ SlideshowClip();
     /** return selected path for slideshow in MLT format */
-    QString selectedPath() const;
+    QString selectedPath();
     QString clipName() const;
     QString clipDuration() const;
     QString lumaDuration() const;
     int imageCount() const;
     bool loop() const;
+    bool crop() const;
     bool fade() const;
     QString lumaFile() const;
     int softness() const;
+    QString animation() const;
+
+    /** @brief Get the image frame number from a file path, for example image_047.jpg will return 47. */
+    static int getFrameNumberFromPath(const KUrl &path);
+    /** @brief return the url pattern for selected slideshow. */
+    static QString selectedPath(const KUrl &url, bool isMime, QString extension, QStringList *list);
+    /** @brief Convert the selection animation style into an affine geometry string. */
+    static QString animationToGeometry(const QString &animation, int &ttl);
 
 private slots:
     void parseFolder();
     void slotEnableLuma(int state);
     void slotEnableThumbs(int state);
     void slotEnableLumaFile(int state);
-    void doGetThumbs();
     void slotUpdateDurationFormat(int ix);
     void slotGenerateThumbs();
-    void slotCheckGenerateThumbs();
+    void slotSetPixmap(const KFileItem &fileItem, const QPixmap &pix);
+    /** @brief Display correct widget depenging on user choice (mimetype or pattern method). */
+    void slotMethodChanged(bool active);
 
 private:
     Ui::SlideshowClip_UI m_view;
     int m_count;
     Timecode m_timecode;
-    QFuture<void> m_future;
-    QFutureWatcher<void> m_watcher;
+    KIO::PreviewJob *m_thumbJob;
 };