OSDN Git Service

関数名を変更
[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 final class HistoryMarkTransformer: ValueTransformer {
12     
13     override class func transformedValueClass() -> AnyClass {
14         
15         return NSColor.self
16     }
17     
18     override func transformedValue(_ value: Any?) -> Any? {
19         
20         guard let v = value as? Bool else { return nil }
21         
22         return v ? HistoryMarkTransformer.markImage : nil
23     }
24     
25     static var markImage: NSImage = {
26         
27         let radius: CGFloat = 10.0
28         let image = NSImage(size: NSSize(width: radius, height: radius))
29         
30         do {
31             
32             image.lockFocus()
33             defer { image.unlockFocus() }
34             
35             NSColor.red.highlight(withLevel: 0.6)?.set()
36             NSBezierPath(roundedRect: NSRect(x: 0, y: 0, width: radius, height: radius),
37                          xRadius: radius / 2,
38                          yRadius: radius / 2)
39                 .fill()
40         }
41         
42         return image
43     }()
44 }