diff --git a/lib/asn1time.cpp b/lib/asn1time.cpp index 59693a58..f823e64f 100644 --- a/lib/asn1time.cpp +++ b/lib/asn1time.cpp @@ -10,13 +10,13 @@ #include "base.h" #include "func.h" #include "exception.h" -#include "widgets/XcaApplication.h" #include "asn1time.h" #include #include #include #include +#include /* As defined in rfc-5280 4.1.2.5 */ #define UNDEFINED_DATE "99991231235959Z" @@ -157,13 +157,13 @@ QString a1time::toString(QString fmt, Qt::TimeSpec spec) const return QObject::tr("Undefined"); if (!isValid()) return QObject::tr("Broken / Invalid"); - return XcaApplication::language().toString( + return QLocale().toString( spec == Qt::UTC ? toUTC() : toLocalTime(), fmt); } QString a1time::toPretty() const { - QString fmt = XcaApplication::language().dateTimeFormat(); + QString fmt = QLocale().dateTimeFormat(); return toString(fmt, Qt::LocalTime); } @@ -217,7 +217,7 @@ QString a1time::toFancy() const fmt = future ? QObject::tr("in %1 hours") : QObject::tr("%1 hours ago"); } else { - return XcaApplication::language().toString(date(), + return QLocale().toString(date(), QLocale::ShortFormat); } return fmt.arg(diff); diff --git a/widgets/MW_menu.cpp b/widgets/MW_menu.cpp index 70f1b267..ff1eac6b 100644 --- a/widgets/MW_menu.cpp +++ b/widgets/MW_menu.cpp @@ -53,7 +53,7 @@ static QAction *languageMenuEntry(const QStringList &sl) a->setDisabled(!XcaApplication::languageAvailable(locale)); a->setCheckable(true); - if (locale == XcaApplication::language()) + if (locale == QLocale()) a->setChecked(true); return a; } diff --git a/widgets/XcaApplication.cpp b/widgets/XcaApplication.cpp index a3f9d660..2ae54fdb 100644 --- a/widgets/XcaApplication.cpp +++ b/widgets/XcaApplication.cpp @@ -17,7 +17,6 @@ #include #include -QLocale XcaApplication::lang = QLocale::system(); QFont XcaApplication::tableFont; QList XcaApplication::langAvail; @@ -26,7 +25,7 @@ void XcaApplication::setMainwin(MainWindow *m) mainw = m; } -bool XcaApplication::languageAvailable(QLocale l) +bool XcaApplication::languageAvailable(const QLocale &l) { return langAvail.contains(l); } @@ -39,6 +38,7 @@ static QString defaultlang() XcaApplication::XcaApplication(int &argc, char *argv[]) :QApplication(argc, argv) { + QLocale lang; qtTr = NULL; xcaTr = NULL; mainw = NULL; @@ -77,11 +77,10 @@ XcaApplication::XcaApplication(int &argc, char *argv[]) setWindowIcon(QIcon(QPixmap(":appIcon"))); } -void XcaApplication::setupLanguage(QLocale l) +void XcaApplication::setupLanguage(const QLocale &lang) { QStringList dirs; - lang = l; if (qtTr) { removeTranslator(qtTr); delete qtTr; @@ -111,7 +110,7 @@ void XcaApplication::setupLanguage(QLocale l) } } xcaTr->load(lang, "xca", getI18nDir()); - QLocale::setDefault(l); + QLocale::setDefault(lang); installTranslator(qtTr); installTranslator(xcaTr); if (mainw) diff --git a/widgets/XcaApplication.h b/widgets/XcaApplication.h index 7e4bf60a..4d7b6235 100644 --- a/widgets/XcaApplication.h +++ b/widgets/XcaApplication.h @@ -36,17 +36,15 @@ private: MainWindow *mainw; XcaTranslator *qtTr; XcaTranslator *xcaTr; - static QLocale lang; static QList langAvail; public: XcaApplication(int &argc, char *argv[]); virtual ~XcaApplication(); void setMainwin(MainWindow *m); - void setupLanguage(QLocale lang); - static QLocale language() { return lang; } + void setupLanguage(const QLocale &lang); static QFont tableFont; - static bool languageAvailable(QLocale l); + static bool languageAvailable(const QLocale &l); bool eventFilter(QObject *watched, QEvent *ev); bool notify(QObject* receiver, QEvent* event);