// // RoundedSecuredTextFieldCell.swift // Cyberlock // // Created by Juraldinio on 8/31/19. // Copyright © 2019 Omicronmedia. All rights reserved. // import Foundation import AppKit final class RoundedSecuredTextFieldCell: NSSecureTextFieldCell { // swiftlint:disable unused_setter_value override var wraps: Bool { get { return false } set { print("set wraps") } } override var isScrollable: Bool { get { return true } set { print("set isScrollable") } } // swiftlint:enaable unused_setter_value override func titleRect(forBounds rect: NSRect) -> NSRect { var titleRect = super.titleRect(forBounds: rect) let titleSize = self.attributedStringValue.size() // Padding on left side titleRect.origin.x = 10 // Padding on right side titleRect.origin.y += (titleRect.size.height - titleSize.height) / 2.0 - 3 return titleRect } override func drawInterior(withFrame cellFrame: NSRect, in controlView: NSView) { let titleRect = self.titleRect(forBounds: cellFrame) super.drawInterior(withFrame: titleRect, in: controlView) } override func edit(withFrame rect: NSRect, in controlView: NSView, editor textObj: NSText, delegate: Any?, event: NSEvent?) { let titleRect = self.titleRect(forBounds: rect) super.edit(withFrame: titleRect, in: controlView, editor: textObj, delegate: delegate, event: event) } override func select(withFrame rect: NSRect, in controlView: NSView, editor textObj: NSText, delegate: Any?, start selStart: Int, length selLength: Int) { let titleRect = self.titleRect(forBounds: rect) super.select(withFrame: titleRect, in: controlView, editor: textObj, delegate: delegate, start: selStart, length: selLength) } }