aboutsummaryrefslogtreecommitdiff
path: root/Map/Views/EvolutionPicker.swift
diff options
context:
space:
mode:
authorRuben Beltran del Rio <ruben@unlimited.pizza>2021-02-04 23:46:55 +0100
committerRuben Beltran del Rio <ruben@unlimited.pizza>2021-02-04 23:46:55 +0100
commit77d0155b661e813a85a7312ed809fc7e5a9f7440 (patch)
treee9b99a94e9b5937c70d9d768d56e8092686f01aa /Map/Views/EvolutionPicker.swift
parent491463f421c86d3a7a5482108b818aa5b5e441ea (diff)
Release 1.1.01.1.0
Diffstat (limited to 'Map/Views/EvolutionPicker.swift')
-rw-r--r--Map/Views/EvolutionPicker.swift48
1 files changed, 48 insertions, 0 deletions
diff --git a/Map/Views/EvolutionPicker.swift b/Map/Views/EvolutionPicker.swift
new file mode 100644
index 0000000..815f575
--- /dev/null
+++ b/Map/Views/EvolutionPicker.swift
@@ -0,0 +1,48 @@
+//
+// EvolutionPicker.swift
+// Map
+//
+// Created by Ruben Beltran del Rio on 2/4/21.
+//
+
+import SwiftUI
+
+struct EvolutionPicker: View {
+
+ @EnvironmentObject private var store: AppStore
+
+ private var selectedEvolution: Binding<StageType> {
+ Binding(
+ get: { store.state.selectedEvolution },
+ set: { evolution in
+ store.send(.selectEvolution(evolution: evolution))
+ }
+ )
+ }
+
+ var body: some View {
+ Picker("Evolution", selection: selectedEvolution) {
+ ForEach(StageType.types) { stage in
+ Text(Stage.title(stage)).tag(stage).padding(4.0)
+ }
+ Divider()
+ ForEach(StageType.characteristics) { stage in
+ Text(Stage.title(stage)).tag(stage).padding(4.0)
+ }
+ Divider()
+ ForEach(StageType.properties) { stage in
+ Text(Stage.title(stage)).tag(stage).padding(4.0)
+ }
+ Divider()
+ ForEach(StageType.custom) { stage in
+ Text(Stage.title(stage)).tag(stage).padding(4.0)
+ }
+ }.padding(.horizontal, 8.0).padding(.vertical, 4.0)
+ }
+}
+
+struct EvolutionPicker_Previews: PreviewProvider {
+ static var previews: some View {
+ EvolutionPicker()
+ }
+}