Вероятно, это просто недостаток опыта работы с NSOutlineView
, но я не вижу способа сделать это. У меня есть NSOutlineView
(реализованный с помощью отличного PXSourceList) с кнопкой добавления, которая полностью функциональна в аспекте что я правильно сохраняю/пишу/вставляю/удаляю строки. Я не использую NSTreeController
и не использую привязки. Я добавляю объект, используя следующий код:
- (void)addEntity:(NSNotification *)notification {
// Create the core data representation, and add it as a child to the parent node
UABaseNode *node = [[UAModelController defaultModelController] createBaseNode];
[sourceList reloadData];
for (int i = 0; i < [sourceList numberOfRows]; i++) {
if (node == [sourceList itemAtRow:i]) {
[sourceList selectRowIndexes:[NSIndexSet indexSetWithIndex:i] byExtendingSelection:NO];
[sourceList editColumn:0 row:i withEvent:nil select:NO];
break;
}
}
}
При нажатии кнопки добавления новая строка вставляется следующим образом:
Если я щелкну мышью, а затем выделю строку и нажму enter
, чтобы отредактировать ее, теперь она будет выглядеть так:
У меня вопрос: Как я могу программно получить одно и то же состояние (в фокусе, выбрано, выделено) в первый раз, чтобы улучшить взаимодействие с пользователем?