]> git.sesse.net Git - kdenlive/blobdiff - src/customtrackscene.h
Integrate with the required MLT hooks for getting Movit to work.
[kdenlive] / src / customtrackscene.h
index 822a0676f5ee9d177618b832fd4882a9f54b555a..386ec2f757ff0ec2c4eb6e60024db8ed131ae2f2 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA          *
  ***************************************************************************/
 
+/**
+ * @class CustomTrackScene
+ * @author Jean-Baptiste Mardelle
+ * @brief Holds all scene properties that need to be used by clip items.
+ */
 
 #ifndef CUSTOMTRACKSCENE_H
 #define CUSTOMTRACKSCENE_H
 #include "gentime.h"
 
 class KdenliveDoc;
+class MltVideoProfile;
+
+enum EditMode {
+    NormalEdit = 0,
+    OverwriteEdit = 1,
+    InsertEdit = 2
+};
+
 
-/** This class holds all properties that need to be used by clip items */
 
 class CustomTrackScene : public QGraphicsScene
 {
@@ -37,20 +49,23 @@ class CustomTrackScene : public QGraphicsScene
 
 public:
     explicit CustomTrackScene(KdenliveDoc *doc, QObject *parent = 0);
-    virtual ~ CustomTrackScene();
-    void setSnapList(QList <GenTime> snaps);
-    GenTime previousSnapPoint(GenTime pos);
-    GenTime nextSnapPoint(GenTime pos);
+    ~CustomTrackScene();
+    void setSnapList(const QList <GenTime>& snaps);
+    GenTime previousSnapPoint(const GenTime &pos) const;
+    GenTime nextSnapPoint(const GenTime &pos) const;
     double getSnapPointForPos(double pos, bool doSnap = true);
-    void setScale(double scale);
-    double scale() const;
+    void setScale(double scale, double vscale);
+    QPointF scale() const;
     int tracksCount() const;
-    QPixmap m_transitionPixmap;
+    MltVideoProfile profile() const;
+    void setEditMode(EditMode mode);
+    EditMode editMode() const;
 
 private:
     KdenliveDoc *m_document;
     QList <GenTime> m_snapPoints;
-    double m_scale;
+    QPointF m_scale;
+    EditMode m_editMode;
 };
 
 #endif