author | zecke <zecke> | 2003-05-12 13:07:37 (UTC) |
---|---|---|
committer | zecke <zecke> | 2003-05-12 13:07:37 (UTC) |
commit | 4765c92ba3dcbd829cb2adde4a097dfe6283d7cc (patch) (side-by-side diff) | |
tree | 7a13062058737af1564863f9caec692f145fdfaa /library | |
parent | 65a043f4ac4b43967947c1e8d99c629bb993f065 (diff) | |
download | opie-4765c92ba3dcbd829cb2adde4a097dfe6283d7cc.zip opie-4765c92ba3dcbd829cb2adde4a097dfe6283d7cc.tar.gz opie-4765c92ba3dcbd829cb2adde4a097dfe6283d7cc.tar.bz2 |
Hospital Hacking Session
Install libopie.qm make apps fully translatable...
refactor installing trans into a method instead of having the same code copy
and pasted three times
-rw-r--r-- | library/qpeapplication.cpp | 30 | ||||
-rw-r--r-- | library/qpeapplication.h | 3 |
2 files changed, 18 insertions, 15 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index e5da48c..f4db1ab 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp @@ -600,28 +600,16 @@ QPEApplication::QPEApplication( int & argc, char **argv, Type t ) #ifndef QT_NO_TRANSLATION QStringList langs = Global::languageList(); for ( QStringList::ConstIterator it = langs.begin(); it != langs.end(); ++it ) { QString lang = *it; - QTranslator * trans; - QString tfn; + installTranslation( lang + "/libopie.qm"); + installTranslation( lang + "/libqpe.qm" ); + installTranslation( lang + "/" + d->appName + ".qm" ); - trans = new QTranslator( this ); - tfn = qpeDir() + "/i18n/" + lang + "/libqpe.qm"; - if ( trans->load( tfn ) ) - installTranslator( trans ); - else - delete trans; - - trans = new QTranslator( this ); - tfn = qpeDir() + "/i18n/" + lang + "/" + d->appName + ".qm"; - if ( trans->load( tfn ) ) - installTranslator( trans ); - else - delete trans; //###language/font hack; should look it up somewhere #ifdef QWS if ( lang == "ja" || lang == "zh_CN" || lang == "zh_TW" || lang == "ko" ) { QFont fn = FontManager::unicodeFont( FontManager::Proportional ); @@ -1724,12 +1712,24 @@ void QPEApplication::tryQuit() quit(); } /*! \internal +*/ +void QPEApplication::installTranslation( const QString& baseName ) { + QTranslator* trans = new QTranslator(this); + QString tfn = qpeDir() + "/i18n/"+baseName; + if ( trans->load( tfn ) ) + installTranslator( trans ); + else + delete trans; +} + +/*! + \internal User initiated quit. Makes the window 'Go Away'. If preloaded this means hiding the window. If not it means quitting the application. As this is user initiated we don't need to check state. */ void QPEApplication::hideOrQuit() { diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 0bad8b7..e35c008 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h @@ -119,12 +119,15 @@ protected: bool raiseAppropriateWindow(); virtual void tryQuit(); virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) private: +#ifndef QT_NO_TRANSLATION + void installTranslation( const QString& baseName ); +#endif void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); #if defined(Q_WS_QWS) && !defined(QT_NO_COP) QCopChannel *sysChannel; QCopChannel *pidChannel; #endif |