JUCEライブラリにはFileChooserコンポーネントというものがある。これはファイル選択コンポーネントであり、OSのコモンコントロールもしくはJUCEが持つファイル選択ダイアログのいずれかを選ぶことができる。
<OS標準>
<JUCEベース>
OS標準の場合はSHBrowseForFolder APIを使用して実装されている。
あるとき、ファイル選択ダイアログを開いてみると、フォルダツリーが表示されなくなってしまった。
APIのヘルプを見たら原因が判明した。
Note If COM is initialized using CoInitializeEx with the COINIT_MULTITHREADED flag, SHBrowseForFolder fails if the calling application uses the BIF_USENEWUI or BIF_NEWDIALOGSTYLE flag in the BROWSEINFO structure.ということで、私はもろにぶち当たってしまった。
何なんだこのAPIの仕様は・・。
とりあえずはJUCE標準のダイアログにして回避し、IFileDialogでJUCEライブラリそのものを書き換えてみようかなと考えている。