|
@@ -49,6 +49,12 @@ enum KMPageEditType: Int {
|
|
return self.extract.rawValue + 2000
|
|
return self.extract.rawValue + 2000
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ static var split_selected_pages: Int {
|
|
|
|
+ get {
|
|
|
|
+ return self.split.rawValue + 3000
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
class KMPDFEditToolbar: NSView {
|
|
class KMPDFEditToolbar: NSView {
|
|
@@ -288,10 +294,9 @@ class KMPDFEditToolbar: NSView {
|
|
}
|
|
}
|
|
|
|
|
|
@objc func splitMenuAction(sender: KMToolbarClickButton) {
|
|
@objc func splitMenuAction(sender: KMToolbarClickButton) {
|
|
- guard let callback = self.itemClick else {
|
|
|
|
- return
|
|
|
|
|
|
+ if let subMenu = (sender.clickObject as? KMToolbarItemView)?.menuFormRepresentation?.submenu {
|
|
|
|
+ subMenu.popUp(positioning: nil, at: sender.frame.origin, in: sender.superview)
|
|
}
|
|
}
|
|
- callback(self, KMPageEditType.split.rawValue)
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@objc func reverseMenuAction(sender: KMToolbarClickButton) {
|
|
@objc func reverseMenuAction(sender: KMToolbarClickButton) {
|
|
@@ -343,6 +348,20 @@ class KMPDFEditToolbar: NSView {
|
|
callback(self, KMPageEditType.insert_custom_page)
|
|
callback(self, KMPageEditType.insert_custom_page)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @objc private func _splitAction(sender: NSMenuItem) {
|
|
|
|
+ if (sender.tag == 1) {
|
|
|
|
+ guard let callback = self.itemClick else {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ callback(self, KMPageEditType.split.rawValue)
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ guard let callback = self.itemClick else {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ callback(self, KMPageEditType.split_selected_pages)
|
|
|
|
+ }
|
|
|
|
+
|
|
private lazy var rightItemView: NSView = {
|
|
private lazy var rightItemView: NSView = {
|
|
let view = NSView()
|
|
let view = NSView()
|
|
|
|
|
|
@@ -514,6 +533,10 @@ extension KMPDFEditToolbar: KMToolbarViewDelegate {
|
|
item?.btnAction = #selector(splitMenuAction)
|
|
item?.btnAction = #selector(splitMenuAction)
|
|
|
|
|
|
let menuItem = NSMenuItem.init(title: "Split", action: #selector(splitMenuAction), target: self)
|
|
let menuItem = NSMenuItem.init(title: "Split", action: #selector(splitMenuAction), target: self)
|
|
|
|
+ let subMenu = NSMenu()
|
|
|
|
+ subMenu.addItem(title: NSLocalizedString("Split selected pages", comment: ""), action: #selector(_splitAction), target: self, tag: 0)
|
|
|
|
+ subMenu.addItem(title: NSLocalizedString("Split", comment: ""), action: #selector(_splitAction), target: self, tag: 1)
|
|
|
|
+ menuItem.submenu = subMenu
|
|
item?.menuFormRepresentation = menuItem
|
|
item?.menuFormRepresentation = menuItem
|
|
} else if (identifier == KMToolbarPageEditReverseItemIdentifier) {
|
|
} else if (identifier == KMToolbarPageEditReverseItemIdentifier) {
|
|
item?.image = NSImage(named: KMImageNameUXIconSubtoolbarPageReverse)
|
|
item?.image = NSImage(named: KMImageNameUXIconSubtoolbarPageReverse)
|