Я запустил небольшое приложение на основе документов с NSOutlineView в главном окне. Я сохранил свою модель в файлах, используя протокол NSCoding в классах моделей, и все в порядке.
Затем я захотел сохранить пользовательский интерфейс (размер и положение окна, расширенные элементы в виде схемы, выбор,...), и я обнаружил, что функция возобновления добавлена в Lion.
Итак, я попытался реализовать его, я добавил имя автосохранения в основное окно и представление схемы, задал свойство autosaveExpandedItems и реализовал метод outlineView: itemForPersistentObject: и outlineView: persistentObjectForItem: в источнике данных представления схемы.
Это работает, но когда я создаю/открываю другой файл, а затем закрываю его, состояние расширенных элементов других файлов устанавливается с состоянием закрытого файла.
Это похоже на приложение, которое сохраняет только одно окно для всех документов, а не одно окно на документ.
Я немного потерялся с автосохранением и возобновлением, это одна и та же функция или две функции, совершенно разные?
Могу ли я использовать его для сохранения состояния окна или мне нужно сохранить его в моей модели?
Спасибо