[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Once again the NSOutlineView
From: |
Andreas Heppel |
Subject: |
Once again the NSOutlineView |
Date: |
Thu, 12 Feb 2004 14:46:26 +0100 |
Hi list,
I have again stumbled across some strange behaviour in NSOutlineView. This
time it has to do with reloading items.
The method -reloadItem:reloadChildren is using another method called
_findItem:childIndex:ofParent:. I suppose that this method is intended to
return the parent and the index relative to this parent of the given item.
Unfortunately, it is not, as the parameter 'parent' is not by reference.
Furthermore, -reloadItem:reloadChildren does not update NSOutlineView's data
structures _items and _levelOfItems, which leads to some more starnge
behaviour in the case that the NSOutlineView's delegate does not simply return
a changed item, but a new one. Maybe, this behaviour is intended, as the
delegate is supposed to return the same, but changed item. However, fixing
this is not difficult imho, thus, I'd prefer to change this behaviour.
Attached is patch with a fix, containg a couple of detailed comments on what I
did.
Please anyone comment on this. Thanks.
Andreas
<NSOutlineView.diff>
--
Andreas Heppel
Mail: aheppel at web dot de
Home: http://www.andreasheppel.de
Check out Burn.app - the CD burning frontend for GNUstep
http://gsburn.sourceforge.net
NSOutlineView.diff
Description: Binary data