X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fabstractclipitem.h;h=33138bfdff35f279fb39ae1103e71794ab57e37e;hb=8c6936858b3946b713a580504b9a8bb9a533f0e7;hp=cb0554830aaebd36dd12f370852040ca658cdd07;hpb=385b6d7849471384c6bed1b79f6fb0585e9b7725;p=kdenlive diff --git a/src/abstractclipitem.h b/src/abstractclipitem.h index cb055483..33138bfd 100644 --- a/src/abstractclipitem.h +++ b/src/abstractclipitem.h @@ -25,28 +25,38 @@ #include "definitions.h" #include "gentime.h" +class CustomTrackScene; + class AbstractClipItem : public QObject , public QGraphicsRectItem { Q_OBJECT public: AbstractClipItem(const ItemInfo info, const QRectF& rect, double fps); void updateSelectedKeyFrame(); - void updateKeyFramePos(const QPoint pos); - void addKeyFrame(const QPoint pos); - bool hasKeyFrames(); + void updateKeyFramePos(const GenTime pos, const double value); + void addKeyFrame(const GenTime pos, const double value); + bool hasKeyFrames() const; + int selectedKeyFramePos() const; + double selectedKeyFrameValue() const; + double keyFrameFactor() const; + ItemInfo info() const; + CustomTrackScene* projectScene(); + void updateRectGeometry(); + void updateItem(); - virtual OPERATIONTYPE operationMode(QPointF pos, double scale) = 0; + virtual OPERATIONTYPE operationMode(QPointF pos) = 0; virtual GenTime startPos() const ; virtual void setTrack(int track); virtual GenTime endPos() const ; virtual int track() const ; - virtual void moveTo(int x, double scale, int offset, int newTrack); virtual GenTime cropStart() const ; - virtual void resizeStart(int posx, double scale); - virtual void resizeEnd(int posx, double scale); + virtual GenTime cropDuration() const ; + virtual void resizeStart(int posx, double speed = 1.0); + virtual void resizeEnd(int posx, double speed = 1.0, bool updateKeyFrames = true); virtual GenTime duration() const; virtual double fps() const; virtual GenTime maxDuration() const; virtual void setCropStart(GenTime pos); + virtual void setMaxDuration(const GenTime &max); protected: int m_track; @@ -56,7 +66,9 @@ protected: GenTime m_cropDuration; GenTime m_startPos; GenTime m_maxDuration; - QMap m_keyframes; + QMap m_keyframes; + double m_keyframeFactor; + double m_keyframeDefault; double m_fps; QPainterPath upperRectPart(QRectF); QPainterPath lowerRectPart(QRectF);