Browse Source

【打印】小册子 - 按钮响应数据调试

lizhe 1 year ago
parent
commit
aaa40665eb

+ 5 - 5
PDF Office/PDF Master/Class/PDFTools/Print/Presenter/KMPrintPresenter.swift

@@ -162,19 +162,19 @@ extension KMPrintPresenter: KMPrintPresenterDocument {
                 }
                 
                 if i % 2 != 0 {
-                    var temp = page2
+                    let temp = page2
                     page2 = page
                     page = temp
                 }
                 
-                var pageCropRect = self.fetchPageCropRect(paperSize,i % pageRepetitionCount, pageModel, page)
-                var pageShowRect = pageCropRect
+                let pageCropRect = self.fetchPageCropRect(paperSize,i % pageRepetitionCount, pageModel, page)
+                let pageShowRect = pageCropRect
                 page.cropRect = pageCropRect
                 page.showRect = pageShowRect
                 tempPags.append(page)
                 
-                var pageCropRect2 = self.fetchPageCropRect(paperSize,i % pageRepetitionCount, pageModel, page2)
-                var pageShowRect2 = pageCropRect
+                let pageCropRect2 = self.fetchPageCropRect(paperSize,i % pageRepetitionCount, pageModel, page2)
+                let pageShowRect2 = pageCropRect
                 page2.cropRect = pageCropRect2
                 page2.showRect = pageShowRect2
                 tempPags.append(page2)

+ 31 - 11
PDF Office/PDF Master/Class/PDFTools/Print/View/PrintSettingView/View/Pamphlet/KMPrintPamphletView.swift

@@ -112,6 +112,22 @@ class KMPrintPamphletView: KMBaseXibView, NSComboBoxDelegate {
     }
     
     override func reloadData() {
+        let model = viewModel.model
+        
+        self.bookletPageRangeComboBox.selectItem(withObjectValue: model.page.range.type.rawValue)
+        self.bookletCommentFormsComboBox.selectItem(withObjectValue: model.page.contentType.rawValue)
+        self.bookletBindingComboBox.selectItem(withObjectValue: model.page.operation.pamphlet.bookbindingType.rawValue)
+        self.bookletPageSizeComboBox.selectItem(withObjectValue: model.paper.info.type.rawValue)
+        self.bookletSubsetComboBox.selectItem(withObjectValue: model.page.operation.pamphlet.type.rawValue)
+        self.bookletUnitComboBox.selectItem(withObjectValue: model.paper.info.unit.rawValue)
+        
+        pageWidthTextField.stringValue = model.paper.info.size.width.description
+        pageHeightTextField.stringValue = model.paper.info.size.height.description
+        
+        bookletPageGapTextField.stringValue = String(format: "%.1f", model.page.operation.pamphlet.margin)
+        
+        bookletSheetStartTextField.stringValue =  model.page.operation.pamphlet.pageIndex.description
+        bookletSheetEndTextField.stringValue = model.page.operation.pamphlet.toPageIndex.description
         
     }
     
@@ -161,18 +177,21 @@ extension KMPrintPamphletView {
         var range: KMPrintPageRange = KMPrintPageRange()
         if sender.indexOfSelectedItem == 0 ||
             sender.indexOfSelectedItem == 1 ||
-            sender.indexOfSelectedItem == 2 {
+            sender.indexOfSelectedItem == 2 ||
+            sender.indexOfSelectedItem == 3 {
             if sender.indexOfSelectedItem == 0 {
                 range.type = .allPage
             } else if sender.indexOfSelectedItem == 1 {
-                range.type = .oddPage
+                range.type = .currentPage
             } else if sender.indexOfSelectedItem == 2 {
+                range.type = .oddPage
+            } else if sender.indexOfSelectedItem == 3 {
                 range.type = .evenPage
             }
             
             sender.delegate = nil
             sender.isEditable = false
-        } else if sender.indexOfSelectedItem == 3 {
+        } else if sender.indexOfSelectedItem == 4 {
             sender.delegate = self
             sender.stringValue = ""
             sender.isEditable = true
@@ -282,14 +301,15 @@ extension KMPrintPamphletView {
         let string = object.stringValue
 
         if object.isEqual(self.bookletPageGapTextField) {
-            if let floatValue = Float(string), floatValue <= 0 {
-                self.bookletPageGapTextField.stringValue = "0"
-                self.bookletPagesGapStepper.floatValue = floatValue
-                
-                self.viewModel.pamphletPagesGapChangeAction(value: floatValue.cgFloat) { success, model in
-                    if success {
-                        self.updatePDFView()
-                    }
+            var floatValue = Float(string) ?? 0
+            if floatValue <= 0 {
+                floatValue = 0
+            }
+            
+            self.bookletPagesGapStepper.floatValue = floatValue
+            self.viewModel.pamphletPagesGapChangeAction(value: floatValue.cgFloat) { success, model in
+                if success {
+                    self.updatePDFView()
                 }
             }
         } else if object.isEqual(self.bookletSheetStartTextField) {

+ 1 - 1
PDF Office/PDF Master/Class/PDFTools/Print/View/PrintSettingView/View/Pamphlet/KMPrintPamphletView.xib

@@ -223,7 +223,7 @@
                 </textField>
                 <stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="x6b-Xn-y0s">
                     <rect key="frame" x="369" y="171" width="19" height="28"/>
-                    <stepperCell key="cell" continuous="YES" alignment="left" increment="0.10000000000000001" maxValue="1000" doubleValue="1" id="gjW-ES-9bR"/>
+                    <stepperCell key="cell" continuous="YES" alignment="left" increment="0.10000000000000001" maxValue="1000" id="gjW-ES-9bR"/>
                     <connections>
                         <action selector="bookletStepperClicked_PagesGap:" target="-2" id="4na-QN-FH4"/>
                     </connections>