소스 검색

【MainMenu】替换主菜单

tangchao 1 년 전
부모
커밋
e8077e0516

+ 33 - 16
PDF Office/PDF Master/AppDelegate.swift

@@ -259,6 +259,9 @@ class AppDelegate: NSObject, NSApplicationDelegate {
         PDFOfficeMenu?.insertItem(withTitle: NSLocalizedString("Check for Updates", comment: ""), action: #selector(checkForUpdates), target: self, at: 1)
         let accountRefreshItem = PDFOfficeMenu?.insertItem(withTitle: NSLocalizedString("Account Refresh", comment: ""), action: #selector(accountRefreshAction), target: self, at: 8)
         accountRefreshItem?.tag = kKMMainMenuAccountRefreshItemTag
+#endif
+#if VERSION_FREE
+        PDFOfficeMenu?.insertItem(withTitle: NSLocalizedString("Restore Previous Purchase ", comment: ""), action: #selector(restoreSubscriptions), target: self, at: 1)
 #endif
         if let items = PDFOfficeMenu?.items {
             for menu in items {
@@ -445,12 +448,20 @@ class AppDelegate: NSObject, NSApplicationDelegate {
         
     }
     
+    @objc func restoreSubscriptions(_ sender: NSMenuItem) {
+#if VERSION_FREE
+        KMPrint("restoreSubscriptions ...")
+#endif
+    }
+    
     // MARK:-  DMG
     @objc func checkForUpdates(_ sender: NSMenuItem) {
 #if VERSION_DMG
         SUUpdater.shared().checkForUpdates(sender)
 #endif
     }
+    
+    
 }
 
 extension AppDelegate : NSMenuDelegate,NSMenuItemValidation {
@@ -464,7 +475,7 @@ extension AppDelegate : NSMenuDelegate,NSMenuItemValidation {
             self.updateLoginMenuItem()
             return !KMLightMemberManager.manager.isLogin()
         }
-        
+
         if action == #selector(logoutMenuItemAction) {
             self.updateLoginMenuItem()
             return KMLightMemberManager.manager.isLogin()
@@ -490,22 +501,28 @@ extension AppDelegate : NSMenuDelegate,NSMenuItemValidation {
             let item4 = firstItem?.item(withTag: 14)
 //            let item5 = firstItem?.item(withTag: 15)
             let item6 = firstItem?.item(withTag: kKMMainMenuAccountRefreshItemTag)
-            if KMLightMemberManager.manager.isLogin() {
-                item1?.title = KMLightMemberManager.manager.info.email
-                item1?.isHidden = false
-                item2?.isHidden = true
-                item3?.isHidden = false
-                item4?.isHidden = false
-//                item5?.isHidden = false
-                item6?.isHidden = false
-            } else {
-                item1?.isHidden = true
-                item2?.isHidden = false
-                item3?.isHidden = true
-                item4?.isHidden = true
+//            if KMLightMemberManager.manager.isLogin() {
+//                item1?.title = KMLightMemberManager.manager.info.email
+//                item1?.isHidden = false
+//                item2?.isHidden = true
+//                item3?.isHidden = false
+//                item4?.isHidden = false
+////                item5?.isHidden = false
+//                item6?.isHidden = false
+//            } else {
+//                item1?.isHidden = true
+//                item2?.isHidden = false
+//                item3?.isHidden = true
+//                item4?.isHidden = true
+////                item5?.isHidden = true
+//                item6?.isHidden = true
+//            }
+            item1?.isHidden = true
+            item2?.isHidden = true
+            item3?.isHidden = true
+            item4?.isHidden = true
 //                item5?.isHidden = true
-                item6?.isHidden = true
-            }
+            item6?.isHidden = true
         }
     }
     

+ 2 - 2
PDF Office/PDF Master/Class/Batch/WindowController/KMBatchOperateLeftViewController.swift

@@ -305,7 +305,7 @@ class KMBatchOperateLeftViewController: NSViewController,NSTableViewDelegate,NST
         let vc = KMDeviceBrowserWindowController()
         vc.type = ICDeviceType.camera
         vc.importCameraFileCallback = { [weak self](url: NSURL) -> Void in
-            self!.addFilesToList(addArray: [url.path!])
+            self?.addFilesToList(addArray: [url.path!])
         }
         vc.showWindow(nil)
     }
@@ -314,7 +314,7 @@ class KMBatchOperateLeftViewController: NSViewController,NSTableViewDelegate,NST
         let vc = KMDeviceBrowserWindowController()
         vc.type = .scanner
         vc.importScannerFileCallback = { [weak self](url: NSURL) -> Void in
-            self!.addFilesToList(addArray: [url.path!])
+            self?.addFilesToList(addArray: [url.path!])
         }
     }
     

+ 1 - 1
PDF Office/PDF Master/Class/Common/Tools/KMTools.swift

@@ -346,7 +346,7 @@ extension KMTools {
         #if VERSION_PRO
         return "PDF Master Pro"
         #endif
-        return "PDF Master"
+        return "PDF Readre Pro"
     }
     
     @objc class func pageRangeTypeString(pageRange: KMPageRange) -> String {

+ 14 - 5
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/KMToolbarView.swift

@@ -361,11 +361,20 @@ private let KMToolbarItemSpace = 8.0
                     }
                     
                 } else {
-                    item?.mas_makeConstraints({ make in
-                        make?.top.equalTo()(0)
-                        make?.bottom.equalTo()(0)
-                        make?.left.equalTo()(20)
-                    })
+                    if (i == itemIdentifiers.count - 1) {
+                        item?.mas_makeConstraints({ make in
+                            make?.top.equalTo()(0)
+                            make?.bottom.equalTo()(0)
+                            make?.left.equalTo()(self.leftView.mas_left)?.offset()(KMToolbarItemSpace)
+                            make?.right.equalTo()(self.leftView.mas_right)?.offset()(-20)
+                        })
+                    } else {
+                        item?.mas_makeConstraints({ make in
+                            make?.top.equalTo()(0)
+                            make?.bottom.equalTo()(0)
+                            make?.left.equalTo()(20)
+                        })
+                    }
                 }
                 lastItem = item
             }

+ 31 - 0
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/KMToolbarViewController.swift

@@ -334,6 +334,14 @@ class KMToolbarViewController: NSViewController, NSTextFieldDelegate {
         }
     }
     
