Is there a faster way of refreshing newly inserted items than reloadData in NSOutlineView?

137 Views Asked by At

When adding a row to my NSOutlineView I'm calling reloadData to refresh the NSOutlineView, like so:

[m_dataSource add:...];  // first add item to my data source
[m_outlineView reloadData]; 

Unfortunately, reloadData seems to be very slow when called for every row that is inserted. Inserting 1000 rows that way takes about a minute here because reloadData is called 1000 times as well.

So is there any faster method that could be used to tell NSOutlineView to refresh after inserting a row?

1

There are 1 best solutions below

0
catlan On

On can hope that Apple will add a diffable data source to NSOutlineView, like it exists for NSTableView, in the meantime you can try these projects: shpakovski/OutlineViewDiffableDataSource or stevesparks/OutlineViewDiffableDataSource