Преглед изворни кода

Hide manual temp in closed loop

Ivan Valkou пре 5 година
родитељ
комит
9a740fbcfa

+ 1 - 1
FreeAPS/Sources/Modules/AddCarbs/View/AddCarbsRootView.swift

@@ -25,7 +25,7 @@ extension AddCarbs {
 
 
                 Section {
                 Section {
                     Button { viewModel.add() }
                     Button { viewModel.add() }
-                    label: { Text("Continue") }
+                    label: { Text("Add") }
                 }
                 }
             }
             }
             .navigationTitle("Add Carbs")
             .navigationTitle("Add Carbs")

+ 1 - 1
FreeAPS/Sources/Modules/Bolus/View/BolusRootView.swift

@@ -27,7 +27,7 @@ extension Bolus {
                     label: { Text("Enact") }
                     label: { Text("Enact") }
                 }
                 }
             }
             }
-            .navigationTitle("Bolus")
+            .navigationTitle("Enact Bolus")
             .navigationBarTitleDisplayMode(.automatic)
             .navigationBarTitleDisplayMode(.automatic)
             .navigationBarItems(leading: Button("Close", action: viewModel.hideModal))
             .navigationBarItems(leading: Button("Close", action: viewModel.hideModal))
         }
         }

+ 10 - 1
FreeAPS/Sources/Modules/Home/HomeViewModel.swift

@@ -4,15 +4,20 @@ import SwiftUI
 extension Home {
 extension Home {
     class ViewModel<Provider>: BaseViewModel<Provider>, ObservableObject where Provider: HomeProvider {
     class ViewModel<Provider>: BaseViewModel<Provider>, ObservableObject where Provider: HomeProvider {
         @Injected() var broadcaster: Broadcaster!
         @Injected() var broadcaster: Broadcaster!
+        @Injected() var settingsManager: SettingsManager!
 
 
         @Published var glucose: [BloodGlucose] = []
         @Published var glucose: [BloodGlucose] = []
         @Published var suggestion: Suggestion?
         @Published var suggestion: Suggestion?
 
 
+        @Published var allowManualTemp = false
+
         override func subscribe() {
         override func subscribe() {
             glucose = provider.filteredGlucose()
             glucose = provider.filteredGlucose()
             suggestion = provider.suggestion
             suggestion = provider.suggestion
+            allowManualTemp = !settingsManager.settings.closedLoop
             broadcaster.register(GlucoseObserver.self, observer: self)
             broadcaster.register(GlucoseObserver.self, observer: self)
             broadcaster.register(SuggestionObserver.self, observer: self)
             broadcaster.register(SuggestionObserver.self, observer: self)
+            broadcaster.register(SettingsObserver.self, observer: self)
         }
         }
 
 
         func addCarbs() {
         func addCarbs() {
@@ -41,7 +46,7 @@ extension Home {
     }
     }
 }
 }
 
 
-extension Home.ViewModel: GlucoseObserver, SuggestionObserver {
+extension Home.ViewModel: GlucoseObserver, SuggestionObserver, SettingsObserver {
     func glucoseDidUpdate(_: [BloodGlucose]) {
     func glucoseDidUpdate(_: [BloodGlucose]) {
         glucose = provider.filteredGlucose()
         glucose = provider.filteredGlucose()
     }
     }
@@ -49,4 +54,8 @@ extension Home.ViewModel: GlucoseObserver, SuggestionObserver {
     func suggestionDidUpdate(_ suggestion: Suggestion) {
     func suggestionDidUpdate(_ suggestion: Suggestion) {
         self.suggestion = suggestion
         self.suggestion = suggestion
     }
     }
+
+    func settingsDidChange(_ settings: FreeAPSSettings) {
+        allowManualTemp = !settings.closedLoop
+    }
 }
 }

+ 7 - 5
FreeAPS/Sources/Modules/Home/View/HomeRootView.swift

@@ -39,11 +39,13 @@ extension Home {
                                 Image(systemName: "drop.fill")
                                 Image(systemName: "drop.fill")
                             }.foregroundColor(.orange)
                             }.foregroundColor(.orange)
                             Spacer()
                             Spacer()
-                            Button { viewModel.showModal(for: .manualTempBasal) }
-                            label: {
-                                Image(systemName: "circle.bottomhalf.fill")
-                            }.foregroundColor(.blue)
-                            Spacer()
+                            if viewModel.allowManualTemp {
+                                Button { viewModel.showModal(for: .manualTempBasal) }
+                                label: {
+                                    Image(systemName: "circle.bottomhalf.fill")
+                                }.foregroundColor(.blue)
+                                Spacer()
+                            }
                             Button { viewModel.showModal(for: .settings) }
                             Button { viewModel.showModal(for: .settings) }
                             label: {
                             label: {
                                 Image(systemName: "gearshape")
                                 Image(systemName: "gearshape")