メイン ウィンドウで NSOutlineView を使用して、小さなドキュメント ベースのアプリケーションを開始しました。モデルクラスで NSCoding プロトコルを使用してモデルをファイルに保存しましたが、すべて問題ありません。
次に、ユーザー インターフェイス (ウィンドウのサイズと位置、アウトライン ビューで展開された項目、選択など) を保存したいと考えていたところ、Lion に再開機能が追加されていることがわかりました。
そこで実装してみました、メインウィンドウとアウトラインビューに自動保存名を追加し、autosaveExpandedItems プロパティを設定して、アウトラインビューのデータソースに OutlineView:itemForPersistentObject: と OutlineView:persistentObjectForItem: メソッドを実装しました。
それは機能しますが、別のファイルを作成/開いてから閉じると、他のファイルの展開されたアイテムの状態が閉じたファイルの状態に設定されます。
アプリは、ドキュメントごとに 1 つのウィンドウではなく、すべてのドキュメントに対して 1 つのウィンドウのみを保存するようです。
自動保存と再開について少し迷っています。同じ機能ですか、それとも 2 つの機能がまったく異なるのですか?
ウィンドウの状態を保存するために使用できますか、それともモデルに保存する必要がありますか?
ありがとうございました