Включает ли это какие-либо подчиненные строки в развернутых строках? Например, если foo содержит bar, baz и qux и расширен, то bar, baz и qux также являются видимыми строками. И наоборот, если foo не раскрывается, то bar, baz и qux не являются «строками в [NSOutlineView» - они существуют только в вашей модели.
Забудьте о набросках. Это неактуально и смущает ваш вопрос. Вы хотите узнать, сколько у вас объектов модели, поэтому спросите у контроллера, которому они принадлежат.
Люди говорят «спросите источник данных», потому что этот контроллер является объектом, который должен быть источником данных вашего представления. Но забудьте о набросках и забудьте о свойстве источника данных. Поговорите с контроллером напрямую. Спросите, сколько у него объектов-моделей. Если вы хотите узнать подробный вариант ответа (сколько вещей у вас есть, включая вещи в других вещах), спросите его об этом. В любом случае, также реализуйте метод в этом контроллере для предоставления ответа.
Приложение: Помните разделение сил в Какао . У вас есть модель, которая представляет собой данные пользователя в виде объекта; виды, которые отображают модель для пользователя; и контроллеры, которым принадлежат модель и виды. Вы говорите, что это не вопрос рисования; это ставит вопрос не о представлении («сколько строк вы будете рисовать»), а о контроллере («сколько у вас есть« каких-то вещей »). Поэтому вам нужно спросить об этом у контроллера.