]> git.sesse.net Git - kdenlive/blobdiff - src/monitorscene.cpp
rotoscoping: fix keyframe insertion between two existing keyframes
[kdenlive] / src / monitorscene.cpp
index dfe14a99fc5e4194df5a18d3b5b760859658764d..ebf248f7c372fa210f45cdcc787d268159343eb7 100644 (file)
 
 #include "monitorscene.h"
 #include "renderer.h"
-#include "onmonitoritems/onmonitorrectitem.h"
 #include "kdenlivesettings.h"
 
 #include <QGraphicsView>
 #include <QGraphicsPixmapItem>
 #include <QGraphicsSceneMouseEvent>
 
+
 MonitorScene::MonitorScene(Render *renderer, QObject* parent) :
         QGraphicsScene(parent),
         m_renderer(renderer),
@@ -85,7 +85,7 @@ void MonitorScene::setEnabled(bool enabled)
 void MonitorScene::slotUpdateBackground()
 {
     if (m_view && m_view->isVisible()) {
-        if (m_lastUpdate.msecsTo(QTime::currentTime()) > 100) {
+        if (m_lastUpdate.msecsTo(QTime::currentTime()) > 50) {
             m_background->setPixmap(QPixmap::fromImage(m_backgroundImage));
             m_lastUpdate = QTime::currentTime();
         }
@@ -137,37 +137,24 @@ void MonitorScene::slotZoomIn(int by)
     slotZoom(qMin(300, (int)(m_zoom * 100 + by + 0.5)));
 }
 
-void MonitorScene::slotSetCursor(const QCursor &cursor)
+void MonitorScene::mousePressEvent(QGraphicsSceneMouseEvent* event)
 {
-    if (m_view)
-        m_view->setCursor(cursor);
-}
+    QGraphicsScene::mousePressEvent(event);
 
-
-void MonitorScene::mousePressEvent(QGraphicsSceneMouseEvent *event)
-{
-    emit mousePressed(event);
-
-    if (!event->isAccepted())
-        QGraphicsScene::mousePressEvent(event);
+    if (!event->isAccepted() && event->buttons() & Qt::LeftButton && event->modifiers() == Qt::ControlModifier)
+        m_view->setDragMode(QGraphicsView::ScrollHandDrag);
 }
 
 void MonitorScene::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
 {
-    emit mouseMoved(event);
-
-    if (!event->isAccepted())
-        QGraphicsScene::mouseMoveEvent(event);
+    QGraphicsScene::mouseMoveEvent(event);
 }
 
-void MonitorScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+void MonitorScene::mouseReleaseEvent(QGraphicsSceneMouseEventevent)
 {
-    emit mouseReleased(event);
-
-    if (!event->isAccepted())
-        QGraphicsScene::mouseReleaseEvent(event);
+    QGraphicsScene::mouseReleaseEvent(event);
+    m_view->setDragMode(QGraphicsView::NoDrag);
 }
-
 void MonitorScene::mouseDoubleClickEvent(QGraphicsSceneMouseEvent* event)
 {
     Q_UNUSED(event);