59 QDomDocument doc( QStringLiteral(
"TS" ) );
61 QDomElement tsElement = doc.createElement( QStringLiteral(
"TS" ) );
62 tsElement.setAttribute( QStringLiteral(
"sourcelanguage" ), locale );
63 doc.appendChild( tsElement );
65 for (
const TranslatableObject &translatableObject : mTranslatableObjects )
67 QDomElement contextElement = doc.createElement( QStringLiteral(
"context" ) );
68 tsElement.appendChild( contextElement );
70 QDomElement nameElement = doc.createElement( QStringLiteral(
"name" ) );
71 const QDomText nameText = doc.createTextNode( translatableObject.context );
72 nameElement.appendChild( nameText );
73 contextElement.appendChild( nameElement );
75 QDomElement messageElement = doc.createElement( QStringLiteral(
"message" ) );
76 contextElement.appendChild( messageElement );
78 QDomElement sourceElement = doc.createElement( QStringLiteral(
"source" ) );
79 const QDomText sourceText = doc.createTextNode( translatableObject.source );
80 sourceElement.appendChild( sourceText );
81 messageElement.appendChild( sourceElement );
83 QDomElement translationElement = doc.createElement( QStringLiteral(
"translation" ) );
84 translationElement.setAttribute( QStringLiteral(
"type" ), QStringLiteral(
"unfinished" ) );
85 messageElement.appendChild( translationElement );
90 if ( !tsFile.open( QIODevice::WriteOnly ) )
95 QTextStream stream( &tsFile );
96#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
97 stream.setCodec(
"UTF-8" );
99 stream << doc.toString();
void registerTranslation(const QString &context, const QString &source)
Registers the source to be translated.
QgsProject * project() const
Returns the project.
void setFileName(const QString &fileName)
Sets the fileName of the TS file.
void writeTsFile(const QString &locale) const
Writes the Ts-file.
void setProject(QgsProject *project)
Sets the project being translated.