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);
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;
+
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 keyframeMoved(int);
+ void addKeyframe(int);
+ void removeKeyframe(int);
};
#endif