}
}
-void MonitorScene::slotSetDirectUpdate(bool directUpdate)
-{
- KdenliveSettings::setMonitorscene_directupdate(directUpdate);
-}
-
void MonitorScene::slotSetBackgroundImage(const QImage &image)
{
if (m_view && m_view->isVisible()) {
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)
{
emit mousePressed(event);
- if (!event->isAccepted() && m_enabled)
+ if (!event->isAccepted())
QGraphicsScene::mousePressEvent(event);
}
{
emit mouseMoved(event);
- if (!event->isAccepted() && m_enabled)
+ if (!event->isAccepted())
QGraphicsScene::mouseMoveEvent(event);
}
{
emit mouseReleased(event);
- if (!event->isAccepted() && m_enabled)
+ if (!event->isAccepted())
QGraphicsScene::mouseReleaseEvent(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"