]> git.sesse.net Git - kdenlive/blobdiff - src/monitorscene.h
Fix color of warning message in render widget
[kdenlive] / src / monitorscene.h
index de9dbb0edc7b660d0ea9b7fea76eb04200af7b88..3dccf2b498b774a826f12a27b1720bc37a486e1a 100644 (file)
 #ifndef MONITORSCENE_H
 #define MONITORSCENE_H
 
+#include <QtCore>
 #include <QGraphicsScene>
-#include <QTime>
 
-class QGraphicsPixmapItem;
 class Render;
 
+enum resizeModes { NoResize, TopLeft, BottomLeft, TopRight, BottomRight, Left, Right, Top, Bottom };
+
 class MonitorScene : public QGraphicsScene
 {
     Q_OBJECT
 public:
     MonitorScene(Render *renderer, QObject* parent = 0);
     void setUp();
+    void setEnabled(bool enabled = true);
+    void resetProfile();
 
 protected:
     virtual void mousePressEvent(QGraphicsSceneMouseEvent *event);
+    virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
     virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
+    virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
 
 public slots:
     void slotUpdateBackground();
+    void slotSetDirectUpdate(bool directUpdate);
+
+    void slotZoom(int value);
+    void slotZoomFit();
+    void slotZoomOriginal();
+    void slotZoomIn();
+    void slotZoomOut();
+
+private slots:
+    void slotSetBackgroundImage(const QImage &image);
 
 private:
+    resizeModes getResizeMode(QGraphicsRectItem *item, QPoint pos);
+
     Render *m_renderer;
     QGraphicsPixmapItem *m_background;
     QGraphicsRectItem *m_frameBorder;
     QTime m_lastUpdate;
+    QGraphicsView *m_view;
+    QGraphicsItem *m_selectedItem;
+    resizeModes m_resizeMode;
+    QPointF m_clickPoint;
+    QImage m_backgroundImage;
+    bool m_enabled;
+    bool m_modified;
+    qreal m_zoom;
+
 signals:
     void actionFinished();
+    void zoomChanged(int);
+    void addKeyframe();
 };
 
 #endif