我有一个基于文档的应用程序,其中包含上下文相关的文件菜单的子菜单。我试图找出管理它的适当方法,我想我知道答案......但想确保我没有遗漏一些明显/更简单的东西。
该文档具有NSWindowController
为每个文档实例化的 ,并且是该NSWindowDelegate
实例的 。在NSWindowController
's-init
和-dealloc
方法中,我可以创建和删除NSMenu
. 但是由于菜单对应用程序是全局的,而不是特定于单个文档(或者我认为),我还必须删除菜单并在通过NSWindowDelegate
's-windowDidBecomeMain
和 -windowWillResignMain
(或者可能是类似的 .. .Key方法,我对那个区别有点模糊)
此外,我需要制作NSWindowController
的NSMenu
委托,以实现-menuNeedsUpdate
(同样,保持委托与当前活动的NSWindowController
.
这是正确的方法吗?