forked from qt-creator/qt-creator
QmlDesigner: Add "on" to signal handler
Fix missing "on" for signal handlers generated via the context menu. Task-number: QDS-11626 Change-Id: Ide32bfdddf4ee16e650e0adac9fbb3fda9694f3b Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
This commit is contained in:
committed by
Henning Gründl
parent
8d5b3b4ad6
commit
afdf82a6c1
@@ -309,6 +309,13 @@ ModelNode ConnectionModel::getTargetNodeForConnection(const ModelNode &connectio
|
||||
|
||||
static QString addOnToSignalName(const QString &signal)
|
||||
{
|
||||
if (signal.isEmpty())
|
||||
return {};
|
||||
|
||||
static const QRegularExpression rx("^on[A-Z]");
|
||||
if (rx.match(signal).hasMatch())
|
||||
return signal;
|
||||
|
||||
QString ret = signal;
|
||||
ret[0] = ret.at(0).toUpper();
|
||||
ret.prepend("on");
|
||||
@@ -361,11 +368,10 @@ void ConnectionModel::addConnection(const PropertyName &signalName)
|
||||
ModelNode selectedNode = connectionView()->selectedModelNodes().constFirst();
|
||||
|
||||
PropertyName signalHandlerName = signalName;
|
||||
if (signalHandlerName.isEmpty()) {
|
||||
signalHandlerName = addOnToSignalName(QString::fromUtf8(getFirstSignalForTarget(
|
||||
selectedNode.metaInfo())))
|
||||
.toUtf8();
|
||||
}
|
||||
if (signalHandlerName.isEmpty())
|
||||
signalHandlerName = getFirstSignalForTarget(selectedNode.metaInfo());
|
||||
|
||||
signalHandlerName = addOnToSignalName(QString::fromUtf8(signalHandlerName)).toUtf8();
|
||||
|
||||
connectionView()
|
||||
->executeInTransaction("ConnectionModel::addConnection", [=, &rootModelNode]() {
|
||||
@@ -855,7 +861,7 @@ int ConnectionModelBackendDelegate::currentRow() const
|
||||
return m_currentRow;
|
||||
}
|
||||
|
||||
QString removeOnFromSignalName(const QString &signal)
|
||||
static QString removeOnFromSignalName(const QString &signal)
|
||||
{
|
||||
if (signal.isEmpty())
|
||||
return {};
|
||||
|
Reference in New Issue
Block a user