AdvancedSettingsView.swift 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //
  2. // AdvancedSettingsView.swift
  3. // LoopFollow
  4. //
  5. // Created by Jonas Björkert on 2025-01-23.
  6. // Copyright © 2025 Jon Fawcett. All rights reserved.
  7. //
  8. import SwiftUI
  9. struct AdvancedSettingsView: View {
  10. @ObservedObject var viewModel: AdvancedSettingsViewModel
  11. @Environment(\.presentationMode) var presentationMode
  12. var body: some View {
  13. NavigationView {
  14. Form {
  15. Section(header: Text("Advanced Settings")) {
  16. Toggle("Download Treatments", isOn: $viewModel.downloadTreatments)
  17. Toggle("Download Prediction", isOn: $viewModel.downloadPrediction)
  18. Toggle("Graph Basal", isOn: $viewModel.graphBasal)
  19. Toggle("Graph Bolus", isOn: $viewModel.graphBolus)
  20. Toggle("Graph Carbs", isOn: $viewModel.graphCarbs)
  21. Toggle("Graph Other Treatments", isOn: $viewModel.graphOtherTreatments)
  22. Stepper(value: $viewModel.bgUpdateDelay, in: 1...30, step: 1) {
  23. Text("BG Update Delay (Sec): \(viewModel.bgUpdateDelay)")
  24. }
  25. }
  26. Section(header: Text("Logging Options")) {
  27. Toggle("Debug Log Level", isOn: $viewModel.debugLogLevel)
  28. }
  29. }
  30. .navigationBarTitle("Advanced Settings", displayMode: .inline)
  31. .toolbar {
  32. ToolbarItem(placement: .navigationBarTrailing) {
  33. Button("Done") {
  34. presentationMode.wrappedValue.dismiss()
  35. }
  36. }
  37. }
  38. }
  39. }
  40. }