From 0f2a69408b39560011316b05b4a2d661e2e1a2a9 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Wed, 13 Dec 2023 22:31:44 +0100 Subject: [PATCH] Edit3DWidget: Avoid using sender() Amends b662c50e0a32e7444313758af935e03e20c51892 Amends 23f12f7b42cf64493ee28832d9e48eda85587f21 Change-Id: I71adb71c47e90aa257158eb7e600b99860432b3e Reviewed-by: Miikka Heikkinen --- .../components/edit3d/edit3dwidget.cpp | 29 +++++++------------ .../components/edit3d/edit3dwidget.h | 4 +-- 2 files changed, 13 insertions(+), 20 deletions(-) diff --git a/src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp b/src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp index b56986e79df..ff5852c6312 100644 --- a/src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp +++ b/src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp @@ -8,7 +8,6 @@ #include "edit3dcanvas.h" #include "edit3dtoolbarmenu.h" #include "edit3dview.h" -#include "edit3dviewconfig.h" #include "externaldependenciesinterface.h" #include "materialutils.h" #include "metainfo.h" @@ -312,8 +311,8 @@ void Edit3DWidget::createContextMenu() auto addOverrideMenuAction = [&](const QString &label, const QString &toolTip, MaterialOverrideType type) { - QAction *action = overridesSubMenu->addAction( - label, this, &Edit3DWidget::onMatOverrideAction); + QAction *action = overridesSubMenu->addAction(label); + connect(action, &QAction::triggered, this, [this, action] { onMatOverrideAction(action); }); action->setData(int(type)); action->setCheckable(true); action->setToolTip(toolTip); @@ -457,11 +456,8 @@ void Edit3DWidget::updateCreateSubMenu(const QList &entriesL m_createSubMenu->addMenu(catMenu); } - QAction *action = catMenu->addAction( - getEntryIcon(entry), - entry.name(), - this, - &Edit3DWidget::onCreateAction); + QAction *action = catMenu->addAction(getEntryIcon(entry), entry.name()); + connect(action, &QAction::triggered, this, [this, action] { onCreateAction(action); }); action->setData(entry.name()); m_nameToEntry.insert(entry.name(), entry); } @@ -469,10 +465,9 @@ void Edit3DWidget::updateCreateSubMenu(const QList &entriesL } // Action triggered from the "create" sub-menu -void Edit3DWidget::onCreateAction() +void Edit3DWidget::onCreateAction(QAction *action) { - QAction *action = qobject_cast(sender()); - if (!action || !m_view || !m_view->model() || isSceneLocked()) + if (!m_view || !m_view->model() || isSceneLocked()) return; m_view->executeInTransaction(__FUNCTION__, [&] { @@ -499,10 +494,9 @@ void Edit3DWidget::onCreateAction() }); } -void Edit3DWidget::onMatOverrideAction() +void Edit3DWidget::onMatOverrideAction(QAction *action) { - QAction *action = qobject_cast(sender()); - if (!action || !m_view || !m_view->model()) + if (!m_view || !m_view->model()) return; QVariantList list; @@ -522,17 +516,16 @@ void Edit3DWidget::onMatOverrideAction() void Edit3DWidget::onWireframeAction() { - QAction *action = qobject_cast(sender()); - if (!action || !m_view || !m_view->model()) + if (!m_view || !m_view->model()) return; QVariantList list; for (int i = 0; i < m_view->splitToolStates().size(); ++i) { Edit3DView::SplitToolState state = m_view->splitToolStates()[i]; if (i == m_view->activeSplit()) { - state.showWireframe = action->isChecked(); + state.showWireframe = m_wireFrameAction->isChecked(); m_view->setSplitToolState(i, state); - list.append(action->isChecked()); + list.append(m_wireFrameAction->isChecked()); } else { list.append(state.showWireframe); } diff --git a/src/plugins/qmldesigner/components/edit3d/edit3dwidget.h b/src/plugins/qmldesigner/components/edit3d/edit3dwidget.h index 67e23b0b98c..0c9c807473b 100644 --- a/src/plugins/qmldesigner/components/edit3d/edit3dwidget.h +++ b/src/plugins/qmldesigner/components/edit3d/edit3dwidget.h @@ -53,8 +53,8 @@ public: void updateCreateSubMenu(const QList &entriesList); private slots: - void onCreateAction(); - void onMatOverrideAction(); + void onCreateAction(QAction *action); + void onMatOverrideAction(QAction *action); void onWireframeAction(); void onResetAllOverridesAction();