diff options
author | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2020-09-24 10:56:02 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2020-09-29 09:58:04 +0000 |
commit | 36a8b8ad99e3cb7ac5b577617016824b40d37799 (patch) | |
tree | 4df951fd292ec8659fc1388d73acdf80778bcc76 /src/plugins/qmldesigner/components/componentcore | |
parent | 47955ed4fa76167f46d9eff6f15bfaaa6ebffdf6 (diff) |
QmlDesigner: Add navigator tooltip for 2D components
This enables showing preview tooltip for 2D (Item based) components.
We render the component from scratch for this purpose instead of using
existing renders done for form editor to ensure preview doesn't
include any local changes to component.
Also cache tooltips as QPixmaps in NodeInstanceView instead of QImages
to avoid unnecessary image to pixmap conversions when using cached
data.
Change-Id: I3082c5c846f605a765a81408767266d1ff7a12d7
Fixes: QDS-2762
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner/components/componentcore')
3 files changed, 10 insertions, 6 deletions
diff --git a/src/plugins/qmldesigner/components/componentcore/designeractionmanager.cpp b/src/plugins/qmldesigner/components/componentcore/designeractionmanager.cpp index a24fed1592..f7487d8a3f 100644 --- a/src/plugins/qmldesigner/components/componentcore/designeractionmanager.cpp +++ b/src/plugins/qmldesigner/components/componentcore/designeractionmanager.cpp @@ -1402,13 +1402,17 @@ void DesignerActionManager::createDefaultModelNodePreviewImageHandlers() ModelNodeOperations::previewImageDataForImageNode)); registerModelNodePreviewHandler( ModelNodePreviewImageHandler("QtQuick3D.Material", - ModelNodeOperations::previewImageDataFor3DNode)); + ModelNodeOperations::previewImageDataForGenericNode)); registerModelNodePreviewHandler( ModelNodePreviewImageHandler("QtQuick3D.Model", - ModelNodeOperations::previewImageDataFor3DNode)); + ModelNodeOperations::previewImageDataForGenericNode)); registerModelNodePreviewHandler( ModelNodePreviewImageHandler("QtQuick3D.Node", - ModelNodeOperations::previewImageDataFor3DNode, + ModelNodeOperations::previewImageDataForGenericNode, + true)); + registerModelNodePreviewHandler( + ModelNodePreviewImageHandler("QtQuick.Item", + ModelNodeOperations::previewImageDataForGenericNode, true)); // TODO - Disabled until QTBUG-86616 is fixed diff --git a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp index 04794c72f3..e77fcb3356 100644 --- a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp +++ b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp @@ -1519,10 +1519,10 @@ void removeGroup(const SelectionContext &selectionContext) }); } -QVariant previewImageDataFor3DNode(const ModelNode &modelNode) +QVariant previewImageDataForGenericNode(const ModelNode &modelNode) { if (modelNode.isValid()) - return modelNode.model()->nodeInstanceView()->previewImageDataFor3DNode(modelNode); + return modelNode.model()->nodeInstanceView()->previewImageDataForGenericNode(modelNode); return {}; } diff --git a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.h b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.h index a829545748..d22e673c80 100644 --- a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.h +++ b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.h @@ -85,7 +85,7 @@ void mergeWithTemplate(const SelectionContext &selectionContext); void removeGroup(const SelectionContext &selectionContext); // ModelNodePreviewImageOperations -QVariant previewImageDataFor3DNode(const ModelNode &modelNode); +QVariant previewImageDataForGenericNode(const ModelNode &modelNode); QVariant previewImageDataForImageNode(const ModelNode &modelNode); } // namespace ModelNodeOperationso |