QmlDesigner: Fix for macOS issue

Task-number: QDS-2708
Change-Id: If7a2f850b9ada74f590574214f7bd1384e3f67e0
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Thomas Hartmann
2020-09-01 15:02:15 +02:00
parent 893d5901a6
commit c46ca844fc

View File

@@ -207,20 +207,20 @@ void SplineEditor::contextMenuEvent(QContextMenuEvent *e)
{ {
m_curve.clearActive(); m_curve.clearActive();
QMenu menu; auto *menu = new QMenu(this);
EasingCurve mappedCurve = m_canvas.mapTo(m_curve); EasingCurve mappedCurve = m_canvas.mapTo(m_curve);
int index = mappedCurve.hit(e->pos(), 10); int index = mappedCurve.hit(e->pos(), 10);
if (index > 0 && !m_curve.isHandle(index)) { if (index > 0 && !m_curve.isHandle(index)) {
QAction *deleteAction = menu.addAction(tr("Delete Point")); QAction *deleteAction = menu->addAction(tr("Delete Point"));
connect(deleteAction, &QAction::triggered, [this, index]() { connect(deleteAction, &QAction::triggered, [this, index]() {
m_curve.deletePoint(index); m_curve.deletePoint(index);
update(); update();
emit easingCurveChanged(m_curve); emit easingCurveChanged(m_curve);
}); });
QAction *smoothAction = menu.addAction(tr("Smooth Point")); QAction *smoothAction = menu->addAction(tr("Smooth Point"));
smoothAction->setCheckable(true); smoothAction->setCheckable(true);
smoothAction->setChecked(m_curve.isSmooth(index)); smoothAction->setChecked(m_curve.isSmooth(index));
connect(smoothAction, &QAction::triggered, [this, index]() { connect(smoothAction, &QAction::triggered, [this, index]() {
@@ -229,7 +229,7 @@ void SplineEditor::contextMenuEvent(QContextMenuEvent *e)
emit easingCurveChanged(m_curve); emit easingCurveChanged(m_curve);
}); });
QAction *cornerAction = menu.addAction(tr("Corner Point")); QAction *cornerAction = menu->addAction(tr("Corner Point"));
connect(cornerAction, &QAction::triggered, [this, index]() { connect(cornerAction, &QAction::triggered, [this, index]() {
m_curve.breakTangent(index); m_curve.breakTangent(index);
update(); update();
@@ -237,7 +237,7 @@ void SplineEditor::contextMenuEvent(QContextMenuEvent *e)
}); });
} else { } else {
QAction *addAction = menu.addAction(tr("Add Point")); QAction *addAction = menu->addAction(tr("Add Point"));
connect(addAction, &QAction::triggered, [&]() { connect(addAction, &QAction::triggered, [&]() {
m_curve.addPoint(m_canvas.mapFrom(e->pos())); m_curve.addPoint(m_canvas.mapFrom(e->pos()));
m_curve.makeSmooth(m_curve.active()); m_curve.makeSmooth(m_curve.active());
@@ -246,13 +246,13 @@ void SplineEditor::contextMenuEvent(QContextMenuEvent *e)
}); });
} }
QAction *zoomAction = menu.addAction(tr("Reset Zoom")); QAction *zoomAction = menu->addAction(tr("Reset Zoom"));
connect(zoomAction, &QAction::triggered, [&]() { connect(zoomAction, &QAction::triggered, [&]() {
m_canvas.setScale(1.0); m_canvas.setScale(1.0);
update(); update();
}); });
menu.exec(e->globalPos()); menu->exec(e->globalPos());
e->accept(); e->accept();
} }