added iOS source code
[wl-app.git] / iOS / Pods / MenuItemKit / MenuItemKit / UIMenuItem.swift
diff --git a/iOS/Pods/MenuItemKit/MenuItemKit/UIMenuItem.swift b/iOS/Pods/MenuItemKit/MenuItemKit/UIMenuItem.swift
new file mode 100644 (file)
index 0000000..3673351
--- /dev/null
@@ -0,0 +1,41 @@
+//
+//  UIMenuItem.swift
+//  MenuItemKit
+//
+//  Created by CHEN Xian’an on 1/16/16.
+//  Copyright © 2016 lazyapps. All rights reserved.
+//
+
+import UIKit
+import ObjectiveC.runtime
+
+public extension UIMenuItem {
+
+  @objc(mik_initWithTitle:image:action:)
+  convenience init(title: String, image: UIImage?, action: @escaping MenuItemAction) {
+    let title = image != nil ? title + imageItemIdetifier : title
+    self.init(title: title, action: Selector(blockIdentifierPrefix + UUID.stripedString + ":"))
+    imageBox.value = image
+    actionBox.value = action
+  }
+
+  @objc(mik_initWithTitle:action:)
+  convenience init(title: String, action: @escaping MenuItemAction) {
+    self.init(title: title, image: nil, action: action)
+  }
+
+
+  @objc(mik_isMenuItemKitSelector:)
+  static func isMenuItemKitSelector(_ sel: Selector) -> Bool {
+    return NSStringFromSelector(sel).hasPrefix(blockIdentifierPrefix)
+  }
+}
+
+// MARK: NSUUID
+private extension UUID {
+  
+  static var stripedString: String {
+    return UUID().uuidString.replacingOccurrences(of: "-", with: "_")
+  }
+  
+}