|
@@ -8,7 +8,7 @@
|
|
|
import Foundation
|
|
|
|
|
|
extension KMMainViewController {
|
|
|
- func search(searchString:String,isCase:Bool) {
|
|
|
+ func search(searchString: String, isCase: Bool) {
|
|
|
let document = self.listView.document
|
|
|
if ((document?.isFinding) != nil) {
|
|
|
document?.cancelFindString()
|
|
@@ -19,42 +19,24 @@ extension KMMainViewController {
|
|
|
self.leftSideViewController.searchViewController.reloadData()
|
|
|
} else {
|
|
|
mwcFlags.wholeWordSearch = isCase == true ? 1 : 0
|
|
|
- if mwcFlags.wholeWordSearch != 0 {
|
|
|
- let words = KMOCToolClass.scannerCharaterString(searchString)!
|
|
|
- var string = words.firstObject as? String
|
|
|
- if string == nil {
|
|
|
- string = ""
|
|
|
- }
|
|
|
- let findArray : [[CPDFSelection]] = self.listView.document.findString(string) ?? []
|
|
|
- self.searchResults.removeAll()
|
|
|
- for selections in findArray {
|
|
|
- for selection in selections {
|
|
|
-// if KMOCToolClass.wholeWord(with: selection, keyword: searchString) {
|
|
|
- let mode : KMSearchMode = KMSearchMode()
|
|
|
- mode.selection = selection
|
|
|
- mode.attributedString = KMOCToolClass.getAttributedString(with: selection, keyword: searchString)
|
|
|
- mode.selectionPageIndex = self.listView.document.index(for: selection.page)
|
|
|
- self.searchResults.insert(mode, at: self.searchResults.count)
|
|
|
-// }
|
|
|
- }
|
|
|
- }
|
|
|
- self.leftSideViewController.searchViewController.searchResults = self.searchResults
|
|
|
- self.leftSideViewController.searchViewController.reloadData()
|
|
|
+ var findArray : [[CPDFSelection]]
|
|
|
+ if isCase {
|
|
|
+ findArray = self.listView.document.findString(searchString) ?? []
|
|
|
} else {
|
|
|
- let findArray : [[CPDFSelection]] = self.listView.document.findString(searchString) ?? []
|
|
|
- self.searchResults.removeAll()
|
|
|
- for selections in findArray {
|
|
|
- for selection in selections {
|
|
|
- let mode : KMSearchMode = KMSearchMode()
|
|
|
- mode.selection = selection
|
|
|
- mode.attributedString = KMOCToolClass.getAttributedString(with: selection, keyword: searchString)
|
|
|
- mode.selectionPageIndex = self.listView.document.index(for: selection.page)
|
|
|
- self.searchResults.insert(mode, at: self.searchResults.count)
|
|
|
- }
|
|
|
+ findArray = self.listView.document.findString(searchString, with: .caseSensitive) ?? []
|
|
|
+ }
|
|
|
+ self.searchResults.removeAll()
|
|
|
+ for selections in findArray {
|
|
|
+ for selection in selections {
|
|
|
+ let mode : KMSearchMode = KMSearchMode()
|
|
|
+ mode.selection = selection
|
|
|
+ mode.attributedString = KMOCToolClass.getAttributedString(with: selection, keyword: searchString)
|
|
|
+ mode.selectionPageIndex = self.listView.document.index(for: selection.page)
|
|
|
+ self.searchResults.insert(mode, at: self.searchResults.count)
|
|
|
}
|
|
|
- self.leftSideViewController.searchViewController.searchResults = self.searchResults
|
|
|
- self.leftSideViewController.searchViewController.reloadData()
|
|
|
}
|
|
|
+ self.leftSideViewController.searchViewController.searchResults = self.searchResults
|
|
|
+ self.leftSideViewController.searchViewController.reloadData()
|
|
|
}
|
|
|
}
|
|
|
|