プレビューモード(shouldCloseDocument
がNO
に設定されている)にNSWindow
セカンダリを使用するドキュメントベースのCocoaアプリケーションがあります。NSWindowを終了するときに保存のプロンプトを表示しない
文書がダーティ(保存せずに編集)され、副文書を閉じると、"文書に加えられた変更を保存しますか?プロンプトが表示されます。
セカンダリでこのプロンプトを表示しないようにするにはどうすればよいですか?NSWindow
?
プレビューモード(shouldCloseDocument
がNO
に設定されている)にNSWindow
セカンダリを使用するドキュメントベースのCocoaアプリケーションがあります。NSWindowを終了するときに保存のプロンプトを表示しない
文書がダーティ(保存せずに編集)され、副文書を閉じると、"文書に加えられた変更を保存しますか?プロンプトが表示されます。
セカンダリでこのプロンプトを表示しないようにするにはどうすればよいですか?NSWindow
?
私はこれを行う方法を見つけることができませんでした。私は、保存プロンプトの前に呼び出されたNSWindowDelegate
またはNSWindow
メソッドを見つけることを期待しましたが、明らかな候補(windowWillClose
、close
、performClose
、windowShouldClose
)のどれもありません。
回避策として、NSWindowController.document
を設定する代わりに、ドキュメントを渡すためにカスタムプロパティを使用しています。 document
をNIL
に設定すると、保存プロンプトは表示されなくなります。
特にあなたのViewControllerサブクラス内でこれを行うことができます。 は、デリゲートが窓から所有者クラスに設定されていることを確認します
//-------------------------------------------------------
- (void)windowControllerDidLoadNib:(NSWindowController *)aController
{
NSLog (@"windowControllerDidLoadNib");
aController.document = nil;
[super windowControllerDidLoadNib:aController];
............. etc.......
あなたはwindowWillCloseのデリゲートメソッドでnilに二次ウィンドウのドキュメントを設定した場合、どのような? – cocoafan
面白いアイデアだが動作しない。 'windowWillClose'は、保存プロンプトが表示された後に呼び出されます。 – hpique
NSWindowDelegateの 'windowShouldClose'とNSWindowの' close'もそうです。 – hpique