Browse Source

【综合】页面编辑 删除,要有二次提示(已修复)

tangchao 11 months ago
parent
commit
a754bc872c

+ 0 - 2
PDF Office/PDF Master/Class/Common/OC/ExportAccessory/SKExportAccessoryController.h

@@ -37,8 +37,6 @@
  */
 
 #import <Cocoa/Cocoa.h>
-//#import "SKViewController.h"
-
 
 @interface SKExportAccessoryController : NSViewController {
     NSMatrix *matrix;

+ 1 - 5
PDF Office/PDF Master/Class/Common/OC/ExportAccessory/SKExportAccessoryController.m

@@ -47,11 +47,7 @@
 
 @synthesize matrix, labelField;
 
-- (void)dealloc {
-//    SKDESTROY(matrix);
-//    SKDESTROY(labelField);
-//    [super dealloc];
-}
+- (void)dealloc {}
 
 - (NSString *)nibName {
     return @"ExportAccessoryView";

+ 8 - 3
PDF Office/PDF Master/Class/Document/KMMainDocument.swift

@@ -188,6 +188,7 @@ typealias KMMainDocumentCloudUploadHanddler = (@escaping(Bool, String)->()) -> (
         
         mainViewController = KMMainViewController.init()
         mainViewController?.myDocument = self
+        self.mdFlags = MDFlags(exportOption: 0, exportUsingPanel: 0, gettingFileType: 0, convertingNotes: 0, needsPasswordToConvert: 0)
         
         if ((self.fileURL?.path) != nil) {
             let pdfDocument = CPDFDocument.init(url: URL(fileURLWithPath: self.fileURL!.path))
@@ -334,12 +335,12 @@ typealias KMMainDocumentCloudUploadHanddler = (@escaping(Bool, String)->()) -> (
     }
     
     override func prepareSavePanel(_ savePanel: NSSavePanel) -> Bool {
-        var success = super.prepareSavePanel(savePanel)
+        let success = super.prepareSavePanel(savePanel)
         let exportUsingPanel = self.mdFlags?.exportUsingPanel ?? 0
         if success && exportUsingPanel > 0 {
 //             *formatPopup = [[savePanel accessoryView] subviewOfClass:[NSPopUpButton class]];
             var formatPopup: NSPopUpButton?
-            let svs = savePanel.accessoryView?.subviews ?? []
+            let svs = savePanel.accessoryView?.subviews.first?.subviews ?? []
             for sv in svs {
                 if let data = sv as? NSPopUpButton {
                     formatPopup = data
@@ -349,7 +350,6 @@ typealias KMMainDocumentCloudUploadHanddler = (@escaping(Bool, String)->()) -> (
             
             if (formatPopup != nil) {
                 let lastExportedType = KMDataManager.ud_string(forKey: Self.kLastExportedTypeKey)
-//                NSInteger lastExportedOption = [[NSUserDefaults standardUserDefaults] integerForKey:SKLastExportedOptionKey];
                 var lastExportedOption = KMDataManager.ud_integer(forKey: Self.kLastExportedOptionKey)
                 if lastExportedOption == 0 {
                     lastExportedOption = KMExportOption.withEmbeddedNotes.rawValue
@@ -380,6 +380,8 @@ typealias KMMainDocumentCloudUploadHanddler = (@escaping(Bool, String)->()) -> (
     }
     
     override func runModalSavePanel(for saveOperation: NSDocument.SaveOperationType, delegate: Any?, didSave didSaveSelector: Selector?, contextInfo: UnsafeMutableRawPointer?) {
+        self.mdFlags?.exportUsingPanel = saveOperation == .saveToOperation ? 1 : 0
+        self.mdFlags?.exportOption = UInt32(KMExportOption.default.rawValue)
         if (self.isNewCreated) {
 //            if let data = self.mainViewController, !data.isPDFDocumentEdited && !data.needSave && !self.isDocumentEdited {
                 self._km_runModalSavePanel(for: saveOperation, delegate: delegate, didSave: didSaveSelector, contextInfo: contextInfo)
@@ -992,6 +994,9 @@ typealias KMMainDocumentCloudUploadHanddler = (@escaping(Bool, String)->()) -> (
     private func _km_save(to url: URL, ofType typeName: String, for saveOperation: NSDocument.SaveOperationType, delegate: Any?, didSave didSaveSelector: Selector?, contextInfo: UnsafeMutableRawPointer?) {
         self._saveToURL = url
         super.save(to: url, ofType: typeName, for: saveOperation, delegate: delegate, didSave: didSaveSelector, contextInfo: contextInfo)
+        
+        self.mdFlags?.exportUsingPanel = 0
+        self.mdFlags?.exportOption = UInt32(KMExportOption.default.rawValue)
     }
     
     private func _km_saveAs(_ sender: Any?) {

+ 9 - 2
PDF Office/PDF Master/Class/PDFTools/PageEdit/Controller/KMPDFEditViewController.swift

@@ -362,9 +362,16 @@ class KMPDFEditViewController: KMPDFThumbViewBaseController {
             return
         }
         
-        self.dealPdfDocumentDidEditCallback(type: .delete)
         
-        super.deleteIndexPaths(indexpaths: indexpaths)
+        let msg = String(format: NSLocalizedString("Are you sure to delete page %@ ?", comment: ""), KMTools.parseIndexSet(indexSet: self.indexpathsToIndexs(indexpaths: indexpaths)))
+        Task {
+            let res = await KMAlertTool.runModel(message: msg, buttons: [NSLocalizedString("Delete", comment: ""), NSLocalizedString("Cancel", comment: "")])
+            if res == .alertFirstButtonReturn {
+                self.dealPdfDocumentDidEditCallback(type: .delete)
+                
+                super.deleteIndexPaths(indexpaths: indexpaths)
+            }
+        }
     }
     
     override func leftRotateAction() {

+ 0 - 16
PDF Office/PDF Reader Pro.xcodeproj/xcuserdata/kdanmobile.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -580,21 +580,5 @@
             landmarkType = "7">
          </BreakpointContent>
       </BreakpointProxy>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            uuid = "EDA42966-3DBB-4AED-9FA7-83CAECFDE67B"
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "PDF Master/Class/Document/KMMainDocument.swift"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "336"
-            endingLineNumber = "336"
-            landmarkName = "prepareSavePanel(_:)"
-            landmarkType = "7">
-         </BreakpointContent>
-      </BreakpointProxy>
    </Breakpoints>
 </Bucket>