]> git.sesse.net Git - kdenlive/blobdiff - src/abstractgroupitem.h
Fetch timeline thumbnails in a different thread to improve workflow
[kdenlive] / src / abstractgroupitem.h
index ec4268cf264a57f428cfe4fd00f728ba6b988dc6..ba0b213be6d4addb467d3e906a24e107ca20f32a 100644 (file)
 #ifndef ABSTRACTGROUPITEM
 #define ABSTRACTGROUPITEM
 
-#include <QGraphicsItemGroup>
 #include "definitions.h"
 #include "gentime.h"
 
+#include <QGraphicsItemGroup>
+#include <QGraphicsSceneMouseEvent>
+
 class CustomTrackScene;
+class QGraphicsSceneMouseEvent;
 
-class AbstractGroupItem : public QObject , public QGraphicsItemGroup {
+class AbstractGroupItem : public QObject , public QGraphicsItemGroup
+{
     Q_OBJECT
 public:
     AbstractGroupItem(double fps);
     virtual int type() const;
     CustomTrackScene* projectScene();
     void addItem(QGraphicsItem * item);
+    int track() const;
+    QPainterPath clipGroupShape(QPointF) const;
+    QPainterPath transitionGroupShape(QPointF) const;
+//    ItemInfo info() const;
 
 protected:
     virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value);
     virtual void paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *);
+    virtual void dragEnterEvent(QGraphicsSceneDragDropEvent *event);
+    virtual void dragLeaveEvent(QGraphicsSceneDragDropEvent *event);
+    virtual void dropEvent(QGraphicsSceneDragDropEvent *event);
+    virtual void mousePressEvent(QGraphicsSceneMouseEvent * event);
 
 private:
-    QPolygonF groupShape(QPointF);
     void fixItemRect();
-    double m_fps;
 };
 
 #endif