Commit 04509bcf authored by Friedemann Kleint's avatar Friedemann Kleint
Browse files

Custom wizards: Lower case all tags, prepare translations.

Prepare translations of wizards shipped by Nokia to be searched
in Qt Creator's qm-files.
parent 609163c1
......@@ -39,11 +39,8 @@ leave room for the Qt 4 target page.
id="A.HelloWorld" category="B.CustomProjects">
<icon>console.png</icon>
<description>Creates a hello-world-project with custom message.</description>
<description xml:lang="de">Erzeugt ein Hello-Welt-Projekt mit einer Nachricht.</description>
<displayName>Hello World</displayName>;
<displayName xml:lang="de">Hallo Welt</displayName>;
<displayCategory>Custom Projects</displayCategory>
<displayCategory xml:lang="de">Benutzerdefinierte Projekte</displayCategory>
<displayname>Hello World</displayname>;
<displaycategory>Custom Projects</displaycategory>
<files>
<file source="main.cpp"/>
<file source="project.pro" target="%ProjectName%.pro"/>
......
......@@ -33,10 +33,10 @@ Custom class wizard example configuration file. -->
<wizard version="1" kind="class" id="A.ListModel" category="B.CustomClasses">
<description>Creates a QAbstractListModel implementation.</description>
<description xml:lang="de">Erzeugt eine Implementierung von QAbstractListModel.</description>
<displayName>QAbstractListModel implementation</displayName>;
<displayName xml:lang="de">Implementierung von QAbstractListModel</displayName>;
<displayCategory>Custom Classes</displayCategory>
<displayCategory xml:lang="de">Benutzerdefinierte Klassen</displayCategory>
<displayname>QAbstractListModel implementation</displayname>;
<displayname xml:lang="de">Implementierung von QAbstractListModel</displayname>;
<displaycategory>Custom Classes</displaycategory>
<displaycategory xml:lang="de">Benutzerdefinierte Klassen</displaycategory>
<files>
<file source="listmodel.cpp" target="%ClassName:l%.%CppSourceSuffix%"/>
<file source="listmodel.h" target="%ClassName:l%.%CppHeaderSuffix%"/>
......
......@@ -38,8 +38,8 @@ leave room for the Qt 4 target page.
class="qt4project" firstpage="10"
id="QmlRuntimePlugin" category="F.Projects">
<description>Creates a plug-in for the QML runtime.</description>
<displayName>QML Runtime Plug-in</displayName>
<displayCategory>QML Runtime Plug-in</displayCategory>
<displayname>QML Runtime Plug-in</displayname>
<displaycategory>QML Runtime Plug-in</displaycategory>
<files>
<file source="qmldir" target="%ProjectName%/qmldir"/>
<file source="plugin.h" target="%ProjectName%.h"/>
......
......@@ -34,6 +34,7 @@
#include <cpptools/cpptoolsconstants.h>
#include <QtCore/QDebug>
#include <QtCore/QCoreApplication>
#include <QtCore/QLocale>
#include <QtCore/QFile>
#include <QtCore/QFileInfo>
......@@ -46,14 +47,14 @@ enum { debug = 0 };
static const char customWizardElementC[] = "wizard";
static const char iconElementC[] = "icon";
static const char descriptionElementC[] = "description";
static const char displayNameElementC[] = "displayName";
static const char displayNameElementC[] = "displayname";
static const char idAttributeC[] = "id";
static const char kindAttributeC[] = "kind";
static const char klassAttributeC[] = "class";
static const char firstPageAttributeC[] = "firstpage";
static const char langAttributeC[] = "xml:lang";
static const char categoryAttributeC[] = "category";
static const char displayCategoryElementC[] = "displayCategory";
static const char displayCategoryElementC[] = "displaycategory";
static const char fieldPageTitleElementC[] = "fieldpagetitle";
static const char fieldsElementC[] = "fields";
static const char fieldElementC[] = "field";
......@@ -144,7 +145,10 @@ static inline void assignLanguageElementText(QXmlStreamReader &reader,
QString *target)
{
const QStringRef elementLanguage = reader.attributes().value(langAttributeC);
if (elementLanguage.isEmpty() || elementLanguage == desiredLanguage) {
if (elementLanguage.isEmpty()) {
// Try to find a translation for our built-in Wizards
*target = QCoreApplication::translate("ProjectExplorer::CustomWizard", reader.readElementText().toLatin1().constData());
} else if (elementLanguage == desiredLanguage) {
*target = reader.readElementText();
} else {
// Language mismatch: forward to end element.
......@@ -161,7 +165,11 @@ static inline void assignLanguageElementText(QXmlStreamReader &reader,
void (Core::BaseFileWizardParameters::*setter)(const QString &))
{
const QStringRef elementLanguage = reader.attributes().value(langAttributeC);
if (elementLanguage.isEmpty() || elementLanguage == desiredLanguage) {
if (elementLanguage.isEmpty()) {
// Try to find a translation for our built-in Wizards
const QString translated = QCoreApplication::translate("ProjectExplorer::CustomWizard", reader.readElementText().toLatin1().constData());
(bp->*setter)(translated);
} else if (elementLanguage == desiredLanguage) {
(bp->*setter)(reader.readElementText());
} else {
// Language mismatch: forward to end element.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment