2014-01-21 27 views
2

当文档关闭时,我需要在我的NSDocument子类中执行一些清理操作。清理NSDocument子类

由于当前实现具有canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:中的清理代码,因此只有在文档中有未保存的更改时才会调用它。

即使是close方法看起来不是一个好地方 - 根据the docs这种方法可能并不总是被调用。

有一个地方放的那种代码是总是NSDocument实例被破坏之前叫..?

有一些really neat message flow diagrams初始化,打开和保存the docsNSDocuments - 唉没有关闭文档或退出应用程序?

回答

0

你的NSDocument居住在一个窗口中。

为什么不设置一些对象(例如您的子类NSDocument对象)作为承载文档的NSWindow的委托,然后捕获"windowWillClose:" notification

+1

我能想到十几种解决方法 - 但我想知道什么是官方的,在NSDocument类中支持的方式......在几十年来一直存在的应用程序框架中,肯定已经内置了对这样基本的支持用例:-) – Jay