english mode fix
This commit is contained in:
		
							parent
							
								
									38cefbbe45
								
							
						
					
					
						commit
						1edf71eedc
					
				
					 2 changed files with 24 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -69,6 +69,7 @@ void TranslationClass::loadTranslation(QApplication *app)
 | 
			
		|||
#ifndef GTA5SYNC_QCONF // Classic modable loading method
 | 
			
		||||
    QString externalLanguageStr;
 | 
			
		||||
    bool externalLanguageReady = false;
 | 
			
		||||
    bool externalEnglishMode = false;
 | 
			
		||||
    bool loadInternalLang = false;
 | 
			
		||||
    bool trLoadSuccess = false;
 | 
			
		||||
    if (isUserLanguageSystem_p())
 | 
			
		||||
| 
						 | 
				
			
			@ -115,11 +116,12 @@ void TranslationClass::loadTranslation(QApplication *app)
 | 
			
		|||
    }
 | 
			
		||||
    if (trLoadSuccess)
 | 
			
		||||
    {
 | 
			
		||||
        if (currentLangIndex != 0) // Don't install the language until we know we not have a better language for the user
 | 
			
		||||
        if (currentLangIndex != 0 || isEnglishMode) // Don't install the language until we know we not have a better language for the user
 | 
			
		||||
        {
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
            qDebug() << "externalLanguageReady" << currentLanguage;
 | 
			
		||||
#endif
 | 
			
		||||
            externalEnglishMode = isEnglishMode;
 | 
			
		||||
            externalLanguageStr = currentLanguage;
 | 
			
		||||
            externalLanguageReady = true;
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			@ -157,8 +159,9 @@ void TranslationClass::loadTranslation(QApplication *app)
 | 
			
		|||
        trLoadSuccess = loadSystemTranslation_p(inLangPath, &inAppTranslator);
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
        qDebug() << "externalLangIndex" << externalLangIndex << "internalLangIndex" << currentLangIndex;
 | 
			
		||||
        qDebug() << "externalEnglishMode" << externalEnglishMode << "internalEnglishMode" << isEnglishMode;
 | 
			
		||||
#endif
 | 
			
		||||
        if (trLoadSuccess && externalLangIndex > currentLangIndex)
 | 
			
		||||
        if ((trLoadSuccess && externalLangIndex > currentLangIndex) || (trLoadSuccess && externalEnglishMode && !isEnglishMode))
 | 
			
		||||
        {
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
            qDebug() << "installInternalTranslation";
 | 
			
		||||
| 
						 | 
				
			
			@ -180,6 +183,7 @@ void TranslationClass::loadTranslation(QApplication *app)
 | 
			
		|||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
            qDebug() << "installExternalTranslation";
 | 
			
		||||
#endif
 | 
			
		||||
            isEnglishMode = externalEnglishMode;
 | 
			
		||||
            currentLanguage = externalLanguageStr;
 | 
			
		||||
            app->installTranslator(&exAppTranslator);
 | 
			
		||||
            if (loadQtTranslation_p(exLangPath, &exQtTranslator))
 | 
			
		||||
| 
						 | 
				
			
			@ -306,6 +310,7 @@ bool TranslationClass::loadSystemTranslation_p(const QString &langPath, QTransla
 | 
			
		|||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
                    qDebug() << "loadLanguageFileSuccess" << QString(langPath % QDir::separator() % "gta5sync_" % langList.at(0) % "_" % langList.at(1) % ".qm");
 | 
			
		||||
#endif
 | 
			
		||||
                    isEnglishMode = false;
 | 
			
		||||
                    currentLanguage = languageName;
 | 
			
		||||
                    currentLangIndex = currentLangCounter;
 | 
			
		||||
                    return true;
 | 
			
		||||
| 
						 | 
				
			
			@ -321,16 +326,28 @@ bool TranslationClass::loadSystemTranslation_p(const QString &langPath, QTransla
 | 
			
		|||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
                    qDebug() << "loadLanguageFileSuccess" << QString(langPath % QDir::separator() % "gta5sync_" % langList.at(0) % ".qm");
 | 
			
		||||
#endif
 | 
			
		||||
                    isEnglishMode = false;
 | 
			
		||||
                    currentLanguage = languageName;
 | 
			
		||||
                    currentLangIndex = currentLangCounter;
 | 
			
		||||
                    return true;
 | 
			
		||||
                }
 | 
			
		||||
                else if (langList.at(0) == "en")
 | 
			
		||||
                {
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
                    qDebug() << "languageEnglishMode index" << currentLangCounter;
 | 
			
		||||
#endif
 | 
			
		||||
                    isEnglishMode = true;
 | 
			
		||||
                    currentLanguage = languageName;
 | 
			
		||||
                    currentLangIndex = currentLangCounter;
 | 
			
		||||
                    return true;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            if (langList.at(0) == "en")
 | 
			
		||||
            else if (langList.at(0) == "en")
 | 
			
		||||
            {
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
                qDebug() << "languageEnglishMode index" << currentLangCounter;
 | 
			
		||||
#endif
 | 
			
		||||
                isEnglishMode = true;
 | 
			
		||||
                currentLanguage = languageName;
 | 
			
		||||
                currentLangIndex = currentLangCounter;
 | 
			
		||||
                return true;
 | 
			
		||||
| 
						 | 
				
			
			@ -345,10 +362,12 @@ bool TranslationClass::loadSystemTranslation_p(const QString &langPath, QTransla
 | 
			
		|||
            {
 | 
			
		||||
                if (appTranslator->load(langPath % QDir::separator() % "gta5sync_" % langList.at(0) % ".qm"))
 | 
			
		||||
                {
 | 
			
		||||
                    isEnglishMode = false;
 | 
			
		||||
#ifdef GTA5SYNC_DEBUG
 | 
			
		||||
                    qDebug() << "loadLanguageFileSuccess" << QString(langPath % QDir::separator() % "gta5sync_" % langList.at(0) % ".qm");
 | 
			
		||||
#endif
 | 
			
		||||
                    currentLanguage = languageName;
 | 
			
		||||
                    currentLangIndex = currentLangCounter;
 | 
			
		||||
                    return true;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			@ -505,6 +524,7 @@ void TranslationClass::unloadTranslation(QApplication *app)
 | 
			
		|||
        currentLangIndex = 0;
 | 
			
		||||
        currentLanguage = QString();
 | 
			
		||||
        QLocale::setDefault(QLocale::c());
 | 
			
		||||
        isEnglishMode = false;
 | 
			
		||||
        isLangLoaded = false;
 | 
			
		||||
    }
 | 
			
		||||
#ifdef _MSC_VER // Fix dumb Microsoft compiler warning
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -53,6 +53,7 @@ private:
 | 
			
		|||
    QString currentLanguage;
 | 
			
		||||
    QString userLanguage;
 | 
			
		||||
    int currentLangIndex;
 | 
			
		||||
    bool isEnglishMode;
 | 
			
		||||
    bool isLangLoaded;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue