diff options
author | Aleksei German <aleksei.german@qt.io> | 2020-06-17 18:51:56 +0200 |
---|---|---|
committer | Aleksei German <aleksei.german@qt.io> | 2020-07-02 14:47:48 +0000 |
commit | e9e1e797c74637f7bbbfb4702de1b167c304d28d (patch) | |
tree | cc9cec29046e9cdf93d93c469de3e435ded14cef /src/plugins/qmldesigner/designercore | |
parent | 6e6c771fa579e7c97f6267dd66f4f9a95be9b904 (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.h | 2 | ||||
-rw-r--r-- | src/plugins/qmldesigner/designercore/model/bindingproperty.cpp | 12 |
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()) |