OSDN Git Service

不要となっていたプロパティを削除
[kcd/KCD.git] / KCD / ResourceViewController.swift
index b8324b3..f74ea88 100644 (file)
@@ -8,41 +8,58 @@
 
 import Cocoa
 
-class ResourceViewController: NSViewController {
-    class func keyPathsForValuesAffectingShipNumberColor() -> Set<String> {
-        return [#keyPath(maxChara), #keyPath(shipCount), #keyPath(minimumColoredShipCount)]
+final class ResourceViewController: NSViewController {
+    
+    @objc override class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String> {
+        
+        switch key {
+            
+        case #keyPath(shipNumberColor): return [#keyPath(maxChara), #keyPath(shipCount), #keyPath(minimumColoredShipCount)]
+            
+        default: return []
+            
+        }
     }
     
-    let managedObjectContext = ServerDataStore.default.context
+    @objc let managedObjectContext = ServerDataStore.default.context
     
     deinit {
-        unbind(#keyPath(maxChara))
-        unbind(#keyPath(shipCount))
+        
+        unbind(NSBindingName(#keyPath(maxChara)))
+        unbind(NSBindingName(#keyPath(shipCount)))
     }
     
-    @IBOutlet var shipController: NSArrayController!
-    @IBOutlet var basicController: NSObjectController!
+    @IBOutlet private var shipController: NSArrayController!
+    @IBOutlet private var basicController: NSObjectController!
     
-    dynamic var maxChara: Int = 0
-    dynamic var shipCount: Int = 0
-    dynamic var shipNumberColor: NSColor {
+    @objc dynamic var maxChara: Int = 0
+    @objc dynamic var shipCount: Int = 0
+    @objc dynamic var shipNumberColor: NSColor {
+        
         if shipCount > maxChara - minimumColoredShipCount {
-            return NSColor.orange
+            
+            return .orange
         }
-        return NSColor.controlTextColor
+        
+        return .controlTextColor
     }
-    dynamic var minimumColoredShipCount: Int {
-        get { return UserDefaults.standard.minimumColoredShipCount }
-        set { UserDefaults.standard.minimumColoredShipCount = newValue }
+    
+    @objc dynamic var minimumColoredShipCount: Int {
+        
+        get { return UserDefaults.standard[.minimumColoredShipCount] }
+        set { UserDefaults.standard[.minimumColoredShipCount] = newValue }
     }
-    override var nibName: String! {
-        return "ResourceViewController"
+    
+    override var nibName: NSNib.Name {
+        
+        return .nibName(instanceOf: self)
     }
     
     override func viewDidLoad() {
+        
         super.viewDidLoad()
         
-        bind(#keyPath(maxChara), to: basicController, withKeyPath: "selection.max_chara", options: nil)
-        bind(#keyPath(shipCount), to: shipController, withKeyPath: "arrangedObjects.@count", options: nil)
+        bind(NSBindingName(#keyPath(maxChara)), to: basicController, withKeyPath: "selection.max_chara", options: nil)
+        bind(NSBindingName(#keyPath(shipCount)), to: shipController, withKeyPath: "arrangedObjects.@count", options: nil)
     }
 }