プリファレンスページでレイアウトを使う

見栄えが悪くなってきたので、Groupクラスを使ってレイアウトを綺麗にしようと思った。プリファレンスページを作成するにはPreferencePageクラスを継承して作成すれば良いが、もっと簡単に作るにはFieldEditorPreferencePageクラスを継承すれば良い。両クラスを継承する場合にIWorkbenchPreferencePageインターフェースをimplementsしておく事も忘れない。

FieldEditorPreferencePageクラスを継承した場合、createFieldEditors()メソッドを実装する必要があるが、GridLayoutに固定(?)されるのが特徴。とてもとても簡単にページを作成できるが、凝ったデザインにする場合に少し使いづらい。そこで登場するのがPreferencePageクラス。createContents(Composite parent)メソッドを実装すれば、引数のCompositeを使って自由自在にレイアウトできる。

さて、ここまでは分かったがレイアウトで困った。確かSwingの時も思うようにデザインできなくて悩んだんだよなぁ(苦笑)