123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- //
- // KMNewUserGuideCellView.swift
- // PDF Reader Pro
- //
- // Created by User-Tangchao on 2024/12/19.
- //
- import Cocoa
- class KMNewUserGuideCellView: NSTableCellView {
- private lazy var contentBox_: NSBox = {
- let view = NSBox()
- view.boxType = .custom
- view.titlePosition = .noTitle
- view.borderWidth = 0
- view.contentViewMargins = .zero
- return view
- }()
-
- private lazy var backgroundView_: NSView = {
- let view = NSView()
- view.wantsLayer = true
- return view
- }()
-
- private lazy var titleLabel_: NSTextField = {
- let view = NSTextField(wrappingLabelWithString: "")
- return view
- }()
-
- private lazy var subTitleLabel_: NSTextField = {
- let view = NSTextField(wrappingLabelWithString: "")
- return view
- }()
-
- private lazy var leftLine_: NSView = {
- let view = NSView()
- view.wantsLayer = true
- return view
- }()
-
- var contentBox: NSBox {
- get {
- return contentBox_
- }
- }
-
- var backgroundView: NSView {
- get {
- return backgroundView_
- }
- }
-
- var titleLabel: NSTextField {
- get {
- return titleLabel_
- }
- }
-
- var subTitleLabel: NSTextField {
- get {
- return subTitleLabel_
- }
- }
-
- var leftLine: NSView {
- get {
- return leftLine_
- }
- }
-
- var contentInset: NSEdgeInsets = .init(top: 0, left: 0, bottom: 0, right: 0) {
- didSet {
- leftConst_?.constant = contentInset.left
- rightConst_?.constant = -contentInset.right
- topConst_?.constant = contentInset.top
- bottomConst_?.constant = -contentInset.bottom
- }
- }
-
- private var leftConst_: NSLayoutConstraint?
- private var topConst_: NSLayoutConstraint?
- private var rightConst_: NSLayoutConstraint?
- private var bottomConst_: NSLayoutConstraint?
-
- convenience init() {
- self.init(frame: .init(x: 0, y: 0, width: 200, height: 30))
-
- initSubviews()
- }
-
- override func awakeFromNib() {
- super.awakeFromNib()
-
- initSubviews()
- }
-
- func initSubviews() {
- addSubview(contentBox)
- // contentBox.km_add_inset_constraint()
- leftConst_ = contentBox.km_add_leading_constraint_r()
- topConst_ = contentBox.km_add_top_constraint_r()
- rightConst_ = contentBox.km_add_trailing_constraint_r()
- bottomConst_ = contentBox.km_add_bottom_constraint_r()
-
- contentBox_.contentView?.addSubview(backgroundView)
- backgroundView.km_add_inset_constraint()
-
- contentBox.contentView?.addSubview(titleLabel)
- contentBox.contentView?.addSubview(subTitleLabel)
- contentBox.contentView?.addSubview(leftLine)
- titleLabel.km_add_leading_constraint(constant: 12)
- titleLabel.km_add_top_constraint(constant: 4)
- titleLabel.km_add_trailing_constraint(constant: -4)
- titleLabel.km_add_height_constraint(constant: 20)
-
- subTitleLabel.km_add_leading_constraint(constant: 12)
- subTitleLabel.km_add_top_constraint(equalTo: titleLabel, attribute: .bottom, constant: 8)
- subTitleLabel.km_add_trailing_constraint(constant: -4)
-
- leftLine.km_add_leading_constraint()
- leftLine.km_add_top_constraint()
- leftLine.km_add_bottom_constraint()
- leftLine.km_add_width_constraint(constant: 2)
- }
- }
|