Instance Method


Asks the delegate to accept or reject the proposed selection.


- (NSIndexSet *)tableView:(NSTableView *)tableView selectionIndexesForProposedSelection:(NSIndexSet *)proposedSelectionIndexes;



The table view that sent the message.


An index set containing the indexes of the proposed selection.

Return Value

An NSIndexSet instance containing the indexes of the new selection. Return proposedSelectionIndexes if the proposed selection is acceptable, or the value of the table view’s existing selection to avoid changing the selection.


This method may be called multiple times with one new index added to the existing selection to find out if a particular index can be selected when the user is extending the selection with the keyboard or mouse.

If implemented, this method will be called instead of tableView:shouldSelectRow:.

See Also

Selecting Rows

- selectionShouldChangeInTableView:

Asks the delegate if the user is allowed to change the selection.

- tableView:shouldSelectRow:

Asks the delegate if the table view should allow selection of the specified row.

- tableView:shouldSelectTableColumn:

Asks the delegate whether the specified table column can be selected.

- tableViewSelectionIsChanging:

Tells the delegate that the table view’s selection is in the process of changing.

- tableViewSelectionDidChange:

Tells the delegate that the table view’s selection has changed.

- tableView:shouldTypeSelectForEvent:withCurrentSearchString:

Asks the delegate to allow or deny type select for the specified event and current search string.

- tableView:typeSelectStringForTableColumn:row:

Asks the delegate to provide an alternative text value used for type selection for the specified row and column.

- tableView:nextTypeSelectMatchFromRow:toRow:forString:

Asks the delegate for the row within the specified search range that matches the specified string.