Przeglądaj źródła

【2025】】【Edit】Link模块自测完善

niehaoyu 3 miesięcy temu
rodzic
commit
32192317ba
12 zmienionych plików z 93 dodań i 95 usunięć
  1. 19 22
      PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/KMLinkViewController.swift
  2. 3 2
      PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMLinkPageView/KMLinkPageView.swift
  3. 29 24
      PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMNLinkMultiController/KMNLinkMultiController.swift
  4. 9 9
      PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMNLinkMultiController/KMNLinkMultiController.xib
  5. 2 1
      PDF Office/PDF Master/KMClass/KMPDFViewController/KMMainViewController.swift
  6. 0 13
      PDF Office/PDF Master/KMClass/KMPDFViewController/KMPDFConfig.swift
  7. 1 1
      PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignHorizonal_dis.imageset/Contents.json
  8. 3 3
      PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignAverageVertical_dis.imageset/alignAverageVertical_dis.pdf
  9. 1 1
      PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignAverageVertical_dis.imageset/Contents.json
  10. 3 3
      PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignHorizonal_dis.imageset/alignHorizonal_dis.pdf
  11. 7 0
      PDF Office/PDF Master/KMClass/KMPDFViewController/RightSideController/KMRightSideController.swift
  12. 16 16
      PDF Office/PDF Reader Pro.xcodeproj/project.pbxproj

+ 19 - 22
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/KMLinkViewController.swift

@@ -43,7 +43,7 @@ import KMComponentLibrary
     
     private var annotation: CPDFLinkAnnotation? = nil
     
-    var multiController: KMNLinkMultiController = KMNLinkMultiController.init() //注释多选界面
+    var multiController: KMNMultiController = KMNMultiController.init() //注释多选界面
     
     let pageProperty = ComponentTabsProperty(tabsType: .underline_Fill, state: .normal, showIcon: false, title: NSLocalizedString("Page", comment: ""))
     let webProperty = ComponentTabsProperty(tabsType: .underline_Fill, state: .normal, showIcon: false, title: NSLocalizedString("Web", comment: ""))
