2011-07-06 7 views
0

私は次の問題があります。私は小さなIDEでXcodeのような "新しいプロジェクト"のワークフローを再現しようとしています。このため、私は、ユーザーが "新規プロジェクト"を選択したときに、docウィンドウコントローラによって作成されたウィンドウでモーダルで実行されるシートを持っています。シートはペン先から挿入され、段階的アプローチでいくつかのサブビュー(ビューコントローラを介して)をロードし、プロジェクトを設定します(タイプ - >パラメータ...など)。ここまでは順調ですね。通知で特定のNSDocumentインスタンスを閉じる

問題は私が保存する前にプロセスをキャンセルしようとするときです。私は、モーダルシートとdocインスタンスを閉じて、開かれているかもしれない他のdocインスタンス(別名「プロジェクト」)を閉じずに、どのように閉じることができません。

私のアプリケーションには、NSWindowControllerと他のいくつかのコントローラとnibによって制御されるNSDocumentクラスの代理人があります。今のところ、アプリケーションデリゲートで通知ベースのアプローチを実装することを考えていますが、私は把握できません。

私が正しい方向に向けることができれば幸いです。

暖かいよろしく、キャンセルボタンが押されたときには、また、アクションメソッドを呼び出すことができ

トム

答えて

0

。このようにして、アクションメソッドはシートを閉じてNSDocumentサブクラスインスタンスを閉じます。

+0

こんにちは、ヴィンス。ご回答有難うございます。私は行動方法を持っています。ボタンはシートのサブビューにあります(動的に読み込まれます)。シートはモーダルで、私はこのサブビュー以外のアクションをキャプチャすることはできません。したがって、このアクションを実際のドキュメントクローズメソッドと接続する方法を見つけようとします。モーダルシートが表示されているインスタンスの場合にのみ使用します。 – Tom

+0

あなたの 'NSControl'の' setAction:(SEL)anAction'を試してみてください。また、アクションメッセージがレスポンダチェーンを通過するように、ターゲットをnilに設定します。 –

+0

こんにちは、ヴィンス。先端ありがとう。私が試してみます。 – Tom

関連する問題