aboutsummaryrefslogtreecommitdiff
path: root/Map/Presentation/Base Components
diff options
context:
space:
mode:
Diffstat (limited to 'Map/Presentation/Base Components')
-rw-r--r--Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenu.swift32
-rw-r--r--Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenuItem.swift8
-rw-r--r--Map/Presentation/Base Components/MapRender/MapAxes.swift2
3 files changed, 23 insertions, 19 deletions
diff --git a/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenu.swift b/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenu.swift
index 3a396aa..9478346 100644
--- a/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenu.swift
+++ b/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenu.swift
@@ -3,43 +3,47 @@ import SwiftUI
struct EvolutionPickerMenu: View {
@Binding var selectedEvolution: StageType
+
- private func select(_ evolution: StageType) {
- selectedEvolution = evolution
+ private func select(_ stageType: StageType) {
+ selectedEvolution = stageType
}
var body: some View {
VStack(alignment: .leading, spacing: 1.0) {
Section(header: EvolutionPickerMenuHeader(key: "stage_type.section.types")) {
ForEach(StageType.types) { stage in
- EvolutionPickerMenuItem(stage: stage, isSelected: selectedEvolution == stage)
+ EvolutionPickerMenuItem(stageType: stage, isSelected: selectedEvolution.id == stage.id)
.onTapGesture {
- selectedEvolution = stage
+ select(stage)
}
}
}
Section(header: EvolutionPickerMenuHeader(key: "stage_type.section.characteristics")) {
ForEach(StageType.characteristics) { stage in
- EvolutionPickerMenuItem(stage: stage, isSelected: selectedEvolution == stage)
+ EvolutionPickerMenuItem(stageType: stage, isSelected: selectedEvolution.id == stage.id)
.onTapGesture {
- selectedEvolution = stage
+ select(stage)
}
}
}
Section(header: EvolutionPickerMenuHeader(key: "stage_type.section.general_properties")) {
ForEach(StageType.properties) { stage in
- EvolutionPickerMenuItem(stage: stage, isSelected: selectedEvolution == stage)
+ EvolutionPickerMenuItem(stageType: stage, isSelected: selectedEvolution.id == stage.id)
.onTapGesture {
- selectedEvolution = stage
+ select(stage)
}
}
}
- Section(header: EvolutionPickerMenuHeader(key: "stage_type.section.other")) {
- ForEach(StageType.custom) { stage in
- EvolutionPickerMenuItem(stage: stage, isSelected: selectedEvolution == stage)
- .onTapGesture {
- selectedEvolution = stage
- }
+ Section(header: EvolutionPickerMenuHeader(key: "stage_type.section.custom")) {
+ ForEach(StageType.customStages) { customStage in
+ EvolutionPickerMenuItem(
+ stageType: customStage,
+ isSelected: selectedEvolution.id == customStage.id
+ )
+ .onTapGesture {
+ select(customStage)
+ }
}
}
}
diff --git a/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenuItem.swift b/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenuItem.swift
index 1731e8d..cac1b08 100644
--- a/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenuItem.swift
+++ b/Map/Presentation/Base Components/EvolutionPicker/EvolutionPickerMenuItem.swift
@@ -4,7 +4,7 @@ struct EvolutionPickerMenuItem: View {
@State var isHovered: Bool = false
- let stage: StageType
+ let stageType: StageType
let isSelected: Bool
var body: some View {
@@ -12,7 +12,7 @@ struct EvolutionPickerMenuItem: View {
Image(systemName: "checkmark")
.opacity(isSelected ? 1.0 : 0.0)
.bold(true)
- Text(Stage.title(stage))
+ Text(Stage.title(stageType))
.font(isSelected ? .Theme.Body.emphasized : .Theme.Body.regular)
.padding(Dimensions.Spacing.cozy)
Spacer()
@@ -27,6 +27,6 @@ struct EvolutionPickerMenuItem: View {
}
#Preview {
- EvolutionPickerMenuItem(stage: .behavior, isSelected: false)
- EvolutionPickerMenuItem(stage: .ubiquity, isSelected: true)
+ EvolutionPickerMenuItem(stageType: .behavior, isSelected: false)
+ EvolutionPickerMenuItem(stageType: .ubiquity, isSelected: true)
}
diff --git a/Map/Presentation/Base Components/MapRender/MapAxes.swift b/Map/Presentation/Base Components/MapRender/MapAxes.swift
index 48e0b6d..3a94a13 100644
--- a/Map/Presentation/Base Components/MapRender/MapAxes.swift
+++ b/Map/Presentation/Base Components/MapRender/MapAxes.swift
@@ -94,6 +94,6 @@ struct MapAxes: View {
#Preview {
MapAxes(
mapSize: CGSize(width: 200.0, height: 200.0), lineWidth: CGFloat(1.0),
- evolution: Stage.stages(.general), stages: [25.0, 50.0, 75.0]
+ evolution: Stage.stages(StageType.general), stages: [25.0, 50.0, 75.0]
).padding(50.0)
}