diff options
-rw-r--r-- | src/corelib/kernel/qcoreapplication.cpp | 21 | ||||
-rw-r--r-- | src/corelib/kernel/qcoreapplication.h | 4 |
2 files changed, 16 insertions, 9 deletions
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index 967ed447d5..c901bc142e 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -1513,26 +1513,29 @@ void QCoreApplication::quit() generated by \l{Qt Designer} provide a \c retranslateUi() function that can be called. + The function returns true on success and false on failure. + \sa removeTranslator() translate() QTranslator::load() {Dynamic Translation} */ -void QCoreApplication::installTranslator(QTranslator *translationFile) +bool QCoreApplication::installTranslator(QTranslator *translationFile) { if (!translationFile) - return; + return false; if (!QCoreApplicationPrivate::checkInstance("installTranslator")) - return; + return false; QCoreApplicationPrivate *d = self->d_func(); d->translators.prepend(translationFile); #ifndef QT_NO_TRANSLATION_BUILDER if (translationFile->isEmpty()) - return; + return false; #endif QEvent ev(QEvent::LanguageChange); QCoreApplication::sendEvent(self, &ev); + return true; } /*! @@ -1540,20 +1543,24 @@ void QCoreApplication::installTranslator(QTranslator *translationFile) translation files used by this application. (It does not delete the translation file from the file system.) + The function returns true on success and false on failure. + \sa installTranslator() translate(), QObject::tr() */ -void QCoreApplication::removeTranslator(QTranslator *translationFile) +bool QCoreApplication::removeTranslator(QTranslator *translationFile) { if (!translationFile) - return; + return false; if (!QCoreApplicationPrivate::checkInstance("removeTranslator")) - return; + return false; QCoreApplicationPrivate *d = self->d_func(); if (d->translators.removeAll(translationFile) && !self->closingDown()) { QEvent ev(QEvent::LanguageChange); QCoreApplication::sendEvent(self, &ev); + return true; } + return false; } static void replacePercentN(QString *result, int n) diff --git a/src/corelib/kernel/qcoreapplication.h b/src/corelib/kernel/qcoreapplication.h index cf76511f25..2c942f9037 100644 --- a/src/corelib/kernel/qcoreapplication.h +++ b/src/corelib/kernel/qcoreapplication.h @@ -134,8 +134,8 @@ public: #endif // QT_NO_LIBRARY #ifndef QT_NO_TRANSLATION - static void installTranslator(QTranslator * messageFile); - static void removeTranslator(QTranslator * messageFile); + static bool installTranslator(QTranslator * messageFile); + static bool removeTranslator(QTranslator * messageFile); #endif enum Encoding { UnicodeUTF8, Latin1, DefaultCodec = Latin1 #if QT_DEPRECATED_SINCE(5, 0) |