]> git.sesse.net Git - kdenlive/blobdiff - src/clipdurationdialog.h
Integrate with the required MLT hooks for getting Movit to work.
[kdenlive] / src / clipdurationdialog.h
index 7791f7c75a15e2159af53c9b020bd943a2f5efb0..ea09744a7a715934d218ad8f9fc28d5c8eca7873 100644 (file)
 #ifndef CLIPDURATIONDIALOG_H
 #define CLIPDURATIONDIALOG_H
 
-#include <QDialog>
 
 #include "abstractclipitem.h"
-#include "timecode.h"
+#include "timecodedisplay.h"
 #include "ui_clipdurationdialog_ui.h"
 
+/**
+ * @class ClipDurationDialog
+ * @brief A dialog for modifying an item's (clip or transition) duration. 
+ * @author Jean-Baptiste Mardelle
+ */
 
-class ClipDurationDialog : public QDialog {
+class ClipDurationDialog : public QDialog, public Ui::ClipDurationDialog_UI
+{
     Q_OBJECT
 
 public:
-    ClipDurationDialog(AbstractClipItem *clip, Timecode tc, QWidget * parent = 0);
+    explicit ClipDurationDialog(AbstractClipItem *clip, const Timecode &tc, const GenTime &min, const GenTime &max, QWidget * parent = 0);
     ~ClipDurationDialog();
     GenTime startPos() const;
     GenTime cropStart() const;
     GenTime duration() const;
 
-protected:
-    void wheelEvent(QWheelEvent * event);
 private slots:
-    void slotPosUp();
-    void slotPosDown();
-    void slotDurUp();
-    void slotDurDown();
-    void slotCropUp();
-    void slotCropDown();
+    void slotCheckDuration();
+    void slotCheckStart();
+    void slotCheckCrop();
+    void slotCheckEnd();
 
 private:
-    Ui::ClipDurationDialog_UI m_view;
     AbstractClipItem *m_clip;
-    Timecode m_tc;
-    double m_fps;
-
+    TimecodeDisplay *m_pos;
+    TimecodeDisplay *m_dur;
+    TimecodeDisplay *m_cropStart;
+    TimecodeDisplay *m_cropEnd;
+    GenTime m_min;
+    GenTime m_max;
+    GenTime m_crop;
 };