/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \page qdeclarativei18n.html \ingroup qml-features \contentspage QML Features \previouspage {Network Transparency}{Loading Resources in QML} \nextpage {QML Features} \title QML Internationalization Strings in QML can be marked for translation using the qsTr(), qsTranslate(), QT_TR_NOOP(), and QT_TRANSLATE_NOOP() functions. For example: \qml Text { text: qsTr("Pictures") } \endqml These functions are standard QtScript functions; for more details see QScriptEngine::installTranslatorFunctions(). QML relies on the core internationalization capabilities provided by Qt. These capabilities are described more fully in: \list \li \l {Internationalization with Qt} \li \l {Qt Linguist Manual} \endlist You can test a translation with the \l {QML Viewer} using the -translation option. \section1 Example First we create a simple QML file with text to be translated. The string that needs to be translated is enclosed in a call to \c qsTr(). hello.qml: \qml import QtQuick 1.0 Rectangle { width: 200; height: 200 Text { text: qsTr("Hello"); anchors.centerIn: parent } } \endqml Next we create a translation source file using lupdate: \code lupdate hello.qml -ts hello.ts \endcode Then we open \c hello.ts in \l{Qt Linguist Manual} {Linguist}, provide a translation and create the release file \c hello.qm. Finally, we can test the translation: \code qmlviewer -translation hello.qm hello.qml \endcode You can see a complete example and source code in the \l{declarative/i18n}{QML Internationalization example}. */