Re: cocoa-dev digest, Vol 2 #682 - 12 msgs
Re: cocoa-dev digest, Vol 2 #682 - 12 msgs
- Subject: Re: cocoa-dev digest, Vol 2 #682 - 12 msgs
- From: Stéphane Sudre <email@hidden>
- Date: Fri, 24 May 2002 14:14:13 +0200
On Friday, May 24, 2002, at 12:16 PM, Mikey wrote:
Since NSOutlineView inherits from NSTableView, you should be able to
use NSTableView's -noteNumberOfRowsChanged method, which updates the
view without reloading all the data.
On Thursday, May 23, 2002, at 11:29 AM, cocoa-dev-
email@hidden wrote:
Message: 5
Date: Thu, 23 May 2002 08:21:25 -0700
To: email@hidden
From: Matt Neuburg <email@hidden>
Subject: NSOutlineView reloadData speed tips needed
I have a fairly long NSOutlineView (about 1000 top-level items, 2000
rows
when fully expanded since each top-level item has one subitem).
When the user selects a row and hits Delete, I want to delete that row.
There is no method for doing this directly (as far as I can tell), so I
delete the corresponding item in my data source and tell the
NSOutlineView
to reloadData.
Since the NSOutlineView does not contain any data, it's logical there's
no method to delete a row.
The reloadData operation takes 10 seconds. That's unacceptable; the
deleted
row should just vanish, poof, instantly. My data source's replies to
the
Five Big Questions are all simple one-liners. Has anyone any words of
wisdom on how to speed this up? Thx - m.
The reloadData should not take 10 seconds if displaying your
NSOutlineView content does not take 10 seconds. NSOutlineView does not
re-display every row but just the displayed one.
I'm not sure -noteNumberOfRowsChanged would be appropriate if the
deleted line is one of the displayed ones.
I would suggest testing the time reloadData spends with your Outline
View without deleting an entry in your dataSource.
Are you saving the disclosure state of your rows?
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.