// // KMSystemViewMenu.swift // PDF Master // // Created by tangchao on 2023/12/26. // import Foundation protocol KMSystemViewMenuProtocol { // scale func menuItemAction_adjustWidth(_ sender: Any) func menuItemAction_adjustPage(_ sender: Any) func menuItemAction_size(_ sender: Any) func menuItemAction_zoomOut(_ sender: Any) func menuItemAction_zoomIn(_ sender: Any) // page show func menuItemAction_singlePage(_ sender: Any) func menuItemAction_singlePageContinue(_ sender: Any) func menuItemAction_doublePage(_ sender: Any) func menuItemAction_doublePageContinue(_ sender: Any) func menuItemAction_bookMode(_ sender: Any) func menuItemAction_readMode(_ sender: Any) func menuItemAction_showSplitPage(_ sender: Any) func menuItemAction_autoScrol(_ sender: Any) func menuItemAction_autoScrolSetting(_ sender: Any) // rotate func menuItemAction_rotateLeft(_ sender: Any) func menuItemAction_rotateRight(_ sender: Any) func menuItemAction_rotateAllPageLeft(_ sender: Any) func menuItemAction_rotateAllPageRight(_ sender: Any) // split screen func menuItemAction_splitScreenVerti(_ sender: Any) func menuItemAction_splitScreenHorti(_ sender: Any) func menuItemAction_splitScreenNo(_ sender: Any) func menuItemAction_view_readMode(_ sender: Any) func menuItemAction_enterFullScreen(_ sender: Any) func menuItemAction_hiddenLeftSide(_ sender: Any) func menuItemAction_hiddenRightSide(_ sender: Any) func menuItemAction_thumai(_ sender: Any) func menuItemAction_outline(_ sender: Any) func menuItemAction_bookmark(_ sender: Any) func menuItemAction_annotation(_ sender: Any) func menuItemAction_search(_ sender: Any) func menuItemAction_topic(_ sender: Any) func menuItemAction_hiddenPageIndicator(_ sender: Any) } extension KMSystemViewMenuProtocol { func menuItemAction_autoScrol(_ sender: Any) {} func menuItemAction_autoScrolSetting(_ sender: Any) {} func menuItemAction_splitScreenVerti(_ sender: Any) {} func menuItemAction_splitScreenHorti(_ sender: Any) {} func menuItemAction_splitScreenNo(_ sender: Any) {} func menuItemAction_enterFullScreen(_ sender: Any) {} func menuItemAction_topic(_ sender: Any) {} } extension KMSystemMenu.View { // scale public static let adjustWidthSelector = NSSelectorFromString("menuItemAction_adjustWidth:") public static let adjustPageSelector = NSSelectorFromString("menuItemAction_adjustPage:") public static let sizeSelector = NSSelectorFromString("menuItemAction_size:") public static let zoomOutSelector = NSSelectorFromString("menuItemAction_zoomOut:") public static let zoomInSelector = NSSelectorFromString("menuItemAction_zoomIn:") // page show public static let singlePageSelector = NSSelectorFromString("menuItemAction_singlePage:") public static let singlePageContinueSelector = NSSelectorFromString("menuItemAction_singlePageContinue:") public static let doublePageSelector = NSSelectorFromString("menuItemAction_doublePage:") public static let doublePageContinueSelector = NSSelectorFromString("menuItemAction_doublePageContinue:") public static let bookModeSelector = NSSelectorFromString("menuItemAction_bookMode:") public static let readModeSelector = NSSelectorFromString("menuItemAction_readMode:") public static let showSplitPageSelector = NSSelectorFromString("menuItemAction_showSplitPage:") public static let autoScrolSelector = NSSelectorFromString("menuItemAction_autoScrol:") public static let autoScrolSettingSelector = NSSelectorFromString("menuItemAction_autoScrolSetting:") // rotate public static let rotateLeftSelector = NSSelectorFromString("menuItemAction_rotateLeft:") public static let rotateRightSelector = NSSelectorFromString("menuItemAction_rotateRight:") public static let rotateAllPageLeftSelector = NSSelectorFromString("menuItemAction_rotateAllPageLeft:") public static let rotateAllPageRightSelector = NSSelectorFromString("menuItemAction_rotateAllPageRight:") // split screen public static let splitScreenVertiSelector = NSSelectorFromString("menuItemAction_splitScreenVerti:") public static let splitScreenHortiSelector = NSSelectorFromString("menuItemAction_splitScreenHorti:") public static let splitScreenNoSelector = NSSelectorFromString("menuItemAction_splitScreenNo:") public static let viewReadModeSelector = NSSelectorFromString("menuItemAction_view_readMode:") public static let enterFullScreenSelector = NSSelectorFromString("menuItemAction_enterFullScreen:") public static let hiddenLeftSideSelector = NSSelectorFromString("menuItemAction_hiddenLeftSide:") public static let hiddenRightSideSelector = NSSelectorFromString("menuItemAction_hiddenRightSide:") public static let thumaiSelector = NSSelectorFromString("menuItemAction_thumai:") public static let outlineSelector = NSSelectorFromString("menuItemAction_outline:") public static let bookmarkSelector = NSSelectorFromString("menuItemAction_bookmark:") public static let annotationSelector = NSSelectorFromString("menuItemAction_annotation:") public static let searchSelector = NSSelectorFromString("menuItemAction_search:") public static let topicSelector = NSSelectorFromString("menuItemAction_topic:") public static let hiddenPageIndicatorSelector = NSSelectorFromString("menuItemAction_hiddenPageIndicator:") public static func actions() -> [Selector] { return [self.adjustWidthSelector, self.adjustPageSelector, self.sizeSelector, self.zoomOutSelector, self.zoomInSelector, // page show self.singlePageSelector, self.singlePageContinueSelector, self.doublePageSelector, self.doublePageContinueSelector, self.bookModeSelector, self.readModeSelector, self.showSplitPageSelector, self.autoScrolSelector, self.autoScrolSettingSelector, // rotate self.rotateLeftSelector, self.rotateRightSelector, self.rotateAllPageLeftSelector, self.rotateAllPageRightSelector, // split screen self.splitScreenVertiSelector, self.splitScreenHortiSelector, self.splitScreenNoSelector, self.viewReadModeSelector, self.enterFullScreenSelector, self.hiddenLeftSideSelector, self.hiddenRightSideSelector, self.thumaiSelector, self.outlineSelector, self.bookmarkSelector, self.annotationSelector, self.searchSelector, self.topicSelector, self.hiddenPageIndicatorSelector] } }