|
@@ -146,6 +146,7 @@ class KMConvertBaseWindowController: KMNBaseWindowController {
|
|
|
}
|
|
|
|
|
|
self.updateBackAndNextButtonState()
|
|
|
+ self.pdfPreView?.reloadUI()
|
|
|
}
|
|
|
|
|
|
override func initSubViews() {
|
|
@@ -572,45 +573,48 @@ class KMConvertBaseWindowController: KMNBaseWindowController {
|
|
|
}
|
|
|
|
|
|
internal func updatePreView(pageRange: KMPageRange, pageString: String = "") {
|
|
|
-// let pages = self.getPages(pageRange, pageString: pageString)
|
|
|
-// if (pages == nil || pages!.isEmpty) {
|
|
|
-// let alert = NSAlert()
|
|
|
-// alert.alertStyle = .warning
|
|
|
-// alert.messageText = NSLocalizedString("Invalid page range or the page number is out of range. Please try again.", comment: "")
|
|
|
-// alert.runModal()
|
|
|
-// return
|
|
|
-// }
|
|
|
-// var indexs = IndexSet()
|
|
|
-// for i in 0 ..< self.prePDFView!.document.pageCount {
|
|
|
-// indexs.insert(IndexSet.Element(i))
|
|
|
-// }
|
|
|
-// self.prePDFView?.document.removePage(at: indexs)
|
|
|
-//
|
|
|
-// #if DEBUG
|
|
|
-// let pageIndexs = self.getPageIndexs(pageRange, pageString: pageString)
|
|
|
-// if (pageIndexs != nil) {
|
|
|
-// for i in pageIndexs! {
|
|
|
-//
|
|
|
-// KMPrint(i)
|
|
|
-// }
|
|
|
-// }
|
|
|
-// #endif
|
|
|
-//// self.prePDFView.document?.importPages(pageIndexs!, from: self.documentModel.document, at: 0)
|
|
|
-// for page in pages! {
|
|
|
-// self.prePDFView?.document.insertPageObject(page, at: self.prePDFView!.document.pageCount)
|
|
|
-// }
|
|
|
-// DispatchQueue.main.async {
|
|
|
-// self.prePDFView?.layoutDocumentView()
|
|
|
-// self.prePDFView?.setNeedsDisplayForVisiblePages()
|
|
|
-// self.prePDFView?.goToFirstPage(nil)
|
|
|
-//
|
|
|
-// let number: Int = Int(self.prePDFView!.document!.pageCount)
|
|
|
+ let pages = self.getPages(pageRange, pageString: pageString)
|
|
|
+ if (pages == nil || pages!.isEmpty) {
|
|
|
+ let alert = NSAlert()
|
|
|
+ alert.alertStyle = .warning
|
|
|
+ alert.messageText = NSLocalizedString("Invalid page range or the page number is out of range. Please try again.", comment: "")
|
|
|
+ alert.runModal()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var indexs = IndexSet()
|
|
|
+ let document = self.pdfPreView?.pdfPreView.pdfView.document
|
|
|
+ for i in 0 ..< document!.pageCount {
|
|
|
+ indexs.insert(IndexSet.Element(i))
|
|
|
+ }
|
|
|
+ document?.removePage(at: indexs)
|
|
|
+
|
|
|
+ #if DEBUG
|
|
|
+ let pageIndexs = self.getPageIndexs(pageRange, pageString: pageString)
|
|
|
+ if (pageIndexs != nil) {
|
|
|
+ for i in pageIndexs! {
|
|
|
+
|
|
|
+ KMPrint(i)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+// self.prePDFView.document?.importPages(pageIndexs!, from: self.documentModel.document, at: 0)
|
|
|
+ for page in pages! {
|
|
|
+ document?.insertPageObject(page, at: document?.pageCount ?? 0)
|
|
|
+ }
|
|
|
+ DispatchQueue.main.async {
|
|
|
+ let prePDFView = self.pdfPreView?.pdfPreView.pdfView
|
|
|
+ prePDFView?.layoutDocumentView()
|
|
|
+ prePDFView?.setNeedsDisplayForVisiblePages()
|
|
|
+ prePDFView?.goToFirstPage(nil)
|
|
|
+
|
|
|
+ let number: Int = Int(prePDFView!.document!.pageCount)
|
|
|
// self.totalNumberLabel.stringValue = "\(number)"
|
|
|
-// self.currentPageIndex = 1
|
|
|
+ self.currentPageIndex = 1
|
|
|
// self.numberTextField.stringValue = "1"
|
|
|
-//
|
|
|
-// self.updateBackAndNextButtonState()
|
|
|
-// }
|
|
|
+
|
|
|
+ self.updateBackAndNextButtonState()
|
|
|
+ self.pdfPreView?.reloadUI()
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private func getPageIndexs(_ pageRange: KMPageRange, pageString: String = "") -> IndexSet? {
|
|
@@ -698,10 +702,10 @@ class KMConvertBaseWindowController: KMNBaseWindowController {
|
|
|
pages.append(page!)
|
|
|
}
|
|
|
} else if (pageRange == .current) {
|
|
|
-// let page = self.prePDFView?.currentPage()
|
|
|
-// if (page != nil) {
|
|
|
-// pages.append(page!)
|
|
|
-// }
|
|
|
+ let page = self.pdfPreView?.pdfPreView.pdfView.currentPage()
|
|
|
+ if (page != nil) {
|
|
|
+ pages.append(page!)
|
|
|
+ }
|
|
|
} else if (pageRange == .custom) {
|
|
|
let array = self.findSelectPage(pageRangeString: pageString)
|
|
|
if array.count == 0 {
|