+    @objc private func _newPDFAction(sender: NSMenuItem) {
+        if let data = self._currentItemView {
+            self.delegate?.toolbarViewController?(self, menuItemDidClick: data, index: sender.tag, info: nil)
+        } else {
+            self.delegate?.toolbarViewController?(self, menuItemDidClick: self.toolbarItemFindItemIdentifiers(value: KMToolbarConversionCreatePDFItemIdentifier), index: sender.tag, info: nil)
+        }
+    }
+    
     @IBAction func zoomModelSelectButtonAction(_ sender: NSPopUpButton) {
         self.delegate?.toolbarViewController?(self, zoomModel: sender.selectedTag())
         for item in sender.itemArray {
@@ -460,6 +468,8 @@ extension KMToolbarViewController : KMToolbarViewDelegate,NSToolbarItemValidatio
             return [KMLeftControlToolbarItemIdentifier,
                     KMDocumentZoomViewToolbarItemIdentifier, KMDocumentZoomOutToolbarItemIdentifier, KMDocumentZoomToolbarItemIdentifier,
                     KMDocumentPreviousPageToolbarItemIdentifier, KMDocumentNextPageToolbarItemIdentifier, KMDocumentHomeToolbarItemIdentifier]
+        } else if (toolbarType == .Conversion) {
+            return [KMToolbarConversionCreatePDFItemIdentifier]
         }
         return []
     }
