NSTableRowView appearance when group rows float
NSTableRowView appearance when group rows float
- Subject: NSTableRowView appearance when group rows float
- From: Bill Cheeseman <email@hidden>
- Date: Sun, 10 Aug 2014 16:54:01 -0400
The OS X reference document for NSTableRowView says this about the "floating" property: "Floating is a temporary attribute that is set when a particular group row is actually floating above other rows. The state may change dynamically based on the position of the group row. Drawing may be different for rows that are currently 'floating'."
I haven't been able to find any information about what these dynamic drawing differences between floating and non-floating group rows are supposed to be. Also, the quoted passage is strangely ambiguous, using "may" as if this mysterious change in appearance might happen and then again it might not happen.
My application has a source list using a view-based NSOutlineView. My code does nothing to dictate the initial or subsequent appearance of the group rows other than to implement the -outlineView:isGroupRow: delegate method to identify which rows are group rows, to turn on the outline view's "Floats Group Row" setting in the nib file, and to set the group rows' text field's string values to all caps programmatically (I notice that they're initial-caps-and-lowercase in Yosemite, so I do that in code when running under Yosemite).
When I launch my application, all of the group rows have the standard group row appearance, including a boldface font (I assume that's standard, based on lots of email posts over the years, although I don't see it documented anywhere) -- except for the first group row at the top of the window, which is in a regular (non-bold) typeface. As soon as I scroll the table view up a tiny bit so that, presumably, the top group row begins to float, it changes to boldface, too. When I scroll farther up to bring lower group rows to the top so that they, too, one by one, presumably begin to float, they stay boldface just as they were at launch. When I scroll back down so that, presumably, one by one, each of the group rows stops floating, they all stay boldface, including the top group row that started out in a regular typeface.
This seems completely wrong, given the wording quoted above. At launch, none of the group rows are floating, so they should all look the same. Then, during scrolling, each group row that begins to float when it reaches the top should (maybe) experience some (undocumented) dynamic change in its appearance. When each row stops floating, it should presumably return to its non-floating appearance. All this is guesswork on my part, of course, trying to make sense of the somewhat-less-than-crystal-clear documentation.
Can anybody explain why I'm seeing what I'm seeing? Or shed light on what I'm supposed to see? Or give me an idea how to go about making the group rows behave sensibly?
--
Bill Cheeseman - email@hidden
_______________________________________________
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