]> git.sesse.net Git - kdenlive/blobdiff - src/monitorscene.cpp
Fix build on Mac OS X.
[kdenlive] / src / monitorscene.cpp
index 7396cf861d2b5065f248988d8f6845acd0123f34..2d913c546d852a039f9cda3c19bd7f78a212b415 100644 (file)
@@ -127,30 +127,14 @@ void MonitorScene::slotZoomOriginal()
         m_view->centerOn(m_frameBorder);
 }
 
-void MonitorScene::slotZoomOut()
+void MonitorScene::slotZoomOut(int by)
 {
-    slotZoom(qMax(0, (int)(m_zoom * 100 - 1)));
+    slotZoom(qMax(0, (int)(m_zoom * 100 - by)));
 }
 
-void MonitorScene::slotZoomIn()
+void MonitorScene::slotZoomIn(int by)
 {
-    int newzoom = (100 * m_zoom + 0.5);
-    newzoom++;
-    slotZoom(qMin(300, newzoom));
-}
-
-void MonitorScene::addItem(QGraphicsItem* item)
-{
-    QGraphicsScene::addItem(item);
-
-    /*OnMonitorRectItem *rect = qgraphicsitem_cast<OnMonitorRectItem*>(item);
-    if (rect) {
-        connect(this, SIGNAL(mousePressed(QGraphicsSceneMouseEvent*)), rect, SLOT(slotMousePressed(QGraphicsSceneMouseEvent*)));
-        connect(this, SIGNAL(mouseReleased(QGraphicsSceneMouseEvent*)), rect, SLOT(slotMouseReleased(QGraphicsSceneMouseEvent*)));
-        connect(this, SIGNAL(mouseMoved(QGraphicsSceneMouseEvent*)), rect, SLOT(slotMouseMoved(QGraphicsSceneMouseEvent*)));
-        connect(rect, SIGNAL(actionFinished()), this, SIGNAL(actionFinished()));
-        connect(rect, SIGNAL(setCursor(const QCursor &)), this, SLOT(slotSetCursor(const QCursor &)));
-    }*/
+    slotZoom(qMin(300, (int)(m_zoom * 100 + by + 0.5)));
 }
 
 void MonitorScene::slotSetCursor(const QCursor &cursor)
@@ -164,7 +148,7 @@ void MonitorScene::mousePressEvent(QGraphicsSceneMouseEvent *event)
 {
     emit mousePressed(event);
 
-    if (!event->isAccepted() && m_enabled)
+    if (!event->isAccepted())
         QGraphicsScene::mousePressEvent(event);
 }
 
@@ -172,7 +156,7 @@ void MonitorScene::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
 {
     emit mouseMoved(event);
 
-    if (!event->isAccepted() && m_enabled)
+    if (!event->isAccepted())
         QGraphicsScene::mouseMoveEvent(event);
 }
 
@@ -180,7 +164,7 @@ void MonitorScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
 {
     emit mouseReleased(event);
 
-    if (!event->isAccepted() && m_enabled)
+    if (!event->isAccepted())
         QGraphicsScene::mouseReleaseEvent(event);
 }
 
@@ -192,5 +176,18 @@ void MonitorScene::mouseDoubleClickEvent(QGraphicsSceneMouseEvent* event)
         emit addKeyframe();
 }
 
+void MonitorScene::wheelEvent(QGraphicsSceneWheelEvent* event)
+{
+    if (event->modifiers() == Qt::ControlModifier) {
+        if (event->delta() > 0)
+            slotZoomIn(5);
+        else
+            slotZoomOut(5);
+
+        event->accept();
+    } else {
+        QGraphicsScene::wheelEvent(event);
+    }
+}
 
 #include "monitorscene.moc"