summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2022-07-19 15:00:42 +0200
committerThomas Hartmann <thomas.hartmann@qt.io>2022-07-20 11:01:32 +0000
commit56b14c9d187b8303d16ed23a687f0de53e39cdd1 (patch)
tree2b8cc106ab65b595e411ebf6013af0ca9f4c1fde /src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp
parent217c66cca80998724aca6b7ef25e502f6cf237bf (diff)
downloadqt-creator-56b14c9d187b8303d16ed23a687f0de53e39cdd1.tar.gz
QmlDesigner: Implement support for SignalDeclarationProperty
This allows implementing a signal with a signature. e.g. signal mySignal(int i) Task-number: QDS-7319 Change-Id: I23cb000a218d709218322e7f31c86076d3ad949b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Marco Bubke <marco.bubke@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp')
-rw-r--r--src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp b/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp
index 47a7af5fc3..baa6dcdcf2 100644
--- a/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp
+++ b/src/plugins/qmldesigner/designercore/filemanager/addpropertyvisitor.cpp
@@ -155,8 +155,14 @@ void AddPropertyVisitor::addInMembers(QmlJS::AST::UiObjectInitializer *initializ
Q_ASSERT(!"unknown property type");
}
- if (!m_dynamicTypeName.isEmpty())
- newPropertyTemplate.prepend(QStringLiteral("property %1 ").arg(QString::fromUtf8(m_dynamicTypeName)));
+ if (!m_dynamicTypeName.isEmpty()) {
+ if (m_dynamicTypeName == "signal") {
+ newPropertyTemplate = "signal %1%2";
+ } else {
+ newPropertyTemplate.prepend(
+ QStringLiteral("property %1 ").arg(QString::fromUtf8(m_dynamicTypeName)));
+ }
+ }
if (isOneLiner) {
if (needsPreceedingSemicolon)