【ご質問】
別々のViewからchoose-fileプロシージャとDialogにてダイアログ表示を行っています。
choose-fileプロシージャで選択を行った場合、
片方のDialogが閉じられるまでモーダル状態になります。
しかし、別々のViewからモーダルのDialogを表示させた場合は、
上記動作とは違い、片方のウィンドウが閉じられてもそのウインドウを表示した
Viewは操作出来ます(モーダル状態になっていません)。
なぜこのような違いが生じるのでしょうか。
【回答】
choose-fileプロシージャとCurlのDialogの挙動の違いについてですが、
choose-fileプロシージャは”WindowsAPI”の機能を使い、
“Winodws”のファイル選択ダイアログを表示して値を取得しています。
つまり、
choose-fileプロシージャで表示されているファイル選択ダイアログは
Curlが生成して表示しているのではなくWindowsが表示しております。
このためCurlのモーダルの考え方(実装の仕方)とWindowsのファイル選択ダイアログ
の考え方の違いが今回の現象を発生させています。