summaryrefslogtreecommitdiff
path: root/library/qpeapplication.cpp
authorzecke <zecke>2003-05-12 13:07:37 (UTC)
committer zecke <zecke>2003-05-12 13:07:37 (UTC)
commit4765c92ba3dcbd829cb2adde4a097dfe6283d7cc (patch) (side-by-side diff)
tree7a13062058737af1564863f9caec692f145fdfaa /library/qpeapplication.cpp
parent65a043f4ac4b43967947c1e8d99c629bb993f065 (diff)
downloadopie-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
Diffstat (limited to 'library/qpeapplication.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp30
1 files changed, 15 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
@@ -590,48 +590,36 @@ QPEApplication::QPEApplication( int & argc, char **argv, Type t )
}
}
/* overide stored arguments */
setArgs( argc, argv );
#endif
// qwsSetDecoration( new QPEDecoration() );
#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 );
setFont( fn );
}
#endif
}
#endif
applyStyle();
if ( type() == GuiServer ) {
@@ -1714,32 +1702,44 @@ void QPEApplication::tryQuit()
if ( activeModalWidget() || strcmp( argv() [ 0 ], "embeddedkonsole" ) == 0 )
return ; // Inside modal loop or konsole. Too hard to save state.
#ifndef QT_NO_COP
{
QCopEnvelope e( "QPE/System", "closing(QString)" );
e << d->appName;
}
#endif
processEvents();
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()
{
processEvents();
// If we are a preloaded application we don't actually quit, so emit
// a System message indicating we're quasi-closing.
if ( d->preloaded && d->qpe_main_widget )
#ifndef QT_NO_COP
{
QCopEnvelope e("QPE/System", "fastAppHiding(QString)" );
e << d->appName;