On Jul 12, 2011, at 3:43 PM, James Walker wrote: > I have an NSTableView containing one column, which is bound to an > NSArrayController. I've set a sort key and selector for the column in IB, > and I've called setSortDescriptors: on the array controller. Clicking the > column header sorts it, but how can I sort programmatically? It seems odd > that I look through the methods of NSTableView, NSTableColumn, and > NSArrayController, and there are methods for setting sort descriptors but > nothing that says "sort it". I suppose that -[NSTableView > setAutomaticallyRearrangesObjects:] might help, but it requires 10.5 and I > need to support 10.4. Help?
Invoking -setSortDescriptors: on the array controller does sort it (or should). Back on 10.4, it may have been necessary to follow that with a call to -rearrangeObjects. (And -setAutomaticallyRearrangesObjects: is a method on NSArrayController, not NSTableView. And I don't think it should be necessary to get the array controller to rearrange its objects due to an explicit request like -setSortDescriptors: -- it already knows how to do that. It's a way to make the array controller track the properties of the objects in the array which are referenced by the sort descriptors and filtering predicate so that it re-sorts or re-filters when those values change.) Regards, Ken _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) 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: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com