Visual Editorでダイアログを作る
VE上で直接、ダイアログのGUIを編集はできないみたいだが(ViewPartのように)、Compositeを介して、間接的にGUI編集できる。
(一例)
1.Compositeを継承したクラスを作成(VEの「Composite Visual Class」)。例えばHogeCompositeというクラスを作ったとする。
2.Dialogを継承したクラスを作成。例えばHogeDialogというクラスを作ったとする(ここではjfaceのDialog)。このダイアログの中で上のクラスを利用
public class HogeDialog extends Dialog{ public HogeDialog(Shell parentShell) { super(parentShell); } protected Control createDialogArea(Composite parent) { Composite composite = (Composite)super.createDialogArea(parent); HogeComposite hoge = new HogeComposite(composite, SWT.NULL); return composite; } protected void okPressed() { //... super.okPressed(); } }
3.クライアントコードから上で作ったDialogを利用
HogeDialog dialog = new HogeDialog(shell); int ret = dialog.open();