aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/designercore
diff options
context:
space:
mode:
authorAleksei German <aleksei.german@qt.io>2020-06-17 18:51:56 +0200
committerAleksei German <aleksei.german@qt.io>2020-07-02 14:47:48 +0000
commite9e1e797c74637f7bbbfb4702de1b167c304d28d (patch)
treecc9cec29046e9cdf93d93c469de3e435ded14cef /src/plugins/qmldesigner/designercore
parent6e6c771fa579e7c97f6267dd66f4f9a95be9b904 (diff)
QmlDesigner: Support aliases in Connection View
- Allows user to select aliases in connections view - Seeks signals for aliases Task: QDS-2411 Change-Id: I69eb875eb99cbf8cd6a842d5f7e166d9990bb255 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner/designercore')
-rw-r--r--src/plugins/qmldesigner/designercore/include/bindingproperty.h2
-rw-r--r--src/plugins/qmldesigner/designercore/model/bindingproperty.cpp12
2 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/designercore/include/bindingproperty.h b/src/plugins/qmldesigner/designercore/include/bindingproperty.h
index cea09aeb19..c0442a678d 100644
--- a/src/plugins/qmldesigner/designercore/include/bindingproperty.h
+++ b/src/plugins/qmldesigner/designercore/include/bindingproperty.h
@@ -56,8 +56,10 @@ public:
static void deleteAllReferencesTo(const ModelNode &modelNode);
+ bool isAlias() const;
bool isAliasExport() const;
+
protected:
BindingProperty(const PropertyName &propertyName, const Internal::InternalNodePointer &internalNode, Model* model, AbstractView *view);
};
diff --git a/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp b/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp
index a6b332eb6e..f08c3962ae 100644
--- a/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp
+++ b/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp
@@ -277,6 +277,18 @@ void BindingProperty::deleteAllReferencesTo(const ModelNode &modelNode)
}
}
+bool BindingProperty::isAlias() const
+{
+ if (!isValid())
+ throw InvalidModelNodeException(__LINE__, __FUNCTION__, __FILE__);
+
+ return isDynamic()
+ && dynamicTypeName() == "alias"
+ && !expression().isNull()
+ && !expression().isEmpty()
+ && parentModelNode().view()->modelNodeForId(expression()).isValid();
+}
+
bool BindingProperty::isAliasExport() const
{
if (!isValid())