From 1996c4c8c8f52dcd365d46839404f406baf4f25b Mon Sep 17 00:00:00 2001 From: Henning Gruendl Date: Tue, 7 Dec 2021 10:40:09 +0100 Subject: [PATCH] QmlDesigner: Fix connection editor functions Fix the connection editor not picking up all the slots of a model node due to setting a wrong expression in the QmlJS::Document. Change-Id: I2d28e1e779c5293991397ebc2a061c35234d9cae Reviewed-by: Reviewed-by: Thomas Hartmann --- .../qmldesigner/components/bindingeditor/actioneditor.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/components/bindingeditor/actioneditor.cpp b/src/plugins/qmldesigner/components/bindingeditor/actioneditor.cpp index 1f2a8224d33..c88d072618a 100644 --- a/src/plugins/qmldesigner/components/bindingeditor/actioneditor.cpp +++ b/src/plugins/qmldesigner/components/bindingeditor/actioneditor.cpp @@ -226,9 +226,12 @@ void ActionEditor::prepareConnections() } for (const auto &slotName : modelNode.metaInfo().slotNames()) { + if (slotName.startsWith("q_") || slotName.startsWith("_q_")) + continue; + QmlJS::Document::MutablePtr newDoc = QmlJS::Document::create( QLatin1String(""), QmlJS::Dialect::JavaScript); - newDoc->setSource(QLatin1String(slotName)); + newDoc->setSource(modelNode.id() + "." + QLatin1String(slotName)); newDoc->parseExpression(); QmlJS::AST::ExpressionNode *expression = newDoc->expression();