Используя делегата представления схемы

NSOutlineViewDelegate протокол дает контроль делегата появлением отдельных ячеек в таблице по изменениям в выборе, и по редактированию ячеек.

Методы делегата, запрашивающие разрешение изменить выбор или отредактировать значение, вызываются во время пользовательских действий, влияющих на представление схемы, но не вызывающихся программируемыми изменениями в представлении. При внесении изменений программно, Вы решаете, хотите ли Вы, чтобы делегат вмешался и, если так, Вы отправляете надлежащее сообщение (проверяющий сначала, что делегат реагирует на то сообщение). Поскольку методы делегата включают фактические данные, выведенные на экран представлением схемы, делегат обычно является тем же объектом как источник данных, хотя это не требование.

NSOutlineViewDelegate протокол определяет эти сообщения делегата:

NSOutlineViewDelegate протокол определяет эти дополнительные сообщения делегата:

В дополнение к этим методам протокол делегата автоматически регистрируется для получения соответствия сообщений NSOutlineView уведомления. Они сообщают делегату, когда выбор изменяется или собирается измениться, когда столбец перемещен или изменен, и когда элемент расширен или разрушился:

Сообщение делегата

Уведомление

outlineViewColumnDidMove:

NSOutlineViewColumnDidMoveNotification

outlineViewColumnDidResize:

NSOutlineViewColumnDidResizeNotification

outlineViewSelectionDidChange:

NSOutlineViewSelectionDidChangeNotification

outlineViewSelectionIsChanging:

NSOutlineViewSelectionIsChangingNotification

outlineViewItemDidExpand:

NSOutlineViewItemDidExpandNotification

outlineViewItemDidCollapse:

NSOutlineViewItemDidCollapseNotification