//
//  KMBotaTableRowView.swift
//  PDF Reader Pro
//
//  Created by tangchao on 2023/11/28.
//

import Cocoa

class KMBotaTableRowView: NSTableRowView {
    var selectCallback: ((KMBotaTableRowView)->Void)?
    
    convenience init() {
        self.init(frame: .zero)
        
        self.addTrackingArea()
    }

    override func draw(_ dirtyRect: NSRect) {
        super.draw(dirtyRect)

        // Drawing code here.
    }
    
    func addTrackingArea() {
        let trackingArea = NSTrackingArea(rect: self.bounds, options: [.mouseEnteredAndExited, .inVisibleRect, .activeAlways, .mouseMoved], owner: self, userInfo: nil)
        self.addTrackingArea(trackingArea)
    }
    
    override func drawSelection(in dirtyRect: NSRect) {
        let selectionRect = self.bounds
        KMAppearance.Status.selColor().setFill()
        let selectionPath = NSBezierPath(roundedRect: selectionRect, xRadius: 0, yRadius: 0)
        selectionRect.fill()
    }
    
    override var isSelected: Bool {
        get {
            return super.isSelected
        }
        set {
            super.isSelected = newValue
            
            self.selectCallback?(self)
        }
    }
}