Mac OS X の GetForegroundWindow に似たものはありますか?
ウィンドウ化された (NSDocument ベースの) 2 つのアプリと、コマンド ライン ツールから NSOpenPanel を表示したい 1 つのコマンド ラインがあり、NSDocument ベースのアプリのモデルにしたいのですが、windowref がありません。
Mac OS X の GetForegroundWindow に似たものはありますか?
ウィンドウ化された (NSDocument ベースの) 2 つのアプリと、コマンド ライン ツールから NSOpenPanel を表示したい 1 つのコマンド ラインがあり、NSDocument ベースのアプリのモデルにしたいのですが、windowref がありません。
あなたが望むものにはいくつかの問題があります。
まず第一に、Mac 上のアプリケーションにはウィンドウ参照がありません。アプリケーションには、任意の数のウィンドウを含めることができます。第 2 に、Mac OS X では他のプロセスのウィンドウへのアクセスが制限されています。さまざまな方法でそれらにアクセスするための API がいくつかあります。いずれにせよ、別のアプリのウィンドウへの参照を持っていても、そのアプリケーションのモーダル ダイアログを表示することはできません。
必要なのは、コマンド ライン アプリがフォアグラウンド アプリと通信して、開いているパネルを表示するように指示することです。独自の通信プロトコルを確立するか (たとえば、分散オブジェクトを介して)、または Apple Events/AppleScript を使用してやり取りすることができます。