12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- import Foundation
- public func KMPrint(_ items: Any..., separator: String = " ", terminator: String = "\n") {
- #if DEBUG
- print(items, separator: separator, terminator: terminator)
- #endif
- }
- public func km_synchronized<T>(_ lock: AnyObject, _ body: () throws -> T) rethrows -> T {
- objc_sync_enter(lock)
- defer { objc_sync_exit(lock) }
- return try body()
- }
- typealias KMItemClickBlock<T> = (_ item: T?, _ index: Int)->()
- typealias KMCommonClickBlock = (_ index: Int, _ params: Any...)->()
- typealias KMCommonBlock = (_ params: Any...)->()
- typealias KMEmptyBlock = ()->Void
- typealias KMValueDidChangeBlock = (_ value: Any?, _ change: [NSKeyValueChangeKey : Any]?)->()
- typealias KMResultBlock = (_ result: KMResult?, _ params: Any...)->Void
- let kKMLocalForDraggedTypes = NSPasteboard.PasteboardType(rawValue: "KMLocalForDraggedTypes")
- let kKMMainMenuAccountRefreshItemTag = 16
- let KMSelectorCopy = NSSelectorFromString("copy:")
- let KMNormalBlankSize = NSMakeSize(595, 842)
- let kControlString = "⌃"
- let kCommandString = "⌘"
- let kOptionString = "⌥"
- let kShiftString = "⇧"
- typealias KMBatchActionBlock = (_ controller: NSWindowController, _ files: [KMFileAttribute]) -> Void
- public struct KM<Base> {
- public let base: Base
-
- init(_ base: Base) {
- self.base = base
- }
- }
- public protocol KMProtocol {}
- extension KMProtocol {
-
- public var km: KM<Self> {
- return KM(self)
- }
-
- public static var km: KM<Self>.Type {
- return KM.self
- }
- }
- extension NSObject: KMProtocol {}
|