Top / Eclipse / プラグイン開発のTIPS集 / ウィザードを実装する

Eclipseには便利なウィザード機能がありますが、あのウィザードも拡張ポイントで実装されています。これを試してみます。

ウィザードは、ウィザード全体を管理するIWizardインタフェースと、各ページを表すIWizardPage?インタフェースで構成されます。

wiz_arch.jpg

構造

ウィザード機能は以下のクラスで構成されています。

IWizardインタフェース
一つのウィザードに対応するインタフェースです。拡張ポイントとして定義されます。通常はデフォルト実装のクラスWizardを使用します。Wizardクラスの主なメソッドは以下の通り:
IWizardPage?インタフェース
ウィザードの1ページとなるインタフェースです。主なメソッドは以下の通り:

書き途中!!

ウィザードで、あらかじめ選択されていた箇所を表示させたい

ウィザードクラス(WizardPage?のサブクラス)のcreateControl内で以下のメソッドを呼んで初期化します。

private void initialize() {
  // initで
  if (selection != null && selection.isEmpty() == false
      && selection instanceof IStructuredSelection) {
    IStructuredSelection ssel = (IStructuredSelection) selection;
    if (ssel.size() > 1)
      return;
    Object obj = ssel.getFirstElement();
    if (obj instanceof IResource) {
      IContainer container;
      if (obj instanceof IContainer)
        container = (IContainer) obj;
      else
        container = ((IResource) obj).getParent();
        containerText.setText(container.getFullPath().toString());
    }    ↑フォルダ名とかをあらかじめセットしたい場合。
  }
}

こうすると例えばナビゲータでプロジェクトを選択していた場合、あらかじめそのディレクトリが表示され、親切ですね。


この記事は

選択肢 投票
おもしろかった 0  
そうでもない 0  

Top / Eclipse / プラグイン開発のTIPS集 / ウィザードを実装する

現在のアクセス:10308


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS