summaryrefslogtreecommitdiff
path: root/src/backend/managers/clanguagemgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/managers/clanguagemgr.cpp')
-rw-r--r--src/backend/managers/clanguagemgr.cpp28
1 files changed, 18 insertions, 10 deletions
diff --git a/src/backend/managers/clanguagemgr.cpp b/src/backend/managers/clanguagemgr.cpp
index 5c44405..a8d4e1f 100644
--- a/src/backend/managers/clanguagemgr.cpp
+++ b/src/backend/managers/clanguagemgr.cpp
@@ -2,7 +2,7 @@
*
* This file is part of BibleTime's source code, http://www.bibletime.info/.
*
-* Copyright 1999-2008 by the BibleTime developers.
+* Copyright 1999-2011 by the BibleTime developers.
* The BibleTime source code is licensed under the GNU General Public License version 2.0.
*
**********/
@@ -11,7 +11,6 @@
#include "backend/drivers/cswordmoduleinfo.h"
#include "backend/managers/cswordbackend.h"
-#include "util/cpointers.h"
CLanguageMgr::Language::Language() {}
@@ -37,6 +36,22 @@ CLanguageMgr::Language::~Language() {
/****************************************************/
/******************** CLanguageMgr ******************/
/****************************************************/
+
+CLanguageMgr *CLanguageMgr::m_instance = 0;
+
+void CLanguageMgr::destroyInstance() {
+ delete m_instance;
+ m_instance = 0;
+}
+
+CLanguageMgr *CLanguageMgr::instance() {
+ if (m_instance == 0) {
+ m_instance = new CLanguageMgr();
+ }
+
+ return m_instance;
+}
+
CLanguageMgr::CLanguageMgr() : m_langMap() {
m_availableModulesCache.moduleCount = 0;
init();
@@ -50,7 +65,7 @@ CLanguageMgr::~CLanguageMgr() {
}
const CLanguageMgr::LangMap& CLanguageMgr::availableLanguages() {
- QList<CSwordModuleInfo*> mods = CPointers::backend()->moduleList();
+ QList<CSwordModuleInfo*> mods = CSwordBackend::instance()->moduleList();
if ( m_availableModulesCache.moduleCount != (unsigned int)mods.count() ) { //we have to refill the cached map
m_availableModulesCache.availableLanguages.clear();
@@ -98,13 +113,6 @@ const CLanguageMgr::Language* CLanguageMgr::languageForAbbrev( const QString& ab
return newLang;
}
-const CLanguageMgr::Language* CLanguageMgr::languageForName( const QString& name ) const {
- foreach ( const Language* lang, m_langList ) {
- if (lang->name() == name) return lang;
- }
- return &m_defaultLanguage;//invalid language
-}
-
const CLanguageMgr::Language* CLanguageMgr::languageForTranslatedName( const QString& name ) const {
foreach ( const Language* lang, m_langList ) {
if (lang->translatedName() == name) return lang;