From a17c231b07a8a73d11d87a1e6203b45cae0af592 Mon Sep 17 00:00:00 2001 From: Fawzi Mohamed Date: Tue, 13 May 2014 15:21:25 +0200 Subject: [PATCH] =?UTF-8?q?qmljs:=20correct=20slot=20name=20for=20properti?= =?UTF-8?q?es=20starting=20with=20=E2=80=9C=5F=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-number: QTCREATORBUG-12214 Change-Id: Ie8009846ce27d4acbc3e9ad4dd7dda73fde39413 Reviewed-by: Kai Koehne --- src/libs/qmljs/qmljsinterpreter.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/libs/qmljs/qmljsinterpreter.cpp b/src/libs/qmljs/qmljsinterpreter.cpp index 8b81a55c706..9497c62bfd9 100644 --- a/src/libs/qmljs/qmljsinterpreter.cpp +++ b/src/libs/qmljs/qmljsinterpreter.cpp @@ -197,8 +197,15 @@ CppComponentValue::~CppComponentValue() static QString generatedSlotName(const QString &base) { QString slotName = QLatin1String("on"); - slotName += base.at(0).toUpper(); - slotName += base.midRef(1); + int firstChar=0; + while (firstChar < base.size()) { + QChar c = base.at(firstChar); + slotName += c.toUpper(); + ++firstChar; + if (c != QLatin1Char('_')) + break; + } + slotName += base.midRef(firstChar); return slotName; }