// // PDFItemViewController.swift // Docsis Toolkit // // Created by Kilian Hofmann on 18.06.17. // Copyright © 2017 Kilian Hofmann. All rights reserved. // import Cocoa class PDFItemViewController: NSViewController { @IBOutlet var day: NSTextField! @IBOutlet var loss: NSTextField! @IBOutlet var distributionAM: LossDistributionPie! @IBOutlet var distributionPM: LossDistributionPie! @IBOutlet var month: NSTextField! var dayFW: FileWrapper? var dayI: Int = 0 var monthName: String = "" required init?(coder: NSCoder) { super.init(coder: coder) } init(dayFW: FileWrapper?, day: Int, monthName: String) { super.init(nibName: NSNib.Name(rawValue: "PDFItemViewController"), bundle: Bundle.main) self.dayFW = dayFW self.dayI = day self.monthName = monthName } init(dayFW: FileWrapper?, day: Int) { super.init(nibName: NSNib.Name(rawValue: "PDFItemViewController"), bundle: Bundle.main) self.dayFW = dayFW self.dayI = day } override func viewDidLoad() { super.viewDidLoad() // Do view setup here. view.wantsLayer = true view.layer?.backgroundColor = NSColor.white.cgColor day.stringValue = "\(dayI)" month.stringValue = monthName guard dayFW != nil else { return } day.textColor = NSColor.black guard let log = dayFW?.fileWrappers?["KDLog.hex"] else { return } guard let logA = FileOperations.load(log: log.regularFileContents! as NSData) else { return } loss.stringValue = "\(logA.count)" var am: [Int] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] var pm: [Int] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] for entry in logA { let hour: Int = Int(entry.components(separatedBy: ":")[0])! if hour < 12 { am[hour] += 1 } else { pm[hour - 12] += 1 } } self.distributionAM.distribution = am self.distributionPM.distribution = pm } }