I\'m currently trying to use a new view-based NSOutlineView in my Cocoa app. As I\'m not using bindings, so I implemented all required delegate and datasource methods in my cont
You need to implement the -outlineView:isGroupItem: delegate method and return YES for your header rows. That will standardize the font and replace the disclosure triangle on the left with a Show/Hide button on the right. You will still need to manually uppercase your string to get the full effect.
I'm not sure if the group row delegate method above makes the selection style look okay or not. However, you normally don't want the header rows to be selectable at all in source lists, which you by returning NO for header items from the -outlineView:shouldSelectItem: delegate method.
I have created a little sample project which includes a source list and also uses the -outlineView:isGroupItem:
method as @boaz-stuller has suggested.
Check out besi/mac-quickies on github. Most of the stuff is either done in IB or can be found in the AppDelegate