@@ -125,14 +125,24 @@ import KMComponentLibrary
         if annotations.count == 0 {
             infoContendView.isHidden = true
         } else if annotations.count > 1 {
-            multiController.view.frame = infoContendView.bounds
-            multiController.view.autoresizingMask = [.width, .height]
+            multiController.view.frame = CGRectMake((CGRectGetWidth(infoContendView.frame) - 232)/2, CGRectGetHeight(infoContendView.frame)-112, 232, 112)
+            multiController.view.autoresizingMask = [.width, .maxYMargin]
             infoContendView.addSubview(multiController.view)
             
             multiController.view.isHidden = false
             tabsBGView.isHidden = true
             typeContendView.isHidden = true
             
+            if annotations.count > 2 {
+                multiController.aligHorizontalXButton.properties.isDisabled = false
+                multiController.aligVerticalYButton.properties.isDisabled = false
+            } else {
+                multiController.aligHorizontalXButton.properties.isDisabled = true
+                multiController.aligVerticalYButton.properties.isDisabled = true
+            }
+            multiController.aligHorizontalXButton.reloadData()
+            multiController.aligVerticalYButton.reloadData()
+            
         } else {
             multiController.view.isHidden = true
             tabsBGView.isHidden = false
@@ -301,26 +311,13 @@ extension KMLinkViewController: KMLinkEmailViewDelegate {
     
 }
 
-//MARK: - KMNLinkMultiControllerDelegate
-extension KMLinkViewController: KMNLinkMultiControllerDelegate {
-    func multiControllerDidClick(_ controller: KMNLinkMultiController, _ alignmentType: KMAnnotationsAlignmentType) {
- 
-        var alignType: KMPDFActiveFormsAlignType = .left
-        if alignmentType == .Left {
-            alignType = .left
-        } else if alignmentType == .XCenter {
-            alignType = .horizontally
-        } else if alignmentType == .Right {
-            alignType = .right
-        } else if alignmentType == .Top {
-            alignType = .top
-        } else if alignmentType == .YCenter {
-            alignType = .vertical
-        } else if alignmentType == .Bottom {
-            alignType = .bottom
-        }
+//MARK: - KMNMultiControllerDelegate
+extension KMLinkViewController: KMNMultiControllerDelegate {
+    func multiControllerDidClick(_ controller: KMNMultiController, _ alignmentType: KMPDFActiveFormsAlignType) {
+         
+        pdfView?.change(annotations, alignmentType: alignmentType)
         
-        pdfView?.change(annotations, alignmentType: alignType)
+        pdfView?.setNeedsDisplayForVisiblePages()
         
     }
 }

+ 3 - 2
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMLinkPageView/KMLinkPageView.swift

@@ -85,8 +85,9 @@ public class KMLinkPageView: BaseXibView {
         paginationView.delegate = self
         
         goButton.properties = ComponentButtonProperty(type: .default_tertiary,
-                                                           size: .s,
-                                                           buttonText: KMLocalizedString("Go"))
+                                                      size: .s,
+                                                      buttonText: KMLocalizedString("Go"),
+                                                      keepPressState: false)
         goButton.setTarget(self, action: #selector(buttonClicked(_:)))
     }
     

+ 29 - 24
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMNLinkMultiController/KMNLinkMultiController.swift

@@ -1,5 +1,5 @@
 //
-//  KMNLinkMultiController.swift
+//  KMNMultiController.swift
 //  PDF Reader Pro
 //
 //  Created by Niehaoyu on 2024/10/21.
@@ -8,13 +8,13 @@
 import Cocoa
 import KMComponentLibrary
 
-@objc protocol KMNLinkMultiControllerDelegate: AnyObject {
+@objc protocol KMNMultiControllerDelegate: AnyObject {
     
-    @objc optional func multiControllerDidClick(_ controller: KMNLinkMultiController, _ alignmentType: KMAnnotationsAlignmentType)
+    @objc optional func multiControllerDidClick(_ controller: KMNMultiController, _ alignmentType: KMPDFActiveFormsAlignType)
  
 }
  
-class KMNLinkMultiController: NSViewController {
+class KMNMultiController: NSViewController {
 
     @IBOutlet var contendBox: NSBox!
     @IBOutlet var titleLabel: NSTextField!
@@ -28,7 +28,7 @@ class KMNLinkMultiController: NSViewController {
     @IBOutlet var aligHorizontalXButton: ComponentButton!
     @IBOutlet var aligVerticalYButton: ComponentButton!
     
-    weak open var delegate: KMNLinkMultiControllerDelegate?
+    weak open var delegate: KMNMultiControllerDelegate?
     
     override func viewDidLoad() {
         super.viewDidLoad()
@@ -36,30 +36,30 @@ class KMNLinkMultiController: NSViewController {
         
         titleLabel.stringValue = KMLocalizedString("Alignment")
         
-        aligLeftButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligLeftButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligLeftButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignLeft")
         
-        aligLeftCenterButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligLeftCenterButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligLeftCenterButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignXCenter")
         
-        aligRightButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligRightButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligRightButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignRight")
         
-        aligTopButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligTopButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligTopButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignTop")
         
-        aligTopCenterButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligTopCenterButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligTopCenterButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignYCenter")
         
-        aligBottomButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
+        aligBottomButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
         aligBottomButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignBottom")
         
-        aligHorizontalXButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
-        aligHorizontalXButton.properties.propertyInfo.leftIcon_dis = NSImage(named: "alignHorizonal_dis")
+        aligHorizontalXButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
+        aligHorizontalXButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignHorizonal")
         aligHorizontalXButton.properties.isDisabled = true
         
-        aligVerticalYButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true)
-        aligVerticalYButton.properties.propertyInfo.leftIcon_dis = NSImage(named: "alignAverageVertical_dis")
+        aligVerticalYButton.properties = ComponentButtonProperty(type: .text_gray, size: .s, onlyIcon: true, keepPressState: false)
+        aligVerticalYButton.properties.propertyInfo.leftIcon_nor = NSImage(named: "alignAverageVertical")
         aligVerticalYButton.properties.isDisabled = true
         
         for button in [aligLeftButton, aligLeftCenterButton, aligRightButton, aligTopButton,
@@ -72,22 +72,27 @@ class KMNLinkMultiController: NSViewController {
     }
    
     @objc func buttonClicked(_ sender: ComponentButton) {
-        var alignmentType: KMAnnotationsAlignmentType = .None
+        var alignType: KMPDFActiveFormsAlignType = .left
+         
         if sender == aligLeftButton {
-            alignmentType = .Left
+            alignType = .left
         } else if sender == aligLeftCenterButton {
-            alignmentType = .XCenter
+            alignType = .horizontally
         } else if sender == aligRightButton {
-            alignmentType = .Right
+            alignType = .right
         } else if sender == aligTopButton {
-            alignmentType = .Top
+            alignType = .top
         } else if sender == aligTopCenterButton {
-            alignmentType = .YCenter
+            alignType = .vertical
         } else if sender == aligBottomButton {
-            alignmentType = .Bottom
+            alignType = .bottom
+        } else if sender == aligHorizontalXButton {
+            alignType = .disHorizontally
+        } else if sender == aligVerticalYButton {
+            alignType = .disVertical
         }
-        
-        delegate?.multiControllerDidClick?(self, alignmentType)
+       
+        delegate?.multiControllerDidClick?(self, alignType)
     }
     
 }

+ 9 - 9
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/KMLinkViewController/Views/KMNLinkMultiController/KMNLinkMultiController.xib

@@ -6,7 +6,7 @@
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
-        <customObject id="-2" userLabel="File's Owner" customClass="KMNLinkMultiController" customModule="PDF_Reader_Pro" customModuleProvider="target">
+        <customObject id="-2" userLabel="File's Owner" customClass="KMNMultiController">
             <connections>
                 <outlet property="aligBottomButton" destination="c5m-oJ-Mrg" id="cTD-cq-fos"/>
                 <outlet property="aligHorizontalXButton" destination="xex-s9-yRv" id="u2j-y5-9is"/>
@@ -24,20 +24,20 @@
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <customView id="Hz6-mo-xeY">
-            <rect key="frame" x="0.0" y="0.0" width="264" height="373"/>
+            <rect key="frame" x="0.0" y="0.0" width="232" height="112"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
             <subviews>
                 <box boxType="custom" borderWidth="0.0" title="Box" translatesAutoresizingMaskIntoConstraints="NO" id="wds-Gi-bXC">
-                    <rect key="frame" x="0.0" y="0.0" width="264" height="373"/>
+                    <rect key="frame" x="0.0" y="0.0" width="232" height="112"/>
                     <view key="contentView" id="68H-im-AUh">
-                        <rect key="frame" x="0.0" y="0.0" width="264" height="373"/>
+                        <rect key="frame" x="0.0" y="0.0" width="232" height="112"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <customView translatesAutoresizingMaskIntoConstraints="NO" id="uts-mo-cZM">
-                                <rect key="frame" x="0.0" y="333" width="264" height="40"/>
+                                <rect key="frame" x="0.0" y="72" width="232" height="40"/>
                                 <subviews>
-                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5ez-oE-1Ci">
-                                        <rect key="frame" x="14" y="12" width="37" height="16"/>
+                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5ez-oE-1Ci">
+                                        <rect key="frame" x="-2" y="12" width="37" height="16"/>
                                         <textFieldCell key="cell" lineBreakMode="clipping" title="Label" id="sSS-VW-cXZ">
                                             <font key="font" usesAppearanceFont="YES"/>
                                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -46,13 +46,13 @@
                                     </textField>
                                 </subviews>
                                 <constraints>
-                                    <constraint firstItem="5ez-oE-1Ci" firstAttribute="leading" secondItem="uts-mo-cZM" secondAttribute="leading" constant="16" id="J2Y-wA-fu9"/>
+                                    <constraint firstItem="5ez-oE-1Ci" firstAttribute="leading" secondItem="uts-mo-cZM" secondAttribute="leading" id="J2Y-wA-fu9"/>
                                     <constraint firstAttribute="height" constant="40" id="geO-eJ-2Ud"/>
                                     <constraint firstItem="5ez-oE-1Ci" firstAttribute="centerY" secondItem="uts-mo-cZM" secondAttribute="centerY" id="ndv-uT-XBn"/>
                                 </constraints>
                             </customView>
                             <customView translatesAutoresizingMaskIntoConstraints="NO" id="pR5-9r-pOd">
-                                <rect key="frame" x="16" y="261" width="232" height="72"/>
+                                <rect key="frame" x="0.0" y="0.0" width="232" height="72"/>
                                 <subviews>
                                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="JsC-iM-uae" customClass="ComponentButton" customModule="KMComponentLibrary">
                                         <rect key="frame" x="0.0" y="40" width="32" height="32"/>

+ 2 - 1
PDF Office/PDF Master/KMClass/KMPDFViewController/KMMainViewController.swift

@@ -2176,9 +2176,10 @@ extension KMMainViewController: CPDFViewDelegate,CPDFListViewDelegate {
                 if isSameAnnotation == false {
 
                 } else {
-                     
                     self.openRightPane()
                 }
+                
+                self.rightSideController?.reloadDataWithPDFView(pdfView: pdfListView)
             } else {
                 let fristAnnotation  = annotations.first
                 let className =  NSStringFromClass(fristAnnotation!.classForCoder)

+ 0 - 13
PDF Office/PDF Master/KMClass/KMPDFViewController/KMPDFConfig.swift

@@ -7,19 +7,6 @@
 
 import Cocoa
 
-//注释对齐方式
-@objc public enum KMAnnotationsAlignmentType: Int, CaseIterable {
-    case None = 0
-    case Left
-    case XCenter
-    case Right
-    case Top
-    case YCenter
-    case Bottom
-    case Horizontal
-    case Vertical
-}
-
 //工具类型
 @objc public enum KMPDFViewToolsType: Int, CaseIterable {
     case Select = 0

+ 1 - 1
PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignHorizonal_dis.imageset/Contents.json

@@ -1,7 +1,7 @@
 {
   "images" : [
     {
-      "filename" : "alignHorizonal_dis.pdf",
+      "filename" : "alignAverageVertical.pdf",
       "idiom" : "universal"
     }
   ],

+ 3 - 3
PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignAverageVertical_dis.imageset/alignAverageVertical_dis.pdf

@@ -10,8 +10,8 @@ stream
 /DeviceRGB CS
 /DeviceRGB cs
 q
--1.000000 0.000000 -0.000000 -1.000000 15.000001 18.000000 cm
-0.717647 0.729412 0.749020 scn
+-1.000000 0.000000 -0.000000 -1.000000 15.000001 14.000000 cm
+0.000000 0.000000 0.000000 scn
 0.000000 10.499999 m
 14.000000 10.500000 l
 14.000000 12.000000 l
@@ -44,7 +44,7 @@ endobj
 4 0 obj
   << /Annots []
      /Type /Page
-     /MediaBox [ 0.000000 0.000000 20.000000 20.000000 ]
+     /MediaBox [ 0.000000 0.000000 16.000000 16.000000 ]
      /Resources 1 0 R
      /Contents 2 0 R
      /Parent 5 0 R

+ 1 - 1
PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignAverageVertical_dis.imageset/Contents.json

@@ -1,7 +1,7 @@
 {
   "images" : [
     {
-      "filename" : "alignAverageVertical_dis.pdf",
+      "filename" : "alignAverageHorizontal.pdf",
       "idiom" : "universal"
     }
   ],

+ 3 - 3
PDF Office/PDF Master/KMClass/KMPDFViewController/PDFImages.xcassets/Alignment/alignHorizonal_dis.imageset/alignHorizonal_dis.pdf

@@ -10,8 +10,8 @@ stream
 /DeviceRGB CS
 /DeviceRGB cs
 q
-1.000000 0.000000 -0.000000 1.000000 2.000000 5.000000 cm
-0.717647 0.729412 0.749020 scn
+1.000000 0.000000 -0.000000 1.000000 2.000000 1.000000 cm
+0.000000 0.000000 0.000000 scn
 0.000000 0.000000 m
 0.000000 14.000000 l
 1.500000 14.000000 l
@@ -44,7 +44,7 @@ endobj
 4 0 obj
   << /Annots []
      /Type /Page
-     /MediaBox [ 0.000000 0.000000 20.000000 20.000000 ]
+     /MediaBox [ 0.000000 0.000000 16.000000 16.000000 ]
      /Resources 1 0 R
      /Contents 2 0 R
      /Parent 5 0 R

+ 7 - 0
PDF Office/PDF Master/KMClass/KMPDFViewController/RightSideController/KMRightSideController.swift

@@ -155,6 +155,13 @@ class KMRightSideController: NSViewController {
                 }
                 (contentViewController as! KMLinkViewController).annotations = linkAnnotations
                 (contentViewController as! KMLinkViewController).reloadData()
+                
+                if linkAnnotations.count == 0 {
+                    (contentViewController as! KMLinkViewController).view.isHidden = true
+                } else {
+                    (contentViewController as! KMLinkViewController).view.isHidden = false
+                }
+                
             }
             
         }

+ 16 - 16
PDF Office/PDF Reader Pro.xcodeproj/project.pbxproj

@@ -4188,12 +4188,12 @@
 		BB89DD7E2953F863007C3FFA /* KMWatermarkFileOutsideView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB89DD7D2953F863007C3FFA /* KMWatermarkFileOutsideView.swift */; };
 		BB89DD7F2953F863007C3FFA /* KMWatermarkFileOutsideView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB89DD7D2953F863007C3FFA /* KMWatermarkFileOutsideView.swift */; };
 		BB89DD802953F863007C3FFA /* KMWatermarkFileOutsideView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB89DD7D2953F863007C3FFA /* KMWatermarkFileOutsideView.swift */; };
-		BB8AA5382CC65C900084F183 /* KMNLinkMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNLinkMultiController.swift */; };
-		BB8AA5392CC65C900084F183 /* KMNLinkMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNLinkMultiController.swift */; };
-		BB8AA53A2CC65C900084F183 /* KMNLinkMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNLinkMultiController.swift */; };
-		BB8AA53B2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNLinkMultiController.xib */; };
-		BB8AA53C2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNLinkMultiController.xib */; };
-		BB8AA53D2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNLinkMultiController.xib */; };
+		BB8AA5382CC65C900084F183 /* KMNMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNMultiController.swift */; };
+		BB8AA5392CC65C900084F183 /* KMNMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNMultiController.swift */; };
+		BB8AA53A2CC65C900084F183 /* KMNMultiController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB8AA5362CC65C900084F183 /* KMNMultiController.swift */; };
+		BB8AA53B2CC65C900084F183 /* KMNMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNMultiController.xib */; };
+		BB8AA53C2CC65C900084F183 /* KMNMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNMultiController.xib */; };
+		BB8AA53D2CC65C900084F183 /* KMNMultiController.xib in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA5372CC65C900084F183 /* KMNMultiController.xib */; };
 		BB8AA53F2CC66E490084F183 /* PDFImages.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA53E2CC66E490084F183 /* PDFImages.xcassets */; };
 		BB8AA5402CC66E490084F183 /* PDFImages.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA53E2CC66E490084F183 /* PDFImages.xcassets */; };
 		BB8AA5412CC66E490084F183 /* PDFImages.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BB8AA53E2CC66E490084F183 /* PDFImages.xcassets */; };
