OSDN Git Service

AppDelegateからウインドウに関する部分を分離した
[kcd/KCD.git] / KCD / HistoryMarkTransformer.swift
1 //
2 //  HistoryMarkTransformer.swift
3 //  KCD
4 //
5 //  Created by Hori,Masaki on 2017/01/05.
6 //  Copyright © 2017年 Hori,Masaki. All rights reserved.
7 //
8
9 import Cocoa
10
11 class HistoryMarkTransformer: ValueTransformer {
12     override class func transformedValueClass() -> AnyClass {
13         return NSColor.self
14     }
15     override func transformedValue(_ value: Any?) -> Any? {
16         guard let v = value as? Bool else { return nil }
17         return v ? HistoryMarkTransformer.markImage : nil
18     }
19     
20     static var markImage: NSImage = {
21         let radius: CGFloat = 10.0
22         let image = NSImage(size: NSSize(width: radius, height: radius))
23         image.lockFocus()
24         NSColor.red.highlight(withLevel: 0.6)?.set()
25         NSBezierPath(roundedRect: NSRect(x: 0, y: 0, width: radius, height: radius),
26                      xRadius: radius / 2,
27                      yRadius: radius / 2)
28         .fill()
29         image.unlockFocus()
30         
31         return image
32     }()
33 }