I have an outlineview and I'm able to implement mouse hover feature and select row on hover of mouse using NSTrackingArea
. I have buttons at the end of each cell.
- I want to hide all buttons in the beginning.
- On mouse hover, button should get enable with the selected column cell.
func configureTableHighlight() {
let trackingArea = NSTrackingArea(rect: foldersOutlineView.frame, options: [.mouseMoved, .activeInKeyWindow, .inVisibleRect], owner: self, userInfo: nil)
foldersOutlineView.addTrackingArea(trackingArea)
}
override func mouseMoved(with event: NSEvent) {
let pointInTableView = foldersOutlineView.convert(event.locationInWindow, to: nil)
let row = foldersOutlineView.row(at: pointInTableView)
selectedRow = row
if row == -1 {
//cell.btnScheduler.isHidden = true
cell.btnScheduler.isTransparent = true
cell.btnScheduler.isEnabled = false
return
}else{
//cell.btnScheduler.isHidden = false
cell.btnScheduler.isTransparent = false
cell.btnScheduler.isEnabled = true
}
}