@@ -7438,8 +7438,8 @@
 		BB897274294DC04F0045787C /* KMWatermartAdjectivePageRangeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMWatermartAdjectivePageRangeView.swift; sourceTree = "<group>"; };
 		BB897278294DFD1E0045787C /* KMWatermarkTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMWatermarkTextView.swift; sourceTree = "<group>"; };
 		BB89DD7D2953F863007C3FFA /* KMWatermarkFileOutsideView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMWatermarkFileOutsideView.swift; sourceTree = "<group>"; };
-		BB8AA5362CC65C900084F183 /* KMNLinkMultiController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMNLinkMultiController.swift; sourceTree = "<group>"; };
-		BB8AA5372CC65C900084F183 /* KMNLinkMultiController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KMNLinkMultiController.xib; sourceTree = "<group>"; };
+		BB8AA5362CC65C900084F183 /* KMNMultiController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMNMultiController.swift; sourceTree = "<group>"; };
+		BB8AA5372CC65C900084F183 /* KMNMultiController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = KMNMultiController.xib; sourceTree = "<group>"; };
 		BB8AA53E2CC66E490084F183 /* PDFImages.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = PDFImages.xcassets; sourceTree = "<group>"; };
 		BB8AA5422CC6711B0084F183 /* KMPDFConfig.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KMPDFConfig.swift; sourceTree = "<group>"; };
 		BB8B17312907B63D001C5EA5 /* CipherTextView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CipherTextView.swift; sourceTree = "<group>"; };
@@ -13520,8 +13520,8 @@
 		BB8AA5342CC65C310084F183 /* KMNLinkMultiController */ = {
 			isa = PBXGroup;
 			children = (
-				BB8AA5362CC65C900084F183 /* KMNLinkMultiController.swift */,
-				BB8AA5372CC65C900084F183 /* KMNLinkMultiController.xib */,
+				BB8AA5362CC65C900084F183 /* KMNMultiController.swift */,
+				BB8AA5372CC65C900084F183 /* KMNMultiController.xib */,
 			);
 			path = KMNLinkMultiController;
 			sourceTree = "<group>";
@@ -15406,7 +15406,7 @@
 				BBE788A22CBD2463008086E2 /* DropdownDemoVC.xib in Resources */,
 				9F0CB4622966C9E200007028 /* KMFormPropertPanelViewController.xib in Resources */,
 				BB10E16A2CDC94E300471D47 /* KMBGTemplateItem.xib in Resources */,
-				BB8AA53B2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */,
+				BB8AA53B2CC65C900084F183 /* KMNMultiController.xib in Resources */,
 				658FDBB52C9D90CE00EFA72E /* KMNoteFilterStateCollevtionViewItem.xib in Resources */,
 				BB5F8A1929BB15AD00365ADB /* pic_mail.pdf in Resources */,
 				9FDD0F962952FF4D000C4DAD /* $metadata.json in Resources */,
@@ -15992,7 +15992,7 @@
 				658FDBB62C9D90CE00EFA72E /* KMNoteFilterStateCollevtionViewItem.xib in Resources */,
 				AD1D481D2AFB6B96007AC1F0 /* KMMergeWindowController.xib in Resources */,
 				ADFCEB652B4FBFC50001EBAF /* ad_cancel_button00@2x.png in Resources */,
-				BB8AA53C2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */,
+				BB8AA53C2CC65C900084F183 /* KMNMultiController.xib in Resources */,
 				BB19A7532CB7C710008204DC /* KMHistoryFileThumbItem.xib in Resources */,
 				BBFE6E69293097A600142C01 /* KMPageRangePickerWindowController.xib in Resources */,
 				652E95532C6914770061FA40 /* KMLineAndBorderItemView.xib in Resources */,
@@ -16714,7 +16714,7 @@
 				9F56648C2988B16F00020985 /* KMTextfieldVC.xib in Resources */,
 				9FA607E328FD4C9F00B46586 /* KMHomePopViewController.xib in Resources */,
 				F356720A29AF184A00740FF3 /* CPDFListAnnotationNoteWindowController.xib in Resources */,
-				BB8AA53D2CC65C900084F183 /* KMNLinkMultiController.xib in Resources */,
+				BB8AA53D2CC65C900084F183 /* KMNMultiController.xib in Resources */,
 				658FDBB72C9D90CE00EFA72E /* KMNoteFilterStateCollevtionViewItem.xib in Resources */,
 				BB10FAF42AFE23BE00F18D65 /* LineInspector.xib in Resources */,
 				BB183DD62B4EAD5400F99C7E /* Ubuntu-Bold.ttf in Resources */,
@@ -18272,7 +18272,7 @@
 				BB4A94A42B04DA0C00940F8B /* KMGOCRManagerNew.swift in Sources */,
 				BB3D07632CD0821F00EB94DF /* KMPDFSplitView.swift in Sources */,
 				9F1FE3DE293EE51F00E952CA /* KMMainDocument.swift in Sources */,
-				BB8AA5382CC65C900084F183 /* KMNLinkMultiController.swift in Sources */,
+				BB8AA5382CC65C900084F183 /* KMNMultiController.swift in Sources */,
 				AD85D1A42AF09864000F4D28 /* KMHomeQuickToolsWindowController.swift in Sources */,
 				BBB9B31F299A5D6D004F3235 /* KMGoogleDriveManager.m in Sources */,
 				BB1BFF8E2AEA547B003EB179 /* NSButton+CustomAppearance.swift in Sources */,
@@ -19409,7 +19409,7 @@
 				BB7256B42CDB816100B6CE64 /* KMBackgroundPropertyController.swift in Sources */,
 				BB146FE5299DC0D100784A6A /* GTLRURITemplate.m in Sources */,
 				9F1FE4F129406E4700E952CA /* BackgroundGradientView.m in Sources */,
-				BB8AA5392CC65C900084F183 /* KMNLinkMultiController.swift in Sources */,
+				BB8AA5392CC65C900084F183 /* KMNMultiController.swift in Sources */,
 				BBAC26A52AFE134300563A08 /* KMToolbarItemPopViewController.swift in Sources */,
 				9F0CB4BE2977C06300007028 /* KMPropertiesPanelColorSubVC.swift in Sources */,
 				9F94617E2BD643720076574B /* KMTableAnnotation.m in Sources */,
@@ -20522,7 +20522,7 @@
 				ADE3C1A129A3894900793B13 /* KMSearchTableRowView.swift in Sources */,
 				BB2C845C2BAE6DC100AF6142 /* KMLeftMethodMode.swift in Sources */,
 				AD1CA41B2A061CE10070541F /* KMAnnotationScreenTypeViewItem.swift in Sources */,
-				BB8AA53A2CC65C900084F183 /* KMNLinkMultiController.swift in Sources */,
+				BB8AA53A2CC65C900084F183 /* KMNMultiController.swift in Sources */,
 				BBE0689C2CDDF137000512BC /* KMBatesTemplateController.swift in Sources */,
 				BB276A4E2B03760000AB5578 /* KMOperationQueue.swift in Sources */,
 				9F94617F2BD643720076574B /* KMTableAnnotation.m in Sources */,