mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-25 12:54:06 -04:00
Homework from @SomeTroglodyte - Remove lastOverviewPage and replace with persistState.last (#12248)
This commit is contained in:
parent
bfa42ea433
commit
80d565dd06
@ -101,9 +101,6 @@ class GameSettings {
|
|||||||
|
|
||||||
var autoPlay = GameSettingsAutoPlay()
|
var autoPlay = GameSettingsAutoPlay()
|
||||||
|
|
||||||
// This is a string not an enum so if tabs change it won't screw up the json serialization
|
|
||||||
//TODO remove line in a future update
|
|
||||||
var lastOverviewPage = EmpireOverviewCategories.Cities.name
|
|
||||||
/** Holds EmpireOverviewScreen per-page persistable states */
|
/** Holds EmpireOverviewScreen per-page persistable states */
|
||||||
val overview = OverviewPersistableData()
|
val overview = OverviewPersistableData()
|
||||||
|
|
||||||
|
@ -11,7 +11,6 @@ class OverviewPersistableData(
|
|||||||
) : Json.Serializable,
|
) : Json.Serializable,
|
||||||
Map<EmpireOverviewCategories, EmpireOverviewTab.EmpireOverviewTabPersistableData> by map
|
Map<EmpireOverviewCategories, EmpireOverviewTab.EmpireOverviewTabPersistableData> by map
|
||||||
{
|
{
|
||||||
//todo so far this is saved but not used, should replace [GameSettings.lastOverviewPage] in a future update.
|
|
||||||
var last: EmpireOverviewCategories = EmpireOverviewCategories.Cities
|
var last: EmpireOverviewCategories = EmpireOverviewCategories.Cities
|
||||||
|
|
||||||
fun update(pageObjects: Map<EmpireOverviewCategories, EmpireOverviewTab>) {
|
fun update(pageObjects: Map<EmpireOverviewCategories, EmpireOverviewTab>) {
|
||||||
|
@ -11,8 +11,7 @@ import com.unciv.ui.screens.overviewscreen.EmpireOverviewTab.EmpireOverviewTabPe
|
|||||||
*
|
*
|
||||||
* To add a Tab, build a new [EmpireOverviewTab] subclass and fill out a new entry here, that's all.
|
* To add a Tab, build a new [EmpireOverviewTab] subclass and fill out a new entry here, that's all.
|
||||||
* Note the enum value's name is used as Tab caption, so if you ever need a non-alphanumeric caption
|
* Note the enum value's name is used as Tab caption, so if you ever need a non-alphanumeric caption
|
||||||
* please redesign to include a property for the caption - and don't forget GameSettings.lastOverviewPage
|
* please redesign to include a property for the caption
|
||||||
* currently looks for name when applied but uses tab caption when saving.
|
|
||||||
*/
|
*/
|
||||||
enum class EmpireOverviewCategories(
|
enum class EmpireOverviewCategories(
|
||||||
val iconName: String,
|
val iconName: String,
|
||||||
|
@ -34,9 +34,7 @@ class EmpireOverviewScreen(
|
|||||||
override fun getCivilopediaRuleset() = viewingPlayer.gameInfo.ruleset
|
override fun getCivilopediaRuleset() = viewingPlayer.gameInfo.ruleset
|
||||||
|
|
||||||
init {
|
init {
|
||||||
val selectCategory = defaultCategory
|
val selectCategory = defaultCategory ?: persistState.last
|
||||||
//TODO replace with `?: persistState.last` in a future update
|
|
||||||
?: EmpireOverviewCategories.entries.firstOrNull { it.name == game.settings.lastOverviewPage }
|
|
||||||
val iconSize = Constants.defaultFontSize.toFloat()
|
val iconSize = Constants.defaultFontSize.toFloat()
|
||||||
|
|
||||||
tabbedPager = TabbedPager(
|
tabbedPager = TabbedPager(
|
||||||
@ -76,9 +74,7 @@ class EmpireOverviewScreen(
|
|||||||
|
|
||||||
override fun recreate(): BaseScreen {
|
override fun recreate(): BaseScreen {
|
||||||
tabbedPager.selectPage(-1) // trigger deselect on _old_ instance so the tabs can persist their stuff
|
tabbedPager.selectPage(-1) // trigger deselect on _old_ instance so the tabs can persist their stuff
|
||||||
return EmpireOverviewScreen(viewingPlayer,
|
return EmpireOverviewScreen(viewingPlayer, persistState.last)
|
||||||
//TODO replace with `persistState.last)` in a future update
|
|
||||||
EmpireOverviewCategories.entries.firstOrNull { it.name == game.settings.lastOverviewPage })
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun resizePage(tab: EmpireOverviewTab) {
|
fun resizePage(tab: EmpireOverviewTab) {
|
||||||
|
@ -23,8 +23,6 @@ abstract class EmpireOverviewTab (
|
|||||||
|
|
||||||
override fun activated(index: Int, caption: String, pager: TabbedPager) {
|
override fun activated(index: Int, caption: String, pager: TabbedPager) {
|
||||||
if (caption.isEmpty()) return // called from EmpireOverviewScreen.resume()
|
if (caption.isEmpty()) return // called from EmpireOverviewScreen.resume()
|
||||||
//TODO remove line in a future update
|
|
||||||
overviewScreen.game.settings.lastOverviewPage = caption
|
|
||||||
overviewScreen.persistState.last = EmpireOverviewCategories.entries.toTypedArray()[index] // Change this if categories are ever reordered or filtered
|
overviewScreen.persistState.last = EmpireOverviewCategories.entries.toTypedArray()[index] // Change this if categories are ever reordered or filtered
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user