X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fkeyframehelper.h;h=701609bf35ab332353ff3bc5184ea2256eea7473;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=39ecb483da00c4e9384da66f683724c2df0963bb;hpb=2d5f99d69f361ec3ba1e4b97baed2e6b1d8ffd8e;p=kdenlive diff --git a/src/keyframehelper.h b/src/keyframehelper.h index 39ecb483..701609bf 100644 --- a/src/keyframehelper.h +++ b/src/keyframehelper.h @@ -31,17 +31,18 @@ class KeyframeHelper : public QWidget { Q_OBJECT public: - KeyframeHelper(QWidget *parent = 0); + explicit 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); + void paintEvent(QPaintEvent * /*e*/); + void wheelEvent(QWheelEvent * e); + void mousePressEvent(QMouseEvent * event); + void mouseMoveEvent(QMouseEvent * event); + void mouseReleaseEvent(QMouseEvent * event); + void mouseDoubleClickEvent(QMouseEvent * event); + void leaveEvent( QEvent * event ); private: Mlt::Geometry *m_geom; @@ -49,15 +50,24 @@ private: double m_scale; bool m_movingKeyframe; Mlt::GeometryItem m_movingItem; + QList m_extraMovingItems; QPoint m_dragStart; int m_lineHeight; - + bool m_drag; + int m_hoverKeyframe; + QColor m_selected; + QColor m_keyframe; + QColor m_keyframebg; + QList 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 positionChanged(int); + void requestSeek(int); void keyframeMoved(int); void addKeyframe(int); void removeKeyframe(int);