// // KMWinBackDespView.swift // PDF Reader Pro // // Created by User-Tangchao on 2025/1/15. // import Cocoa class KMWinBackDespView: NSView { private lazy var iconIv_: NSImageView = { let view = NSImageView() return view }() private lazy var titleLabel_: NSTextField = { let view = NSTextField(wrappingLabelWithString: "") view.font = .SFProTextRegularFont(20) return view }() private lazy var subTitleLabel_: NSTextField = { let view = NSTextField(wrappingLabelWithString: "") return view }() private lazy var hLine_: NSView = { let view = NSView() view.wantsLayer = true return view }() private lazy var tipLabel_: NSTextField = { let view = NSTextField(wrappingLabelWithString: "") view.font = .SFProTextRegularFont(14) return view }() var iconIv: NSImageView { get { return iconIv_ } } var titleLabel: NSTextField { get { return titleLabel_ } } var subTitleLabel: NSTextField { get { return subTitleLabel_ } } var hLine: NSView { get { return hLine_ } } var tipLabel: NSTextField { get { return tipLabel_ } } convenience init() { self.init(frame: .init(x: 0, y: 0, width: 200, height: 40)) initSubviews() } override func awakeFromNib() { super.awakeFromNib() initSubviews() } public func initSubviews() { addSubview(iconIv_) addSubview(titleLabel_) addSubview(subTitleLabel_) addSubview(hLine_) addSubview(tipLabel_) iconIv_.mas_makeConstraints { make in make?.size.mas_equalTo()(NSMakeSize(72, 72)) make?.leading.mas_equalTo()(20) make?.top.mas_equalTo()(16) } titleLabel_.mas_makeConstraints { make in make?.leading.equalTo()(self.iconIv_.mas_trailing)?.offset()(16) make?.top.mas_equalTo()(16) make?.trailing.mas_equalTo()(-20) } subTitleLabel_.mas_makeConstraints { make in make?.leading.equalTo()(self.iconIv_.mas_trailing)?.offset()(16) make?.trailing.mas_equalTo()(-20) make?.top.equalTo()(titleLabel_.mas_bottom)?.offset()(4) } hLine_.mas_makeConstraints { make in make?.leading.mas_equalTo()(20) make?.trailing.mas_equalTo()(-20) make?.top.equalTo()(iconIv_.mas_bottom)?.offset()(12) make?.height.mas_equalTo()(1) } tipLabel_.mas_makeConstraints { make in make?.leading.mas_equalTo()(20) make?.trailing.mas_equalTo()(-20) make?.top.equalTo()(hLine_.mas_bottom)?.offset()(12) } } }