void SettingsGeneral::loadLanguage() { QStringList langList; QFile resLanguage(":/Resources/Language/LangList.ini"); resLanguage.open(QIODevice::ReadOnly); QStringList resourceLanguages=QString(resLanguage.readAll().replace("\r","")).split("\n"); for(int n=0;n<resourceLanguages.count();n++)if(!resourceLanguages.at(n).isEmpty())langList<<":/Resources/Language/"+resourceLanguages.at(n); QStringList folderLangList=QDir(appDataDir+"Language","*.lng").entryList(); folderLangList.sort(); for(int n=0;n<folderLangList.count();n++)langList<<appDataDir+"Language/"+folderLangList.at(n); int selectedLangId=-1; QString preferedLangFile=julyTranslator.lastFile(); if(!QFile::exists(preferedLangFile))preferedLangFile.clear(); if(preferedLangFile.isEmpty())preferedLangFile=baseValues.defaultLangFile; ui.languageComboBox->clear(); for(int n=0;n<langList.count();n++) { JulyTranslator translateName; translateName.loadFromFile(langList.at(n)); QString langName=translateName.translateString("LANGUAGE_NAME",""); if(langName.isEmpty())continue; if(preferedLangFile==langList.at(n))selectedLangId=n; ui.languageComboBox->insertItem(ui.languageComboBox->count(),langName,langList.at(n)); } if(selectedLangId>-1)ui.languageComboBox->setCurrentIndex(selectedLangId); }