aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/componentcore
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2020-09-24 10:56:02 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2020-09-29 09:58:04 +0000
commit36a8b8ad99e3cb7ac5b577617016824b40d37799 (patch)
tree4df951fd292ec8659fc1388d73acdf80778bcc76 /src/plugins/qmldesigner/components/componentcore
parent47955ed4fa76167f46d9eff6f15bfaaa6ebffdf6 (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')
-rw-r--r--src/plugins/qmldesigner/components/componentcore/designeractionmanager.cpp10
-rw-r--r--src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp4
-rw-r--r--src/plugins/qmldesigner/components/componentcore/modelnodeoperations.h2
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