// // ScreenshotEditorViewController.swift // KCD // // Created by Hori,Masaki on 2016/12/29. // Copyright © 2016年 Hori,Masaki. All rights reserved. // import Cocoa fileprivate struct EditedImage { var editedImage: NSImage var url: URL init(image: NSImage, url: URL) { editedImage = image self.url = url } } class TrimRectInformation: NSObject { fileprivate(set) var name: String fileprivate(set) var rect: NSRect fileprivate init(name: String, rect: NSRect) { self.name = name self.rect = rect } } fileprivate extension Selector { static let done = #selector(ScreenshotEditorViewController.done(_:)) static let changeToDetail = #selector(ScreenshotListWindowController.changeToDetail(_:)) static let registerImage = #selector(ScreenshotListViewController.registerImage(_:)) } class ScreenshotEditorViewController: BridgeViewController { let trimInfo: [TrimRectInformation] override init?(nibName: String?, bundle: Bundle?) { trimInfo = [ TrimRectInformation(name: "Status", rect: NSRect(x: 328, y: 13, width: 470, height: 365)), TrimRectInformation(name: "List", rect: NSRect(x: 362, y: 15, width: 438, height: 368)), TrimRectInformation(name: "AirplaneBase", rect: NSRect(x: 575, y: 13, width: 225, height: 358)) ] currentTrimInfo = trimInfo[0] super.init(nibName: "ScreenshotEditorViewController", bundle: nil) } required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } deinit { arrayController.removeObserver(self, forKeyPath: NSSelectionIndexesBinding) } @IBOutlet weak var tiledImageView: TiledImageView! @IBOutlet weak var doneButton: NSButton! var columnCount: Int { get { return tiledImageView.columnCount } set { tiledImageView.columnCount = newValue UserDefaults.standard.screenshotEditorColumnCount = newValue } } var image: NSImage? { return tiledImageView.image } dynamic var currentTrimInfoIndex: Int { get { return realiesCurrentTrimInforIndex } set { guard 0..