]> git.sesse.net Git - kdenlive/blobdiff - src/keyframehelper.h
const'ref
[kdenlive] / src / keyframehelper.h
index c7d4de1db91837351bf5506425366f12b7362360..a3d7b28d964b6614545056581ad1ccac47c67d91 100644 (file)
 
 #include "timecode.h"
 
-class KeyframeHelper : public QWidget {
+class KeyframeHelper : public QWidget
+{
     Q_OBJECT
-
 public:
     KeyframeHelper(QWidget *parent = 0);
+    int value() const;
+    int frameLength;
 
 protected:
     virtual void paintEvent(QPaintEvent * /*e*/);
     virtual void wheelEvent(QWheelEvent * e);
     virtual void mousePressEvent(QMouseEvent * event);
     virtual void mouseMoveEvent(QMouseEvent * event);
+    virtual void mouseReleaseEvent(QMouseEvent * event);
+    virtual void mouseDoubleClickEvent(QMouseEvent * event);
+    virtual void leaveEvent( QEvent * event );
 
 private:
     Mlt::Geometry *m_geom;
-    int m_length;
-
+    int m_position;
+    double m_scale;
+    bool m_movingKeyframe;
+    Mlt::GeometryItem m_movingItem;
+    QList <Mlt::GeometryItem *> m_extraMovingItems;
+    QPoint m_dragStart;
+    int m_lineHeight;
+    bool m_drag;
+    int m_hoverKeyframe;
+    QColor m_selected;
+    QColor m_keyframe;
+    QColor m_keyframebg;
+    QList <Mlt::Geometry *>m_extraGeometries;
+    int m_seekPosition;
+        
 public slots:
     void setKeyGeometry(Mlt::Geometry *geom, const int length);
+    void addGeometry(Mlt::Geometry *geom);
+    void setValue(const int pos);
+
+signals:
+    void requestSeek(int);
+    void keyframeMoved(int);
+    void addKeyframe(int);
+    void removeKeyframe(int);
 };
 
 #endif