#include <src/core/Language.h>
Public Member Functions | |
void | addEntry (const LanguageEntryLabel &label, const std::string &entry) |
Adds a new LanguageEntry, if it's not already existing. | |
const std::string & | getLocalisation (const LanguageEntryLabel &label) const |
Returns the localisation of a given entry. | |
Language () | |
Constructor: Reads the default language file and sets some values. | |
~Language () | |
Destructor: Deletes all language entries. | |
Static Public Member Functions | |
static Language & | getLanguage () |
Private Member Functions | |
LanguageEntry * | createEntry (const LanguageEntryLabel &label, const std::string &entry) |
Creates a new LanguageEntry with a given label and a given default entry. | |
Language (const Language &) | |
void | readDefaultLanguageFile () |
Reads the default language file and creates a LanguageEntry objects for every entry. | |
void | readTranslatedLanguageFile () |
Reads the language file of the configured language and assigns the localisation to the corresponding LanguageEntry object. | |
void | writeDefaultLanguageFile () const |
Writes all default entries to the default language file. | |
Static Private Member Functions | |
static std::string | getFilename (const std::string &language) |
Creates the name of the language file out of the languages name. | |
Private Attributes | |
std::string | defaultLanguage_ |
The default language. | |
std::string | defaultLocalisation_ |
The returned string, if an entry unavailable entry is requested. | |
std::map< std::string, LanguageEntry * > | languageEntries_ |
A map to store all LanguageEntry objects and their labels. | |
Static Private Attributes | |
static Language * | singletonRef_s = 0 |
Friends | |
class | CoreConfiguration |
orxonox::Language::Language | ( | ) |
Constructor: Reads the default language file and sets some values.
References defaultLanguage_, defaultLocalisation_, readDefaultLanguageFile(), and singletonRef_s.
orxonox::Language::~Language | ( | ) |
orxonox::Language::Language | ( | const Language & | ) | [private] |
void orxonox::Language::addEntry | ( | const LanguageEntryLabel & | label, | |
const std::string & | entry | |||
) |
Adds a new LanguageEntry, if it's not already existing.
label | The label of the entry | |
entry | The default entry |
References COUT, createEntry(), languageEntries_, and writeDefaultLanguageFile().
LanguageEntry * orxonox::Language::createEntry | ( | const LanguageEntryLabel & | label, | |
const std::string & | entry | |||
) | [private] |
Creates a new LanguageEntry with a given label and a given default entry.
label | The label of the entry | |
entry | The default entry |
References COUT, defaultLanguage_, getFilename(), languageEntries_, and orxonox::LanguageEntry::setLabel().
Referenced by addEntry(), readDefaultLanguageFile(), and readTranslatedLanguageFile().
std::string orxonox::Language::getFilename | ( | const std::string & | language | ) | [static, private] |
Creates the name of the language file out of the languages name.
language | The name of the language |
Referenced by createEntry(), readDefaultLanguageFile(), readTranslatedLanguageFile(), and writeDefaultLanguageFile().
static Language& orxonox::Language::getLanguage | ( | ) | [inline, static] |
const std::string & orxonox::Language::getLocalisation | ( | const LanguageEntryLabel & | label | ) | const |
Returns the localisation of a given entry.
label | The label of the entry |
References COUT, defaultLocalisation_, and languageEntries_.
void orxonox::Language::readDefaultLanguageFile | ( | ) | [private] |
Reads the default language file and creates a LanguageEntry objects for every entry.
References COUT, createEntry(), defaultLanguage_, orxonox::Core::getConfigPath(), and getFilename().
Referenced by Language().
void orxonox::Language::readTranslatedLanguageFile | ( | ) | [private] |
Reads the language file of the configured language and assigns the localisation to the corresponding LanguageEntry object.
References COUT, createEntry(), defaultLanguage_, defaultLocalisation_, orxonox::Core::getConfigPath(), getFilename(), orxonox::Core::getLanguage(), languageEntries_, and orxonox::Core::resetLanguage().
Referenced by orxonox::CoreConfiguration::languageChanged().
void orxonox::Language::writeDefaultLanguageFile | ( | ) | const [private] |
Writes all default entries to the default language file.
References COUT, defaultLanguage_, orxonox::Core::getConfigPath(), getFilename(), and languageEntries_.
Referenced by addEntry().
friend class CoreConfiguration [friend] |
The default language.
Referenced by createEntry(), Language(), readDefaultLanguageFile(), readTranslatedLanguageFile(), and writeDefaultLanguageFile().
The returned string, if an entry unavailable entry is requested.
Referenced by getLocalisation(), Language(), and readTranslatedLanguageFile().
std::map<std::string, LanguageEntry*> orxonox::Language::languageEntries_ [private] |
A map to store all LanguageEntry objects and their labels.
Referenced by addEntry(), createEntry(), getLocalisation(), readTranslatedLanguageFile(), writeDefaultLanguageFile(), and ~Language().
Language * orxonox::Language::singletonRef_s = 0 [static, private] |
Referenced by Language(), and ~Language().