@@ -1279,9 +1289,30 @@ extension KMToolbarViewController {
             subMenu.addItem(title: NSLocalizedString("Extract All Images", comment: ""), action: #selector(_exportImageAction), target: self, tag: 1)
             subMenu.addItem(title: NSLocalizedString("Extract Images", comment: ""), action: #selector(_exportImageAction), target: self, tag: 2)
             
+            menuItem.submenu = subMenu
+            item?.menuFormRepresentation = menuItem
+        } else if item?.itemIdentifier == KMToolbarConversionCreatePDFItemIdentifier {
+            item?.image = NSImage(named: KMImageNameUXIconSubtoolbarConvertCreatPDF)
+            item?.target = self
+            item?.toolTip = NSLocalizedString("Convert JPEG, JPG, PNG, TIFF, BMP or PSD files to PDFs", comment: "")
+            item?.titleName = NSLocalizedString("New PDF Document", comment: "")
+            item?.boxImagePosition = .imageExpandLeft
+            item?.needExpandAction = true
+            
+            let menuItem = NSMenuItem.init(title: "New PDF Document", action: nil, target: self)
+            let subMenu = NSMenu()
+            subMenu.addItem(title: NSLocalizedString("New Blank Page", comment: ""), action: #selector(_newPDFAction), target: self, tag: 1)
+            subMenu.addItem(title: NSLocalizedString("New From Images", comment: ""), action: #selector(_newPDFAction), target: self, tag: 2)
+            subMenu.addItem(NSMenuItem.separator())
+            subMenu.addItem(title: NSLocalizedString("New From Web Page", comment: ""), action: #selector(_newPDFAction), target: self, tag: 3)
+            subMenu.addItem(title: NSLocalizedString("Import From Camera", comment: ""), action: #selector(_newPDFAction), target: self, tag: 4)
+            subMenu.addItem(NSMenuItem.separator())
+            subMenu.addItem(title: NSLocalizedString("Import From Scanner", comment: ""), action: #selector(_newPDFAction), target: self, tag: 5)
+            
             menuItem.submenu = subMenu
             item?.menuFormRepresentation = menuItem
         }
+                    
     }
     
     private func _setupFillSignItem(_ item: KMToolbarItemView?) {

+ 3 - 1
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/PublicKey.swift

@@ -87,6 +87,7 @@ let pageEditToolIdentifiers = [KMToolbarPageEditPageRangeItemIdentifier, KMToolb
                                KMToolbarPageEditPasteItemIdentifier, KMToolbarPageEditDeleteItemIdentifier]
 
 // conversion
+let KMToolbarConversionCreatePDFItemIdentifier = "KMToolbarConversionCreatePDFItemIdentifier"
 let KMToolbarConversionWordItemIdentifier = "KMToolbarConversionWordItemIdentifier"
 let KMToolbarConversionExcelItemIdentifier = "KMToolbarConversionExcelItemIdentifier"
 let KMToolbarConversionPPTItemIdentifier = "KMToolbarConversionPPTItemIdentifier"
@@ -97,7 +98,8 @@ let KMToolbarConversionTextItemIdentifier = "KMToolbarConversionTextItemIdentifi
 let KMToolbarConversionImageItemIdentifier = "KMToolbarConversionImageItemIdentifier"
 let KMToolbarConversionExportImageItemIdentifier = "KMToolbarConversionExportImageItemIdentifier"
 
-let conversionToolIdentifiers = [KMToolbarConversionWordItemIdentifier, KMToolbarConversionExcelItemIdentifier,
+let conversionToolIdentifiers = [KMToolbarConversionCreatePDFItemIdentifier,
+                                 KMToolbarConversionWordItemIdentifier, KMToolbarConversionExcelItemIdentifier,
                                  KMToolbarConversionPPTItemIdentifier, KMToolbarConversionRTFItemIdentifier,
                                  KMToolbarConversionCSVItemIdentifier, KMToolbarConversionHTMLItemIdentifier,
                                  KMToolbarConversionTextItemIdentifier, KMToolbarConversionImageItemIdentifier,

+ 2 - 0
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+Action.swift

@@ -2962,6 +2962,8 @@ extension KMMainViewController : KMMainToolbarControllerDelegate {
             KMPrint("KMToolbarConversionImageItemIdentifier \(index)")
         } else if (toolbarItem.itemIdentifier == KMToolbarConversionExportImageItemIdentifier) {
             KMPrint("KMToolbarConversionExportImageItemIdentifier \(index)")
+        } else if (toolbarItem.itemIdentifier == KMToolbarConversionCreatePDFItemIdentifier) {
+            KMPrint("KMToolbarConversionCreatePDFItemIdentifier \(index)")
         }
     }