Если вы используете (подкласс) NSTreeController для предоставления содержимого для вашего outlineView, это очень просто.Вы создаете кнопку либо в коде, либо в Интерфейсном Разработчике и устанавливаете для цели привязки значение insert:
, чтобы добавить элемент, или remove:
, чтобы удалить его.В коде это будет выглядеть так:
[aButton bind:NSTargetBinding
toObject:aController
withKeyPath:keyPathToTreeController
options:[NSMutableDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:YES], NSConditionallySetsEnabledBindingOption,
@"insert:", NSSelectorNameBindingOption,
nil]];
Выбор нового объекта обрабатывается treeController.Опять же, в коде:
[aTreeController setSelectsInsertedObjects:YES];
В IB это флажок, который нужно проверить.О, есть также addChild:
.Пусть привязки делают свое волшебство.