OSDN Git Service

swiftlint 'line_length'の警告を修正
[kcd/KCD.git] / KCD / ResourceViewController.swift
1 //
2 //  ResourceViewController.swift
3 //  KCD
4 //
5 //  Created by Hori,Masaki on 2016/12/25.
6 //  Copyright © 2016年 Hori,Masaki. All rights reserved.
7 //
8
9 import Cocoa
10
11 class ResourceViewController: NSViewController {
12     class func keyPathsForValuesAffectingShipNumberColor() -> Set<String> {
13         return ["maxChara", "shipCount", "minimumColoredShipCount"]
14     }
15     
16     let managedObjectContext = ServerDataStore.default.managedObjectContext
17     
18     deinit {
19         unbind("maxChara")
20         unbind("shipCount")
21     }
22     
23     @IBOutlet var shipController: NSArrayController!
24     @IBOutlet var basicController: NSObjectController!
25     
26     dynamic var maxChara: Int = 0
27     dynamic var shipCount: Int = 0
28     dynamic var shipNumberColor: NSColor {
29         if shipCount > maxChara - minimumColoredShipCount {
30             return NSColor.orange
31         }
32         return NSColor.controlTextColor
33     }
34     dynamic var minimumColoredShipCount: Int {
35         get {
36             return UserDefaults.standard.minimumColoredShipCount
37         }
38         set {
39             UserDefaults.standard.minimumColoredShipCount = newValue
40         }
41     }
42     override var nibName: String! {
43         return "ResourceViewController"
44     }
45     
46     override func viewDidLoad() {
47         super.viewDidLoad()
48         
49         bind("maxChara", to: basicController, withKeyPath: "selection.max_chara", options: nil)
50         bind("shipCount", to: shipController, withKeyPath: "arrangedObjects.@count", options: nil)
51     }
52 }