|
@@ -74,8 +74,10 @@ class KMNDisplayViewController: NSViewController {
|
|
|
@IBOutlet var boxHeightConst: NSLayoutConstraint!
|
|
|
|
|
|
private var themesArray: [NSColor] = []
|
|
|
- private var themeEditItem: ComponentCColorItem?
|
|
|
+ private var themeEditItem: ComponentCColorItem?
|
|
|
|
|
|
+ var isCustomSelected = false //防止多个相同的自定义颜色item,出现同时选中的情况,
|
|
|
+
|
|
|
var pdfView: CPDFListView?
|
|
|
var viewManager: KMPDFViewManager?
|
|
|
|
|
@@ -395,26 +397,19 @@ class KMNDisplayViewController: NSViewController {
|
|
|
colorItem.properties?.identifier = "custom"
|
|
|
}
|
|
|
|
|
|
- if pdfView?.displayMode == .normal {
|
|
|
- if index == 0 {
|
|
|
- colorItem.properties?.state = .pressed
|
|
|
- }
|
|
|
- } else if pdfView?.displayMode == .soft {
|
|
|
- if index == 1 {
|
|
|
- colorItem.properties?.state = .pressed
|
|
|
- }
|
|
|
- } else if pdfView?.displayMode == .night {
|
|
|
- if index == 3 {
|
|
|
- colorItem.properties?.state = .pressed
|
|
|
- }
|
|
|
- } else if pdfView?.displayMode == .green {
|
|
|
- if index == 2 {
|
|
|
- colorItem.properties?.state = .pressed
|
|
|
- }
|
|
|
- } else if pdfView?.displayMode == .custom {
|
|
|
- if color == pdfView?.displayModeCustomColor {
|
|
|
- colorItem.properties?.state = .pressed
|
|
|
- }
|
|
|
+ if pdfView?.displayMode == .normal && index == 0 {
|
|
|
+ colorItem.properties?.state = .pressed
|
|
|
+ } else if pdfView?.displayMode == .soft && index == 1 {
|
|
|
+ colorItem.properties?.state = .pressed
|
|
|
+ } else if pdfView?.displayMode == .night && index == 3 {
|
|
|
+ colorItem.properties?.state = .pressed
|
|
|
+ } else if pdfView?.displayMode == .green && index == 2 {
|
|
|
+ colorItem.properties?.state = .pressed
|
|
|
+ } else if pdfView?.displayMode == .custom && color == pdfView?.displayModeCustomColor && isCustomSelected == false {
|
|
|
+ colorItem.properties?.state = .pressed
|
|
|
+ isCustomSelected = true
|
|
|
+ } else {
|
|
|
+ colorItem.properties?.state = .normal
|
|
|
}
|
|
|
colorItem.reloadData()
|
|
|
themesContendView.addSubview(colorItem)
|
|
@@ -438,13 +433,22 @@ class KMNDisplayViewController: NSViewController {
|
|
|
func refreshColorItems() {
|
|
|
let subviews = themesContendView.subviews
|
|
|
for view in subviews {
|
|
|
- if view is ComponentCColorItem {
|
|
|
- if (view as! ComponentCColorItem).properties?.color == pdfView?.displayModeCustomColor {
|
|
|
- (view as! ComponentCColorItem).properties?.state = .pressed
|
|
|
+ if let item = view as? ComponentCColorItem {
|
|
|
+ if item.properties?.identifier == "normal" && pdfView?.displayMode == .normal {
|
|
|
+ item.properties?.state = .pressed
|
|
|
+ } else if item.properties?.identifier == "soft" && pdfView?.displayMode == .soft {
|
|
|
+ item.properties?.state = .pressed
|
|
|
+ } else if item.properties?.identifier == "night" && pdfView?.displayMode == .night {
|
|
|
+ item.properties?.state = .pressed
|
|
|
+ } else if item.properties?.identifier == "green" && pdfView?.displayMode == .green {
|
|
|
+ item.properties?.state = .pressed
|
|
|
+ } else if pdfView?.displayMode == .custom && item.properties?.color == pdfView?.displayModeCustomColor && isCustomSelected == false {
|
|
|
+ item.properties?.state = .pressed
|
|
|
+ isCustomSelected = true
|
|
|
} else {
|
|
|
- (view as! ComponentCColorItem).properties?.state = .normal
|
|
|
- }
|
|
|
- (view as! ComponentCColorItem).reloadData()
|
|
|
+ item.properties?.state = .normal
|
|
|
+ }
|
|
|
+ item.reloadData()
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -661,7 +665,7 @@ class KMNDisplayViewController: NSViewController {
|
|
|
}
|
|
|
|
|
|
//MARK: - Mouse
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
//MARK: - ComponentCColorDelegate
|
|
@@ -708,13 +712,13 @@ extension KMNDisplayViewController: ComponentCColorDelegate {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
func componentCColorDidRightMouseUpWithStrings(_ view: NSView) -> [String] {
|
|
|
let subviews = themesContendView.subviews
|
|
|
let index = subviews.firstIndex(of: view) ?? 0
|
|
|
|
|
|
if index <= 3 {
|
|
|
-
|
|
|
+
|
|
|
} else {
|
|
|
if view is ComponentCColorItem {
|
|
|
if (view as! ComponentCColorItem) != themeEditItem {
|
|
@@ -733,9 +737,10 @@ extension KMNDisplayViewController: ComponentCColorDelegate {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- setUpThemesItems()
|
|
|
+ self.pdfView?.setPageBackgroundColorWith(NSColor.white, viewMode: .normal)
|
|
|
|
|
|
- saveThemeColors()
|
|
|
+ self.setUpThemesItems()
|
|
|
|
|
|
+ self.saveThemeColors()
|
|
|
}
|
|
|
}
|