mirror of
https://github.com/yairm210/Unciv.git
synced 2025-08-01 07:39:20 +07:00
#742: fix options screen bug when language changed
This commit is contained in:

committed by
Yair Morgenstern

parent
c9bd56da95
commit
995ebb5cf8
@ -28,7 +28,7 @@ class Language(val language:String){
|
||||
}
|
||||
|
||||
class WorldScreenOptionsTable(screen:WorldScreen) : PopupTable(screen){
|
||||
val languageSelectBox = SelectBox<Language>(skin)
|
||||
var selectedLanguage: String = "English"
|
||||
|
||||
init {
|
||||
update()
|
||||
@ -157,7 +157,7 @@ class WorldScreenOptionsTable(screen:WorldScreen) : PopupTable(screen){
|
||||
|
||||
private fun addLanguageSelectBox() {
|
||||
add("Language".toLabel())
|
||||
|
||||
val languageSelectBox = SelectBox<Language>(skin)
|
||||
val languageArray = Array<Language>()
|
||||
GameBasics.Translations.getLanguages().map { Language(it) }.sortedByDescending { it.percentComplete }
|
||||
.forEach { languageArray.add(it) }
|
||||
@ -167,7 +167,7 @@ class WorldScreenOptionsTable(screen:WorldScreen) : PopupTable(screen){
|
||||
|
||||
languageSelectBox.addListener(object : ChangeListener() {
|
||||
override fun changed(event: ChangeEvent?, actor: Actor?) {
|
||||
val selectedLanguage = languageSelectBox.selected.language
|
||||
selectedLanguage = languageSelectBox.selected.language
|
||||
if (Fonts().containsFont(Fonts().getFontForLanguage(selectedLanguage)))
|
||||
selectLanguage()
|
||||
else {
|
||||
@ -206,7 +206,7 @@ class WorldScreenOptionsTable(screen:WorldScreen) : PopupTable(screen){
|
||||
|
||||
|
||||
fun selectLanguage(){
|
||||
UnCivGame.Current.settings.language = languageSelectBox.selected.language
|
||||
UnCivGame.Current.settings.language = selectedLanguage
|
||||
UnCivGame.Current.settings.save()
|
||||
|
||||
CameraStageBaseScreen.resetFonts()
|
||||
|
Reference in New Issue
Block a user