123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- //
- // KMCreatPDFView.swift
- // PDF Reader Pro
- //
- // Created by lizhe on 2023/10/23.
- //
- import Cocoa
- typealias KMCreatPDFViewOpenPDFAction = (_ view: KMCreatPDFView, _ sender: KMBox) -> Void
- typealias KMCreatPDFViewCreatAction = (_ view: KMCreatPDFView, _ sender: KMBox) -> Void
- class KMCreatPDFView: KMBaseXibView {
- @IBOutlet weak var openBox: KMBox!
- @IBOutlet weak var openLabel: NSTextField!
- @IBOutlet weak var creatBox: KMBox!
- @IBOutlet weak var creatLabel: NSTextField!
-
- var openPDFAction: KMCreatPDFViewOpenPDFAction?
- var creatPDFAction: KMCreatPDFViewCreatAction?
-
-
- override func draw(_ dirtyRect: NSRect) {
- super.draw(dirtyRect)
- // Drawing code here.
- }
-
- override func setup() {
- self.openLabel.stringValue = NSLocalizedString("Open File", comment: "")
- self.openLabel.textColor = KMAppearance.Layout.w0Color()
- self.creatLabel.stringValue = NSLocalizedString("Create PDF", comment: "")
-
- if KMAppearance.isDarkMode() {
- self.creatLabel.textColor = NSColor.white
- } else {
- self.creatLabel.textColor = KMAppearance.Interactive.m0Color()
- }
-
- self.openBox.fillColor = KMAppearance.Interactive.m0Color()
- self.openBox.toolTip = NSLocalizedString("Open PDF", comment: "")
- self.openBox.downCallback = { [unowned self] downEntered, mouseBox, event in
- if (downEntered) {
- self.openBox.fillColor = KMAppearance.Interactive.m_1Color()
- self.openPDFButtonAction()
- } else {
- self.openBox.fillColor = KMAppearance.Interactive.m0Color()
- }
- };
-
- self.openBox.moveCallback = { [unowned self] mouseEntered, mouseBox in
- if (mouseEntered) {
- self.openBox.fillColor = KMAppearance.Interactive.m1Color()
- } else {
- self.openBox.fillColor = KMAppearance.Interactive.m0Color()
- }
- };
-
- self.creatBox.toolTip = NSLocalizedString("Create PDF", comment: "")
- self.creatBox.fillColor = KMAppearance.Layout.l0Color()
- self.creatBox.borderWidth = 1.0;
- self.creatBox.borderColor = KMAppearance.Interactive.m0Color()
- self.creatBox.downCallback = { [unowned self] downEntered, mouseBox, event in
- if (downEntered) {
- self.creatBox.fillColor = KMAppearance.Status.preColor()
- self.createPDFButtonAction()
- } else {
- self.creatBox.fillColor = KMAppearance.Layout.l0Color()
- }
- };
-
- self.creatBox.moveCallback = { [unowned self] mouseEntered, mouseBox in
- if (mouseEntered) {
- self.creatBox.fillColor = KMAppearance.Status.hovColor()
- } else {
- self.creatBox.fillColor = KMAppearance.Layout.l0Color()
- }
- };
- }
-
- @objc func openPDFButtonAction() {
- guard let callBack = openPDFAction else { return }
-
- callBack(self, self.openBox)
- }
-
- @objc func createPDFButtonAction() {
- guard let callBack = creatPDFAction else { return }
-
- callBack(self, self.creatBox)
- }
-
- }
|