![]() |
Qt 6.x
The Qt SDK
|
\inmodule QtCore More...
#include <qtranslator.h>
Public Member Functions | |
QTranslator (QObject *parent=nullptr) | |
Constructs an empty message file object with parent parent that is not connected to any file. | |
~QTranslator () | |
Destroys the object and frees any allocated resources. | |
virtual QString | translate (const char *context, const char *sourceText, const char *disambiguation=nullptr, int n=-1) const |
Returns the translation for the key (context, sourceText, disambiguation). | |
virtual bool | isEmpty () const |
Returns true if this translator is empty, otherwise returns false . | |
QString | language () const |
QString | filePath () const |
bool | load (const QString &filename, const QString &directory=QString(), const QString &search_delimiters=QString(), const QString &suffix=QString()) |
Loads filename + suffix (".qm" if the suffix is not specified), which may be an absolute file name or relative to directory. | |
bool | load (const QLocale &locale, const QString &filename, const QString &prefix=QString(), const QString &directory=QString(), const QString &suffix=QString()) |
bool | load (const uchar *data, int len, const QString &directory=QString()) |
![]() | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Additional Inherited Members | |
![]() | |
void | deleteLater () |
\threadsafe | |
![]() | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
![]() | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
![]() | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
QString | objectName |
the name of this object | |
![]() | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
\inmodule QtCore
The QTranslator class provides internationalization support for text output.
An object of this class contains a set of translations from a source language to a target language. QTranslator provides functions to look up translations in a translation file. Translation files are created using \l{Qt Linguist}.
The most common use of QTranslator is to: load a translation file, and install it using QCoreApplication::installTranslator().
Here's an example main()
function using the QTranslator:
Note that the translator must be created before the application's widgets.
Most applications will never need to do anything else with this class. The other functions provided by this class are useful for applications that work on translator files.
Definition at line 18 of file qtranslator.h.
Constructs an empty message file object with parent parent that is not connected to any file.
Definition at line 380 of file qtranslator.cpp.
QTranslator::~QTranslator | ( | ) |
Destroys the object and frees any allocated resources.
Definition at line 389 of file qtranslator.cpp.
References d, QCoreApplication::instance(), and QCoreApplication::removeTranslator().
QString QTranslator::filePath | ( | ) | const |
Returns the path of the loaded translation file.
The file path is empty if no translation was loaded yet, the loading failed, or if the translation was not loaded from a file.
Definition at line 1120 of file qtranslator.cpp.
References d.
|
virtual |
Returns true
if this translator is empty, otherwise returns false
.
This function works with stripped and unstripped translation files.
Reimplemented in ProxyTranslator.
Definition at line 1093 of file qtranslator.cpp.
References d.
Referenced by QCoreApplication::installTranslator().
QString QTranslator::language | ( | ) | const |
Returns the target language as stored in the translation file.
Definition at line 1105 of file qtranslator.cpp.
References d.
bool QTranslator::load | ( | const QLocale & | locale, |
const QString & | filename, | ||
const QString & | prefix = QString() , |
||
const QString & | directory = QString() , |
||
const QString & | suffix = QString() |
||
) |
Loads filename + prefix + \l{QLocale::uiLanguages()}{ui language name} + suffix (".qm" if the suffix is not specified), which may be an absolute file name or relative to directory. Returns true
if the translation is successfully loaded; otherwise returns false
.
The previous contents of this translator object are discarded.
If the file name does not exist, other file names are tried in the following order:
\list 1
For example, an application running in the locale with the following \l{QLocale::uiLanguages()}{ui languages} - "es", "fr-CA", "de" might call load(QLocale(), "foo", ".", "/opt/foolib", ".qm"). load() would replace '-' (dash) with '_' (underscore) in the ui language and then try to open the first existing readable file from this list:
\list 1
/opt/foolib/foo
.es.qm /opt/foolib/foo
.es /opt/foolib/foo
.fr_CA.qm /opt/foolib/foo
.fr_CA /opt/foolib/foo
.fr.qm /opt/foolib/foo
.fr /opt/foolib/foo
.de.qm /opt/foolib/foo
.de /opt/foolib/foo
.qm /opt/foolib/foo
. /opt/foolib/foo
\endlistOn operating systems where file system is case sensitive, QTranslator also tries to load a lower-cased version of the locale name.
Definition at line 728 of file qtranslator.cpp.
References d, directory, find_translation(), and QString::isEmpty().
bool QTranslator::load | ( | const QString & | filename, |
const QString & | directory = QString() , |
||
const QString & | search_delimiters = QString() , |
||
const QString & | suffix = QString() |
||
) |
Loads filename + suffix (".qm" if the suffix is not specified), which may be an absolute file name or relative to directory.
Returns true
if the translation is successfully loaded; otherwise returns false
.
If directory is not specified, the current directory is used (i.e., as \l{QDir::}{currentPath()}).
The previous contents of this translator object are discarded.
If the file name does not exist, other file names are tried in the following order:
\list 1
For example, an application running in the fr_CA locale (French-speaking Canada) might call load("foo.fr_ca", "/opt/foolib"). load() would then try to open the first existing readable file from this list:
\list 1
/opt/foolib/foo
.fr_ca.qm /opt/foolib/foo
.fr_ca /opt/foolib/foo
.fr.qm /opt/foolib/foo
.fr /opt/foolib/foo
.qm /opt/foolib/foo
\endlistUsually, it is better to use the QTranslator::load(const QLocale &, const QString &, const QString &, const QString &, const QString &) function instead, because it uses \l{QLocale::uiLanguages()} and not simply the locale name, which refers to the formatting of dates and numbers and not necessarily the UI language.
Definition at line 442 of file qtranslator.cpp.
References d, directory, dotQmLiteral(), QString::endsWith(), fi, i, QFileInfo::isFile(), QString::isNull(), QFileInfo::isReadable(), isRelative(), QStringLiteral, QFileInfo::setFile(), and QString::size().
Referenced by main(), and quick_test_main_with_setup().
Definition at line 752 of file qtranslator.cpp.
References d, directory, magic, and MagicLength.
|
virtual |
Returns the translation for the key (context, sourceText, disambiguation).
If none is found, also tries (context, sourceText, ""). If that still fails, returns a null string.
If n is not -1, it is used to choose an appropriate form for the translation (e.g. "%n file found" vs. "%n files found").
If you need to programmatically insert translations into a QTranslator, this function can be reimplemented.
Reimplemented in ProxyTranslator.
Definition at line 1082 of file qtranslator.cpp.
Referenced by QCoreApplication::translate().