// // CrashReportWindowController.swift // NetNewsWire // // Created by Brent Simmons on 12/28/18. // Copyright © 2018 Ranchero Software. All rights reserved. // import AppKit final class CrashReportWindowController: NSWindowController { @IBOutlet var textView: NSTextView! { didSet { textView.font = NSFont.userFixedPitchFont(ofSize: 0.0) textView.textContainerInset = NSSize(width: 5.0, height: 5.0) textView.string = crashLogText } } @IBOutlet var sendCrashLogButton: NSButton! @IBOutlet var dontSendButton: NSButton! var testing = false // If true, crashLog won’t actually be sent. private var crashLogText: String! private var didSendCrashLog = false { didSet { sendCrashLogButton.isEnabled = !didSendCrashLog dontSendButton.isEnabled = !didSendCrashLog } } convenience init(crashLogText: String) { self.init(windowNibName: "CrashReporterWindow") self.crashLogText = crashLogText } override func windowDidLoad() { super.windowDidLoad() window!.center() } // MARK: - Actions @IBAction func sendCrashReport(_ sender: Any?) { guard !didSendCrashLog else { return } didSendCrashLog = true if !testing { CrashReporter.sendCrashLogText(crashLogText) } close() } @IBAction func dontSendCrashReport(_ sender: Any?) { close() } }