AusweisApp2
LanguageLoader.h
gehe zur Dokumentation dieser Datei
1 /*
2  * \brief Loads translation files for different languages.
3  *
4  * \copyright Copyright (c) 2014-2020 Governikus GmbH & Co. KG, Germany
5  */
6 
7 #pragma once
8 
9 #include <QLocale>
10 #include <QPointer>
11 #include <QSharedPointer>
12 #include <QTranslator>
13 #include <QVector>
14 
15 class test_LanguageLoader;
16 class test_ProviderParser;
17 class test_ProviderConfigurationParser;
18 
19 namespace governikus
20 {
21 
23 {
24  private:
25  friend class ::test_LanguageLoader;
26  friend class ::test_ProviderConfigurationParser;
27  static const QLocale::Language mFallbackLanguage;
28  static QLocale mDefaultLanguage;
29 
30  QString mPath;
31  QVector<QSharedPointer<QTranslator>> mTranslatorList;
32  const QStringList mComponentList;
33  QLocale mUsedLocale;
34 
35  Q_DISABLE_COPY(LanguageLoader)
36 
37  bool loadTranslationFiles(const QLocale& pLocale);
38  QSharedPointer<QTranslator> createTranslator(const QLocale& pLocale, const QString& pComponent);
39 
40  protected:
43 
44  public:
45  static const QLocale& getDefaultLanguage();
46  static void setDefaultLanguage(const QLocale& pLocale);
47  static LanguageLoader& getInstance();
48 
49 #ifndef QT_NO_DEBUG
50  const QString& getPath();
51  void setPath(const QString& pPath);
52 #endif
53 
54  void load(const QLocale& pLocale = getDefaultLanguage());
55  void unload();
56  bool isLoaded() const;
57  const QLocale& getUsedLocale() const;
58  QLocale::Language getFallbackLanguage() const;
59  QList<QLocale> getAvailableLocales() const;
60 };
61 
62 } // namespace governikus
governikus::LanguageLoader::setDefaultLanguage
static void setDefaultLanguage(const QLocale &pLocale)
Definition: LanguageLoader.cpp:54
governikus::LanguageLoader::isLoaded
bool isLoaded() const
Definition: LanguageLoader.cpp:121
governikus::LanguageLoader::unload
void unload()
Definition: LanguageLoader.cpp:156
governikus::LanguageLoader::setPath
void setPath(const QString &pPath)
Definition: LanguageLoader.cpp:67
governikus::LanguageLoader::load
void load(const QLocale &pLocale=getDefaultLanguage())
Definition: LanguageLoader.cpp:127
governikus::LanguageLoader::getAvailableLocales
QList< QLocale > getAvailableLocales() const
Definition: LanguageLoader.cpp:92
governikus::LanguageLoader::getDefaultLanguage
static const QLocale & getDefaultLanguage()
Definition: LanguageLoader.cpp:48
governikus::LanguageLoader::getPath
const QString & getPath()
Definition: LanguageLoader.cpp:61
defineSingleton
#define defineSingleton(className)
Definition: SingletonHelper.h:35
governikus::FileDestination
Definition: FileDestination.h:19
governikus::LanguageLoader::getInstance
static LanguageLoader & getInstance()
Definition: LanguageLoader.cpp:42
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::LanguageLoader::LanguageLoader
LanguageLoader()
Definition: LanguageLoader.cpp:25
governikus::LanguageLoader
Definition: LanguageLoader.h:23
FileDestination.h
governikus::LanguageLoader::getFallbackLanguage
QLocale::Language getFallbackLanguage() const
Definition: LanguageLoader.cpp:182
governikus::LanguageLoader::~LanguageLoader
~LanguageLoader()
Definition: LanguageLoader.cpp:37
LanguageLoader.h
SingletonHelper.h
governikus::LanguageLoader::getUsedLocale
const QLocale & getUsedLocale() const
Definition: LanguageLoader.cpp:176