|
@@ -113,9 +113,9 @@ class KMEditImagePropertyViewController: NSViewController {
|
|
|
// @IBOutlet weak var headerBoxMaginWidthConstraint: NSLayoutConstraint!
|
|
|
|
|
|
@IBOutlet weak var whTitleLabel: NSTextField!
|
|
|
- @IBOutlet weak var wTextFieldItemView: KMTextFieldItemView!
|
|
|
+ @IBOutlet weak var wTextFieldItemView: KMCustomTextField!
|
|
|
@IBOutlet weak var whBox: NSBox!
|
|
|
- @IBOutlet weak var hTextFieldItemView: KMTextFieldItemView!
|
|
|
+ @IBOutlet weak var hTextFieldItemView: KMCustomTextField!
|
|
|
|
|
|
var whVC: KMDesignButton?
|
|
|
|
|
@@ -269,14 +269,43 @@ class KMEditImagePropertyViewController: NSViewController {
|
|
|
// self.imageBox.backgroundColor(KMAppearance.Layout.l1Color())
|
|
|
|
|
|
self.whTitleLabel.stringValue = NSLocalizedString("Size", comment: "")
|
|
|
- for itemView in [self.wTextFieldItemView, self.hTextFieldItemView, self.rotateTextFieldItemView] {
|
|
|
- itemView?.wantsLayer = true
|
|
|
- itemView?.layer?.cornerRadius = 4
|
|
|
- itemView?.layer?.borderWidth = 1
|
|
|
- itemView?.layer?.borderColor = NSColor(hex: "#DFE1E5").cgColor
|
|
|
- }
|
|
|
- self.wTextFieldItemView.unitIcon = NSImage(named: "KMImageNameEditPDFWidthIcon")
|
|
|
- self.hTextFieldItemView.unitIcon = NSImage(named: "KMImageNameEditPDFHeightIcon")
|
|
|
+ self.wTextFieldItemView.backgroundView.wantsLayer = true
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.backgroundColor = .white
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderWidth = 1
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#DFE1E5").cgColor
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.cornerRadius = 4
|
|
|
+ self.wTextFieldItemView.delegate = self
|
|
|
+ self.wTextFieldItemView.offset = 8
|
|
|
+ self.wTextFieldItemView.rightViewMode = .always
|
|
|
+ let wRightView = NSView()
|
|
|
+ wRightView.frame = NSMakeRect(0, 0, 24, 32)
|
|
|
+ let wIv = NSImageView()
|
|
|
+ wIv.frame = NSMakeRect(0, 8, 16, 16)
|
|
|
+ wIv.image = NSImage(named: "KMImageNameEditPDFWidthIcon")
|
|
|
+ wRightView.addSubview(wIv)
|
|
|
+ self.wTextFieldItemView.rightView = wRightView
|
|
|
+ var formatter = NumberFormatter()
|
|
|
+ formatter.numberStyle = .decimal
|
|
|
+// formatter.maximumFractionDigits = 1
|
|
|
+// formatter.minimumFractionDigits = 1
|
|
|
+ formatter.maximum = NSNumber(value: 999)
|
|
|
+ formatter.minimum = NSNumber(value: 1)
|
|
|
+ self.wTextFieldItemView.textFiled.formatter = formatter
|
|
|
+
|
|
|
+ self.hTextFieldItemView.backgroundView.wantsLayer = true
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.backgroundColor = .white
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.borderWidth = 1
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#DFE1E5").cgColor
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.cornerRadius = 4
|
|
|
+ self.hTextFieldItemView.delegate = self
|
|
|
+ let hRightView = NSView()
|
|
|
+ hRightView.frame = NSMakeRect(0, 0, 24, 32)
|
|
|
+ let hIv = NSImageView()
|
|
|
+ hIv.frame = NSMakeRect(0, 8, 16, 16)
|
|
|
+ hIv.image = NSImage(named: "KMImageNameEditPDFHeightIcon")
|
|
|
+ hRightView.addSubview(hIv)
|
|
|
+ self.hTextFieldItemView.rightView = hRightView
|
|
|
+ self.hTextFieldItemView.rightViewMode = .always
|
|
|
|
|
|
self.alignmentView.didChange = {[unowned self] view, areasArray, boundsArray in
|
|
|
self.changeAreasAlign(areas: areasArray, newBounds: boundsArray)
|
|
@@ -960,6 +989,58 @@ extension KMEditImagePropertyViewController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+extension KMEditImagePropertyViewController: KMTextFieldDelegate {
|
|
|
+ func km_didBecomeFirstResponder(textField: AnyObject) {
|
|
|
+ if self.wTextFieldItemView.isEqual(to: textField) {
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.backgroundColor = .white
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderWidth = 1
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#4982E6").cgColor
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.cornerRadius = 4
|
|
|
+ } else if self.hTextFieldItemView.isEqual(to: textField) {
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#4982E6").cgColor
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ func km_controlTextDidEndEditing(textField: AnyObject) {
|
|
|
+ if self.wTextFieldItemView.isEqual(to: textField) {
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.backgroundColor = .white
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderWidth = 1
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#DFE1E5").cgColor
|
|
|
+ self.wTextFieldItemView.backgroundView.layer?.cornerRadius = 4
|
|
|
+
|
|
|
+ let value = self.wTextFieldItemView.stringValue?.stringToCGFloat() ?? 0
|
|
|
+ let ss = String(format: "%.1f", value)
|
|
|
+ self.wTextFieldItemView.stringValue = ss
|
|
|
+ } else if self.hTextFieldItemView.isEqual(to: textField) {
|
|
|
+ self.hTextFieldItemView.backgroundView.layer?.borderColor = NSColor(hex: "#DFE1E5").cgColor
|
|
|
+
|
|
|
+ let value = self.hTextFieldItemView.stringValue?.stringToCGFloat() ?? 0
|
|
|
+ let ss = String(format: "%.1f", value)
|
|
|
+ self.hTextFieldItemView.stringValue = ss
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ func km_controlTextDidChange(textField: AnyObject) {
|
|
|
+ if self.wTextFieldItemView.isEqual(to: textField) {
|
|
|
+// let value = self.wTextFieldItemView.stringValue?.stringToCGFloat() ?? 0
|
|
|
+// let ss = String(format: "%.1f", value)
|
|
|
+// self.wTextFieldItemView.stringValue = ss
|
|
|
+
|
|
|
+ let number = NSNumber(value: Int(self.wTextFieldItemView.stringValue ?? "") ?? 0)
|
|
|
+ let string = self.wTextFieldItemView.textFiled.formatter?.string(for: number)
|
|
|
+ let s = Int(string ?? "")
|
|
|
+// if s != 0 {
|
|
|
+// self.currentPageIndex = (s ?? 0) - 1
|
|
|
+// }
|
|
|
+ self.wTextFieldItemView.stringValue = string ?? ""
|
|
|
+ } else if self.hTextFieldItemView.isEqual(to: textField) {
|
|
|
+ let number = NSNumber(value: Int(self.hTextFieldItemView.stringValue ?? "") ?? 0)
|
|
|
+ let string = self.hTextFieldItemView.textFiled.formatter?.string(for: number)
|
|
|
+ self.hTextFieldItemView.stringValue = string ?? ""
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
class CustomSliderCell: NSSliderCell {
|
|
|
var knobImage: NSImage?
|
|
|
|