forked from qt-creator/qt-creator
QmlDesigner: Add static helper function for translations
Adds: stripedTranslatableTextFunction() convertToCorrectTranslatableFunction() Change-Id: I9f8b50924c4c99cda43d32c03080bab83cfaff44 Reviewed-by: Aleksei German <aleksei.german@qt.io>
This commit is contained in:
@@ -119,6 +119,11 @@ public:
|
|||||||
static QVariant instanceValue(const ModelNode &modelNode, const PropertyName &name);
|
static QVariant instanceValue(const ModelNode &modelNode, const PropertyName &name);
|
||||||
|
|
||||||
static QString generateTranslatableText(const QString& text);
|
static QString generateTranslatableText(const QString& text);
|
||||||
|
|
||||||
|
static QString stripedTranslatableTextFunction(const QString &text);
|
||||||
|
|
||||||
|
static QString convertToCorrectTranslatableFunction(const QString &text);
|
||||||
|
|
||||||
QString simplifiedTypeName() const;
|
QString simplifiedTypeName() const;
|
||||||
|
|
||||||
QStringList allStateNames() const;
|
QStringList allStateNames() const;
|
||||||
|
@@ -665,6 +665,21 @@ QString QmlObjectNode::generateTranslatableText(const QString &text)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString QmlObjectNode::stripedTranslatableTextFunction(const QString &text)
|
||||||
|
{
|
||||||
|
const QRegularExpression regularExpressionPattern(
|
||||||
|
QLatin1String("^qsTr(|Id|anslate)\\(\"(.*)\"\\)$"));
|
||||||
|
const QRegularExpressionMatch match = regularExpressionPattern.match(text);
|
||||||
|
if (match.hasMatch())
|
||||||
|
return match.captured(2);
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString QmlObjectNode::convertToCorrectTranslatableFunction(const QString &text)
|
||||||
|
{
|
||||||
|
return generateTranslatableText(stripedTranslatableTextFunction(text));
|
||||||
|
}
|
||||||
|
|
||||||
TypeName QmlObjectNode::instanceType(const PropertyName &name) const
|
TypeName QmlObjectNode::instanceType(const PropertyName &name) const
|
||||||
{
|
{
|
||||||
return nodeInstance().instanceType(name);
|
return nodeInstance().instanceType(name);
|
||||||
|
Reference in New Issue
Block a user