Jelajahi Sumber

Merge branch 'develop_PDFReaderProNew' of git.kdan.cc:Mac_PDF/PDF_Office into develop_PDFReaderProNew

tangchao 1 tahun lalu
induk
melakukan
310e8d3f1d

+ 22 - 5
PDF Office/PDF Master/Class/PDFWindowController/PDFListView/CPDFListViewExtension/CPDFListView+Event.m

@@ -437,11 +437,7 @@ static inline CPDFAreaOfInterest CAreaOfInterestForResizeHandle(CRectEdges mask,
     
     NSMenuItem * editNoteItem = [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Edit Note", @"PDFListView") action:@selector(menuItemClick_EditNote:) keyEquivalent:@""];
     
-    if(CSelectToolMode == self.toolMode) {
-        if (NSIsEmptyRect([self currentSelectionRect]) == NO) {
-            [menu insertItem:copyItem atIndex:0];
-        }
-    } else {
+    {
         CPDFAnnotation *annotation = nil;
         
         if (([self toolMode] == CTextToolMode || [self toolMode] == CNoteToolMode || [self toolMode] == CFormToolMode || [self toolMode] == CSelfSignMode || [self toolMode] == CRedactToolMode) && [self hideNotes] == NO) {
@@ -558,6 +554,20 @@ static inline CPDFAreaOfInterest CAreaOfInterestForResizeHandle(CRectEdges mask,
         [menu insertItem:zoomInItem atIndex:0];
         [menu insertItem:fitWidthItem atIndex:0];
         
+    }
+    
+    if(CSelectToolMode == self.toolMode) {
+        if (NSIsEmptyRect([self currentSelectionRect]) == NO) {
+            if (NSIsEmptyRect([self currentSelectionRect]) == NO) {
+                NSMenuItem *selectionItem = [menu insertItemWithTitle:NSLocalizedString(@"Zoom To Selection", @"Menu item title") action:@selector(doZoomToAutoSelection:) target:self atIndex:0];
+                [menu insertItem:[NSMenuItem separatorItem] atIndex:0];
+            }
+            
+            [menu insertItem:[NSMenuItem separatorItem] atIndex:0];
+            [menu insertItem:copyItem atIndex:0];
+        }
+    } else {
+       
         if (annotationSel) {
             NSDictionary *dictPresentObject = @{@"page":page,@"annotation":annotationSel};
             bringForwardItem.representedObject = dictPresentObject;
@@ -4603,6 +4613,13 @@ static inline CPDFAreaOfInterest CAreaOfInterestForResizeHandle(CRectEdges mask,
     }
 }
 
+- (void)doZoomToAutoSelection:(id)sender {
+    NSRect selRect = [self currentSelectionRect];
+    CPDFPage *page = [self currentPage];
+    if (NSIsEmptyRect(selRect) == NO && page)
+        [self zoomToRect:selRect onPage:page];
+}
+
 - (IBAction)menuItemClick_FitPage:(id)sender {
     CGFloat pageHeight = self.currentPage.size.height;
     CGFloat pdfviewHeight = self.bounds.size.height;

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

@@ -2532,6 +2532,21 @@ let LOCKED_KEY  = "locked"
         self.mouseRightMenuEvent = theEvent
         let currentMenu : NSMenu = menu.pointee!
        
+        if (listView.toolMode == .selectToolMode){
+            currentMenu.insertItem(NSMenuItem.separator(), at: 3)
+            currentMenu.insertItem(self.printingMenu(), at: 3)
+            currentMenu.insertItem(self.setTTSStype(), at: 3)
+            currentMenu.insertItem(self.setCropStype(), at: 3)
+            currentMenu.insertItem(self.setSnapshotStype(), at: 3)
+            let export = NSMenuItem(title: NSLocalizedString("Export", comment: ""), action: nil, target: self)
+            export.submenu = self.exportMenu()
+            currentMenu.insertItem(export, at:  3)
+            currentMenu.insertItem(NSMenuItem.separator(), at: 3)
+            currentMenu.insertItem(self.setAnnotationToolStype(), at: 3)
+            currentMenu.insertItem(NSMenuItem.separator(), at: 3)
+            return
+        }
+        
         if currentMenu.items.count > 3 {
             currentMenu.insertItem(NSMenuItem.separator(), at: currentMenu.items.count - 3)
             currentMenu.insertItem(self.addReadModelStype(), at: currentMenu.items.count - 3)