|
@@ -12,13 +12,18 @@ import EventKit
|
|
|
import EventKitUI
|
|
import EventKitUI
|
|
|
|
|
|
|
|
class GraphSettingsViewController: FormViewController {
|
|
class GraphSettingsViewController: FormViewController {
|
|
|
|
|
+
|
|
|
|
|
+ var appStateController: AppStateController?
|
|
|
|
|
+
|
|
|
override func viewDidLoad() {
|
|
override func viewDidLoad() {
|
|
|
super.viewDidLoad()
|
|
super.viewDidLoad()
|
|
|
if UserDefaultsRepository.forceDarkMode.value {
|
|
if UserDefaultsRepository.forceDarkMode.value {
|
|
|
overrideUserInterfaceStyle = .dark
|
|
overrideUserInterfaceStyle = .dark
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
buildGraphSettings()
|
|
buildGraphSettings()
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
private func buildGraphSettings() {
|
|
private func buildGraphSettings() {
|
|
|
form
|
|
form
|
|
|
+++ Section("Graph Settings")
|
|
+++ Section("Graph Settings")
|
|
@@ -30,8 +35,14 @@ class GraphSettingsViewController: FormViewController {
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.showDots.value = value
|
|
UserDefaultsRepository.showDots.value = value
|
|
|
// Force main screen update
|
|
// Force main screen update
|
|
|
- guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
- mainScreen.updateBGGraphSettings()
|
|
|
|
|
|
|
+ // guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
+ // mainScreen.updateBGGraphSettings()
|
|
|
|
|
+
|
|
|
|
|
+ // tell main screen that grap needs updating
|
|
|
|
|
+ if let appState = self!.appStateController {
|
|
|
|
|
+ appState.chartSettingsChanged = true
|
|
|
|
|
+ appState.chartSettingsChanges |= ChartSettingsChangeEnum.showDotsChanged.rawValue
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
<<< SwitchRow("switchRowLines"){ row in
|
|
<<< SwitchRow("switchRowLines"){ row in
|
|
|
row.title = "Display Lines"
|
|
row.title = "Display Lines"
|
|
@@ -40,9 +51,14 @@ class GraphSettingsViewController: FormViewController {
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.showLines.value = value
|
|
UserDefaultsRepository.showLines.value = value
|
|
|
// Force main screen update
|
|
// Force main screen update
|
|
|
- guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
- mainScreen.updateBGGraphSettings()
|
|
|
|
|
-
|
|
|
|
|
|
|
+ //guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
+ //mainScreen.updateBGGraphSettings()
|
|
|
|
|
+
|
|
|
|
|
+ if let appState = self!.appStateController {
|
|
|
|
|
+ appState.chartSettingsChanged = true
|
|
|
|
|
+ appState.chartSettingsChanges |= ChartSettingsChangeEnum.showLinesChanged.rawValue
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
<<< SwitchRow("offsetCarbsBolus"){ row in
|
|
<<< SwitchRow("offsetCarbsBolus"){ row in
|
|
|
row.title = "Offset Carb/Bolus Dots"
|
|
row.title = "Offset Carb/Bolus Dots"
|
|
@@ -71,10 +87,12 @@ class GraphSettingsViewController: FormViewController {
|
|
|
row.displayValueFor = { value in
|
|
row.displayValueFor = { value in
|
|
|
guard let value = value else { return nil }
|
|
guard let value = value else { return nil }
|
|
|
return bgUnits.toDisplayUnits(String(value))
|
|
return bgUnits.toDisplayUnits(String(value))
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
}.onChange { [weak self] row in
|
|
}.onChange { [weak self] row in
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.minBGScale.value = Float(value)
|
|
UserDefaultsRepository.minBGScale.value = Float(value)
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
<<< StepperRow("minBGValue") { row in
|
|
<<< StepperRow("minBGValue") { row in
|
|
|
row.title = "Min BG Display"
|
|
row.title = "Min BG Display"
|
|
@@ -90,8 +108,14 @@ class GraphSettingsViewController: FormViewController {
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.minBGValue.value = Float(value)
|
|
UserDefaultsRepository.minBGValue.value = Float(value)
|
|
|
// Force main screen update
|
|
// Force main screen update
|
|
|
- guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
- mainScreen.updateBGGraphSettings()
|
|
|
|
|
|
|
+ //guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
+ //mainScreen.updateBGGraphSettings()
|
|
|
|
|
+
|
|
|
|
|
+ if let appState = self!.appStateController {
|
|
|
|
|
+ appState.chartSettingsChanged = true
|
|
|
|
|
+ appState.chartSettingsChanges |= ChartSettingsChangeEnum.minBGValueChanged.rawValue
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
<<< StepperRow("minBasalScale") { row in
|
|
<<< StepperRow("minBasalScale") { row in
|
|
|
row.title = "Min Basal Scale"
|
|
row.title = "Min Basal Scale"
|
|
@@ -117,8 +141,14 @@ class GraphSettingsViewController: FormViewController {
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.lowLine.value = Float(value)
|
|
UserDefaultsRepository.lowLine.value = Float(value)
|
|
|
// Force main screen update
|
|
// Force main screen update
|
|
|
- guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
- mainScreen.updateBGGraphSettings()
|
|
|
|
|
|
|
+ //guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
+ //mainScreen.updateBGGraphSettings()
|
|
|
|
|
+
|
|
|
|
|
+ // tell main screen to update
|
|
|
|
|
+ if let appState = self!.appStateController {
|
|
|
|
|
+ appState.chartSettingsChanged = true
|
|
|
|
|
+ appState.chartSettingsChanges |= ChartSettingsChangeEnum.lowLineChanged.rawValue
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
<<< StepperRow("highLine") { row in
|
|
<<< StepperRow("highLine") { row in
|
|
|
row.title = "High BG Display Value"
|
|
row.title = "High BG Display Value"
|
|
@@ -134,8 +164,14 @@ class GraphSettingsViewController: FormViewController {
|
|
|
guard let value = row.value else { return }
|
|
guard let value = row.value else { return }
|
|
|
UserDefaultsRepository.highLine.value = Float(value)
|
|
UserDefaultsRepository.highLine.value = Float(value)
|
|
|
// Force main screen update
|
|
// Force main screen update
|
|
|
- guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
- mainScreen.updateBGGraphSettings()
|
|
|
|
|
|
|
+ //guard let mainScreen = self?.tabBarController!.viewControllers?[0] as? MainViewController else { return }
|
|
|
|
|
+ //mainScreen.updateBGGraphSettings()
|
|
|
|
|
+
|
|
|
|
|
+ // let app state know of the change
|
|
|
|
|
+ if let appState = self!.appStateController {
|
|
|
|
|
+ appState.chartSettingsChanged = true
|
|
|
|
|
+ appState.chartSettingsChanges |= ChartSettingsChangeEnum.highLineChanged.rawValue
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
<<< StepperRow("overrideDisplayLocation") { row in
|
|
<<< StepperRow("overrideDisplayLocation") { row in
|
|
|
row.title = "Override BG Location"
|
|
row.title = "Override BG Location"
|