Thanks Kyle. For some reason I missed the superclass (NSTableView) docs when trying to solve my NSOutlineView selection issues.
However --- I remember (our previous implementation) that when you use an NSTreeController (Or NSArrayController in the case of NSTableView) to control the NSOutLineView --- than calling the array controller to select an object --- would definitely cause a "shouldSelect" call on the view delegate. And there is still the weirdness of the empty userInfo on the Selection related notifications. On Nov 15, 2011, at 5:24 AM, Kyle Sluder wrote: > On Mon, Nov 14, 2011 at 6:18 AM, Motti Shneor <su...@bezeqint.net> wrote: >> However, if we need to PROGRAMMATICALLY set the selection, using >> selectRowIndexes:byExtendingSelection: for example, >> outlineView:shouldSelectItem: is never called. > > From "Selecting and Deselecting Rows Programmatically" in the Table > View Programming Guide: > >> Note: It is important to note that when the row is changed programmatically >> the selectionShouldChangeInTableView: message is not sent to the delegate. >> This means that the application is responsible for ensuring the validity of >> the contents of the currently selected row if it is being edited. > > http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/TableView/RowSelection/RowSelection.html#//apple_ref/doc/uid/10000026i-CH6-SW6 > > The point is that you can make programmatic changes that the user > can't make with the mouse. The most common case is to disallow the > user from making any selection changes at all; only the program can > change the selection. > > Just reuse whatever logic you've put into > -outlineView:shouldSelectItem:. If you want, factor out the validation > logic into its own method. If the conditions aren't met, either pass a > different set of row indexes to > -selectRowIndexes:byExtendingSelection: or just don't call that method > at all. > > --Kyle Sluder _______________________________________________ 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