Swift: NSPopUpButtonCell в NSTableHeaderCell
Я не могу до конца жизни понять, как заставить NSPopUpButtonCell работать в NSTableHeaderCell. Я попытался реализовать решение здесь: получение дубликата ячейки кнопки заголовка в NSTableView при использовании NSPopUpButtonCell, но кажется, что некоторые методы там не доступны в Swift, в частности, executeClickWithFrame для headerCell.
Мне удалось заставить всплывающую кнопку рисовать в заголовке так:
class DropDownHeaderCell: NSTableHeaderCell {
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(textCell aString: String) {
super.init(textCell: aString)
}
override func drawWithFrame(cellFrame: NSRect, inView controlView: NSView) {
let buttonCell = NSPopUpButtonCell(textCell: "", pullsDown: true)
buttonCell.addItemsWithTitles(["Item1", "Item2", "Item3"])
buttonCell.drawWithFrame(cellFrame, inView: controlView)
}
}
Всякий раз, когда я пытаюсь нажать на кнопку, вместо этого выбирается ячейка заголовка. Как мне сделать так, чтобы мой клик регистрировался на кнопке, а не в заголовке?