]> git.sesse.net Git - kdenlive/blobdiff - src/abstractgroupitem.h
- Limit number of points in curve widget as they are limited in frei0r
[kdenlive] / src / abstractgroupitem.h
index 0c0c3009e5319c3e068694f337462e870b0712aa..c6c5952167d6eace483128a5e7d62409af360866 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);
-    const int track() const;
+    int track() const;
+    QPainterPath clipGroupShape(QPointF) const;
+    QPainterPath transitionGroupShape(QPointF) const;
+    void setItemLocked(bool locked);
+    bool isItemLocked() 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:
-    QPainterPath groupShape(QPointF);
     void fixItemRect();
-    double m_fps;
 };
 
 #endif