Browse Source

【2025】【Markup】代码整理

dinglingui 3 tháng trước cách đây
mục cha
commit
62c6d71c0b

+ 1 - 1
PDF Office/PDF Master/Class/PDFWindowController/PDFListView/CPDFKitExtensions/CPDFListViewExtension/CPDFListView+KeyEvent.m

@@ -126,7 +126,7 @@
             [self.pdfListViewDelegate PDFListViewMeasureCancel:self];
         }
     } else if (CAnnotationTypeUnkown != [self annotationType] && eventChar == CPDFListEscapeCharacter) {
-        if ((self.toolMode == CEditPDFToolMode) && (self.annotationType == CAnnotationTypeAddText || self.annotationType == CAnnotationTypeAddImage)) {
+        if (self.toolMode == CEditPDFToolMode) {
 //            [[NSNotificationCenter defaultCenter] postNotificationName:@"CEditPDFToolModeChangeStateUnkown" object:self];
         } else {
             [self setAnnotationType:CAnnotationTypeUnkown];

+ 0 - 3
PDF Office/PDF Master/Class/PDFWindowController/PDFListView/CPDFListView.h

@@ -68,9 +68,6 @@ typedef NS_ENUM(NSInteger, CAnnotationType) {
     /*CAnnotationTypeMovie,*/
     CAnnotationTypeRedact,
     CAnnotationTypeEraser,
-    CAnnotationTypeEditTextImage,
-    CAnnotationTypeAddText,
-    CAnnotationTypeAddImage,
     
     CAnnotationTypeRadioButton = 100,
     CAnnotationTypeCheckBox,

+ 7 - 0
PDF Office/PDF Master/Class/PDFWindowController/PDFListView/CPDFListView.m

@@ -76,6 +76,13 @@ NSNotificationName const CPDFListViewDisplayModeChangeNotification = @"CPDFListV
     return self;
 }
 
+- (BOOL)mouseDownIsClickAnnotationWithPoint:(CGPoint)point forPage:(CPDFPage *)page {
+    if (_annotationType != CAnnotationTypeUnkown) {
+        return NO;
+    }
+    return YES;
+}
+
 - (void)updateLayer {
     [super updateLayer];
     if (@available(macOS 10.14, *)) {

+ 1 - 4
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/KMToolbarController.swift

@@ -15,9 +15,6 @@ extension CAnnotationType {
         if (self == .signText || self == .signTure || self == .signFalse || self == .signCircle || self == .signLine || self == .signDot || self == .signDate) {
             return true
         }
-        if (self == .addText || self == .addImage) {
-            return true
-        }
         return false
     }
     
@@ -706,7 +703,7 @@ extension KMToolbarController: KMToolbarViewControllerDelegate {
         // 高级功能
         Task { @MainActor in
             //文字编辑 图片编辑 选中按钮逻辑(只能同时选中其中一个)
-            if type == .addText || type == .addImage {
+            if listView?.isEditing() == true && (listView?.shouAddEditAreaType() == .text || listView?.shouAddEditAreaType() == .image) {
                 let boxItem = item.clickObject as? KMToolbarItemView
                 if let data = boxItem {
                     if self.lastChildItemBox != data {

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

@@ -1958,7 +1958,6 @@ extension KMToolbarViewController {
         if identifier == KMToolbarAddTextEditPDFItemIdentifier {
             item?.image = NSImage(named: "KMImageNameButtonEidtPDFText")
             item?.target = self
-            item?.btnTag = CAnnotationType.addText.rawValue
             item?.toolTip = NSLocalizedString("Add Text", comment: "")
             item?.titleName = NSLocalizedString("Add Text", comment: "")
             item?.boxImagePosition = .imageLeft
@@ -1966,7 +1965,6 @@ extension KMToolbarViewController {
         }  else if identifier == KMToolbarAddImageEditPDFItemIdentifier {
             item?.image = NSImage(named: "KMImageNameButtonEidtPDFImage")
             item?.target = self
-            item?.btnTag = CAnnotationType.addImage.rawValue
             item?.toolTip = NSLocalizedString("Add Image", comment: "")
             item?.titleName = NSLocalizedString("Add Image", comment: "")
             item?.boxImagePosition = .imageLeft

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

@@ -4009,11 +4009,11 @@ extension KMMainViewController {
             FMTrackEventManager.defaultManager.trackEvent(event: "SubTbr_Tools", withProperties: ["SubTbr_Btn" : "Btn_SubTbr_Tools_Arrow"])
         } else if (type == .line) {
             FMTrackEventManager.defaultManager.trackEvent(event: "SubTbr_Tools", withProperties: ["SubTbr_Btn" : "Btn_SubTbr_Tools_Line"])
-        } else if (type == .addText) {
+        } else if (self.listView.isEditing() && self.listView.shouAddEditAreaType() == .text) {
             KMAnalytics.trackEvent(eventName: "Btn_SubTbr_AddText", parameters: [
                 KMAnalytics.Parameter.categoryKey : KMAnalytics.Category.subTbr_editPDF,
                 KMAnalytics.Parameter.labelKey : KMAnalytics.Label.subTbr_Btn], platform: .AppCenter, appTarget: .all)
-        } else if (type == .addImage) {
+        } else if (self.listView.isEditing() && self.listView.shouAddEditAreaType() == .image) {
             FMTrackEventManager.defaultManager.trackEvent(event: "SubTbr_Tools", withProperties: ["SubTbr_Btn" : "Btn_SubTbr_Tools_Image"])
         } else if (type == .textField) {
             FMTrackEventManager.defaultManager.trackEvent(event: "SubTbr_Form", withProperties: ["SubTbr_Btn" : "Btn_SubTbr_Form_TextField"])

+ 2 - 3
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+UI.swift

@@ -301,16 +301,15 @@ extension KMMainViewController: KMToolbarControllerDelegate {
             if editSelectd {
                 self.listView.setShouAddEdit([])
                 self.listView.change([.text, .image])
-                self.listView.annotationType = .editTextImage
                 toggleCloseRightSide()
-            } else if self.listView.annotationType == .addText {
+            } else if self.listView.shouAddEditAreaType() == .text {
                 if !viewManager.isPDFReadMode {
                     toggleOpenRightSide()
                 }
                 FMTrackEventManager.defaultManager.trackEvent(event: "SubTbr_EditPDF", withProperties: ["SubTbr_Btn" : "Btn_SubTbr_EditPDF_AddText"])
                 self.listView.setShouAddEdit(.text)
                 self.listView.change(.text)
-            } else if self.listView.annotationType == .addImage {
+            } else if self.listView.shouAddEditAreaType() == .image {
                 if !viewManager.isPDFReadMode {
                     toggleOpenRightSide()
                 }

+ 18 - 15
PDF Office/PDF Master/KMClass/KMPDFViewController/KMMainViewController.swift

@@ -444,7 +444,6 @@ struct KMNMWCFlags {
                     listView.toolMode = .editPDFToolMode
                     listView.configPDFEditingInfo()
                 }
-                listView.annotationType = .editTextImage
                 listView.setShouAddEdit([])
                 listView.change([.text, .image])
                 
@@ -453,7 +452,6 @@ struct KMNMWCFlags {
                     listView.toolMode = .editPDFToolMode
                     listView.configPDFEditingInfo()
                 }
-                listView.annotationType = .addText
                 listView.setShouAddEdit([.text])
                 listView.change(.text)
                 
@@ -462,7 +460,6 @@ struct KMNMWCFlags {
                     listView.toolMode = .editPDFToolMode
                     listView.configPDFEditingInfo()
                 }
-                listView.annotationType = .addImage
                 listView.setShouAddEdit([.image])
                 listView.change(.image)
                 
@@ -1271,6 +1268,11 @@ struct KMNMWCFlags {
                         if popWindow.window?.isVisible == false {
                             reloadPopUIContentEdits(editAreas: editAreas)
                         } else {
+                            let editingAreas = listView.km_EditingAreas()
+                            let editMode = KMNEditContentPopMode(currentEditAreas: editingAreas)
+                            if popWindow.editType != editMode.popType || editingAreas != popWindow.editContentPopMode.editAreas {
+                                popWindow.editContentPopMode = editMode
+                            }
                             updateContentEditPopWinodwFrame()
                         }
                         return
@@ -2933,6 +2935,7 @@ extension KMMainViewController: CPDFViewDelegate,CPDFListViewDelegate {
         if editArea != nil && (editArea is CPDFEditImageArea){
             self.listView.cropAreas = editArea as? CPDFEditImageArea
         }
+        reloadPopUIWindow()
     }
     
     //编辑PDF 创建图片区域回调
@@ -3100,6 +3103,8 @@ extension KMMainViewController: CPDFViewDelegate,CPDFListViewDelegate {
     
     func pdfViewEditingExitCropMode(_ pdfView: CPDFView!, forEditing editingArea: CPDFEditImageArea!) {
         rightSideController?.reloadEditingAreas()
+         
+        toggleClosePopUIWindow()
     }
     
     func pdfViewEditingOperationDidChanged(_ pdfView: CPDFView!) {
@@ -3200,7 +3205,7 @@ extension KMMainViewController: CPDFViewDelegate,CPDFListViewDelegate {
                 }
             }
         } else if (theEvent.keyCode == 36) {
-            if self.listView.annotationType == .addImage || self.listView.annotationType == .addText {
+            if self.listView.shouAddEditAreaType() == .image || self.listView.shouAddEditAreaType() == .text {
                 if self.listView.isEditImage {
                     self.menuItemEditingClick_CropImage(sender: NSMenuItem())
                 }
@@ -5419,31 +5424,29 @@ extension KMMainViewController {
                             if self!.listView.editingAreas().count > 0 && self!.listView.isEditable() {
                                 self!.listView.clearEditingSelectCharItem()
                             } else if self!.listView.editingAreas().count > 0 {
-                                if self?.listView.annotationType == .addImage ||
-                                    self?.listView.annotationType == .addText {
+                                if self?.listView.shouAddEditAreaType() == .image ||
+                                    self?.listView.shouAddEditAreaType() == .text {
                                 }
                                 self?.listView.endEditIsRemoveBlock(with: self!.listView.editingAreas().first as? CPDFEditArea)
                                 self?.listView.updateEditing([])
                                 self?.listView.isEditImage = false
                                 self?.listView.setNeedsDisplayPageViewFor(self!.listView.currentPage())
-                                if self?.listView.annotationType == .addImage {
+                                if self?.listView.shouAddEditAreaType() == .image {
                                     self?.listView.change([.text, .image])
                                 }
-                                self?.listView.annotationType = .editTextImage
                                 self?.toggleCloseRightSide()
-                            } else if(self?.listView.annotationType == .addImage || self!.listView.annotationType == .addText) {
-                                if self?.listView.annotationType == .addImage ||
-                                    self?.listView.annotationType == .addText {
+                            } else if(self?.listView.shouAddEditAreaType() == .image || self!.listView.shouAddEditAreaType() == .text) {
+                                if self?.listView.shouAddEditAreaType() == .image ||
+                                    self?.listView.shouAddEditAreaType() == .text {
                                 }
                                 self?.listView.setShouAddEdit([])
                                 self?.listView.change([.text, .image])
-                                self?.listView.annotationType = .editTextImage
                                 self?.toggleCloseRightSide()
                             }
                             
                         } else {
-                            if self?.listView.annotationType == .addImage ||
-                                self?.listView.annotationType == .addText {
+                            if self?.listView.shouAddEditAreaType() == .image ||
+                                self?.listView.shouAddEditAreaType() == .text {
                             }
                         }
                     }
@@ -5700,7 +5703,7 @@ extension KMMainViewController {
     
     func CEditPDFToolModeChangeStateUnkownNotification(_ sender: Notification) {
         var editSelectd = false
-        if (self.listView.annotationType == .addText || self.listView.annotationType == .addImage) && self.listView.toolMode == .editPDFToolMode {
+        if (self.listView.shouAddEditAreaType() == .text || self.listView.shouAddEditAreaType() == .image) && self.listView.toolMode == .editPDFToolMode {
             editSelectd = true
         }
         if self.listView.toolMode == .editPDFToolMode {

+ 4 - 4
PDF Office/PDF Master/KMClass/PDFListView/WindowController/KMNPopOperationWindowController.xib

@@ -63,8 +63,8 @@
             <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
             <rect key="contentRect" x="196" y="240" width="511" height="42"/>
             <rect key="screenRect" x="0.0" y="0.0" width="1512" height="944"/>
-            <view key="contentView" misplaced="YES" id="se5-gp-TjO">
-                <rect key="frame" x="0.0" y="0.0" width="503" height="43"/>
+            <view key="contentView" id="se5-gp-TjO">
+                <rect key="frame" x="0.0" y="0.0" width="503" height="42"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <box boxType="custom" cornerRadius="4" title="Box" translatesAutoresizingMaskIntoConstraints="NO" id="iV9-GQ-NJE">
@@ -91,9 +91,9 @@
                                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                                         <subviews>
                                             <customView translatesAutoresizingMaskIntoConstraints="NO" id="pfZ-VY-VTh" customClass="ComponentCSelector" customModule="KMComponentLibrary">
-                                                <rect key="frame" x="5" y="0.0" width="32" height="32"/>
+                                                <rect key="frame" x="5" y="-1" width="32" height="34"/>
                                                 <constraints>
-                                                    <constraint firstAttribute="height" constant="32" id="C0F-fj-xCh"/>
+                                                    <constraint firstAttribute="height" constant="34" id="C0F-fj-xCh"/>
                                                     <constraint firstAttribute="width" constant="32" id="NAx-PC-y22"/>
                                                 </constraints>
                                             </customView>