Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. myTextField.wantsLayer = true
  2. myTextField.layer?.cornerRadius = 2.0
  3. myTextField.layer?.borderWidth = 1.0
  4. myTextField.layer?.borderColor = CGColor(red: 0.69, green: 0.69, blue: 0.69, alpha: 1.0)
  5.  
  6. class CustomTextFieldCell: NSTextFieldCell {
  7.  
  8. private static let padding: CGFloat = 3.0
  9.  
  10. override func cellSize(forBounds rect: NSRect) -> NSSize {
  11. var size = super.cellSize(forBounds: rect)
  12. size.height += (CustomTextFieldCell.padding * 2)
  13. return size
  14. }
  15.  
  16. override func titleRect(forBounds rect: NSRect) -> NSRect {
  17. return rect.insetBy(dx: CustomTextFieldCell.padding, dy: CustomTextFieldCell.padding)
  18. }
  19.  
  20. override func edit(withFrame rect: NSRect, in controlView: NSView, editor textObj: NSText, delegate: Any?, event: NSEvent?) {
  21. let insetRect = rect.insetBy(dx: CustomTextFieldCell.padding, dy: CustomTextFieldCell.padding)
  22. super.edit(withFrame: insetRect, in: controlView, editor: textObj, delegate: delegate, event: event)
  23. }
  24.  
  25. override func select(withFrame rect: NSRect, in controlView: NSView, editor textObj: NSText, delegate: Any?, start selStart: Int, length selLength: Int) {
  26. let insetRect = rect.insetBy(dx: CustomTextFieldCell.padding, dy: CustomTextFieldCell.padding)
  27. super.select(withFrame: insetRect, in: controlView, editor: textObj, delegate: delegate, start: selStart, length: selLength)
  28. }
  29.  
  30. override func drawInterior(withFrame cellFrame: NSRect, in controlView: NSView) {
  31. let insetRect = cellFrame.insetBy(dx: CustomTextFieldCell.padding, dy: CustomTextFieldCell.padding)
  32. super.drawInterior(withFrame: insetRect, in: controlView)
  33. }
  34.  
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement