FileDialog の FilterPath の設定 その 1
JAR ファイルを入力させる部分で [Browse...] ボタンを配置して、ファイルを選択できるようにしようと思います。で、この用途には org.eclipse.swt.widgets.FileDialog クラスが使えることはすぐに分かりました。
選択できるのは JAR ファイルだけでいいので、フィルタも設定します。これは FileDialog#setFilterExtensions メソッドですぐに実現できました。
困ったのが、ダイアログを表示したときのデフォルトのディレクトリです。やっぱり、プロジェクトのワーキングディレクトリにしたいですよね。
こういうのはやっぱり IJavaProject オブジェクトから取得できるだろうと思ったのですが...
getRawClasspath メソッドや getOutputLocation メソッドで取得できるのは、たとえば sample プロジェクトだとすると /sample とか /sample/bin とかになってしまいます。これじゃ、使えないしなぁ。
もしかするとと思って、FileDialog#setFilterPath メソッドの引数に "/sample" とか指定してみましたが、やっぱりだめです。
もう 1 つ、IJavaProject#getPath というメソッドもあるのですが、こちらも /sample が戻り値 ^^;;
LG3D Home をデフォルトのディレクトリにするという手もありますが、さて、どうするか?