1 contributor
59 lines | 2.151kb
//
//  MeasurementView.swift
//  USB Meter
//
//  Created by Bogdan Timofte on 13/04/2020.
//  Copyright © 2020 Bogdan Timofte. All rights reserved.
//

import SwiftUI

struct MeasurementsView: View {
    
    @EnvironmentObject private var measurements: Measurements
    
    @Binding var visibility: Bool
    
    var body: some View {
        NavigationView {
            VStack {
                Text("Local timeline captured by the app while connected to the meter.")
                    .font(.footnote)
                    .foregroundColor(.secondary)
                    .multilineTextAlignment(.center)
                    .padding(.horizontal)
                    .padding(.top, 8)
                List {
                    ForEach (measurements.power.points) { point in
                        // MARK: Crapa la stergere daca lista incape in fereastra:  Fatal error: Index out of range
                        MeasurementPointView(power: point, voltage: self.measurements.voltage.points[point.id], current: self.measurements.current.points[point.id])
                    }.onDelete { (indexSet) in
                        for idx in indexSet {
                            self.measurements.remove(at: idx)
                        }
                    }
                }
            }
            .navigationBarItems(leading: HStack{
                    Button(action: {self.visibility.toggle()}) {
                        Text("Done")
                    }
                },
                trailing: HStack{
                    #if targetEnvironment(macCatalyst)
                    EditButton()
                    #endif
                    Button(action: {
                        self.measurements.power.reset()
                        self.measurements.voltage.reset()
                        self.measurements.current.reset()
                    }) {
                        Text("🗑")
                            .foregroundColor(.red)
                    }
                })
                .navigationBarTitle("App History", displayMode: .inline)
        }
        .navigationViewStyle(StackNavigationViewStyle())
    }
}