QmlDesigner: Add support any pickable node with 3d view context menu

Previously only 3D models could be picked for context menu target.
Now any node that can be resolved from a point at 3D edit view can be
picked.

Fixes: QDS-7518
Change-Id: Id4a30d96744c42907d45688493776bdff35b934e
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
Miikka Heikkinen
2022-09-06 15:10:53 +03:00
parent a9576256b8
commit 3485d97755
16 changed files with 105 additions and 38 deletions

View File

@@ -300,8 +300,10 @@ void Edit3DWidget::showContextMenu(const QPoint &pos, const ModelNode &modelNode
{
m_contextMenuTarget = modelNode;
m_editMaterialAction->setEnabled(modelNode.isValid());
m_deleteAction->setEnabled(modelNode.isValid());
const bool isValid = modelNode.isValid();
const bool isModel = isValid && modelNode.isSubclassOf("QtQuick3D.Model");
m_editMaterialAction->setEnabled(isModel);
m_deleteAction->setEnabled(isValid && !modelNode.isRootNode());
m_contextMenu->popup(mapToGlobal(pos));
}