2012-08-17 5 views
5

プレビューモード(shouldCloseDocumentNOに設定されている)にNSWindowセカンダリを使用するドキュメントベースのCocoaアプリケーションがあります。NSWindowを終了するときに保存のプロンプトを表示しない

文書がダーティ(保存せずに編集)され、副文書を閉じると、"文書に加えられた変更を保存しますか?プロンプトが表示されます。

セカンダリでこのプロンプトを表示しないようにするにはどうすればよいですか?NSWindow

+0

あなたはwindowWillCloseのデリゲートメソッドでnilに二次ウィンドウのドキュメントを設定した場合、どのような? – cocoafan

+0

面白いアイデアだが動作しない。 'windowWillClose'は、保存プロンプトが表示された後に呼び出されます。 – hpique

+0

NSWindowDelegateの 'windowShouldClose'とNSWindowの' close'もそうです。 – hpique

答えて

0

私はこれを行う方法を見つけることができませんでした。私は、保存プロンプトの前に呼び出されたNSWindowDelegateまたはNSWindowメソッドを見つけることを期待しましたが、明らかな候補(windowWillClosecloseperformClosewindowShouldClose)のどれもありません。

回避策として、NSWindowController.documentを設定する代わりに、ドキュメントを渡すためにカスタムプロパティを使用しています。 documentNILに設定すると、保存プロンプトは表示されなくなります。

0

特にあなたのViewControllerサブクラス内でこれを行うことができます。 は、デリゲートが窓から所有者クラスに設定されていることを確認します

//------------------------------------------------------- 
- (void)windowControllerDidLoadNib:(NSWindowController *)aController 
{ 
NSLog (@"windowControllerDidLoadNib"); 
    aController.document = nil; 
    [super windowControllerDidLoadNib:aController]; 

............. etc....... 
関連する問題