Search code examples
cocoamacostooltipnstableviewappkit

NSTableView: How do you update a displayed tooltip?


For my NSTableView, I have defined

 -tableView:toolTipForCell:rect:tableColumn:row:mouseLocation:

and this does return the string I want to display and the NSTableView does display that string as a tooltip.

The problem is that while the tooltip is being displayed, I click the mouse in the same table cell and this will cause the method above to return a different string. However, I cannot seem to figure out how to tell the table that it needs to update the tooltip being displayed.

I did try calling -removeAllToolTips, but that did nothing, as expected.

I can get the tooltip to disappear by calling [sender setToolTip:@""]; Although, it disappears suddenly, rather then a nice, slow fade out.

However, the tooltip does not reappear with the updated text unless I move the mouse and wait....not quite the behavior I want.

Is there anyway to tell the table that it needs to update the tooltip being displayed?

Any other ideas or thoughts on how to handle this better?


Solution

  • It is not possible at this time.