Re: NSTableView/NSOutlineView view-based group rows/items span the whole column?
Re: NSTableView/NSOutlineView view-based group rows/items span the whole column?
- Subject: Re: NSTableView/NSOutlineView view-based group rows/items span the whole column?
- From: Quincey Morris <email@hidden>
- Date: Sat, 22 Jun 2013 18:22:48 -0700
On Jun 22, 2013, at 17:52 , Nick Zitzmann <email@hidden> wrote:
> I did search the documentation and the archives, and didn't see anyone talking about this. It appears that, in view-based NSTableViews or NSOutlineViews, if a row is designated as a group row/item, then the view spans the entire column, and the table column argument passed into -outlineView:viewForTableColumn:item: will always be nil. Am I correct so far? Is there any way to turn this off, so that group items can have multiple views in a row, and if so, then what do I do to make this not happen?
Well, the documentation for the NSTableViewDelegate protocol says (of the column parameter): "Will be nil if the row is a group row".
If you want it to behave like NSCell-based tables used, one way would be to *not* make these group rows. Instead, implement the delegate method 'tableView:tableView rowViewForRow:' to create a view with a "group row" appearance behind the column views. The only thing you'd lose would be the floating row behavior of real group rows, but that probably isn't desirable anyway for your scenario.
In a case of extreme need, you could create a group row view that contains subviews similar to the column views, and adjust the view layout to line the subviews up with the column views.
It sort of makes sense for the new API to expect that group rows are section headers, rather than "special" detail rows, but I understand the frustration of having functionality you're actually using taken away from you.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden