ワークベンチ・ウィンドウ・ツールバーのカスタマイズ
HostAccessActionBarAdvisor クラスを拡張する方法を例示するために、以下の手順では、ツールバー項目をワークベンチ・ウィンドウのメイン・クールバー領域に追加する方法を示します。クリックすると、指定した ZIETrans リッチ・クライアント・アプリケーションの新規インスタンスが開きます。
- HostAccessWorkbenchWindowAdvisor.preOpen() メソッドを更新して、ワークベンチ・ウィンドウのクールバー領域を表示します。このメソッドは既に実装されています。このため、以下のように、呼び出しを setShowCoolBar(boolean) メソッドに追加することのみ必要です。
public void preWindowOpen() { ... configurer.setShowCoolBar(true); ... }
- 以下のように、新規プライベート・メンバーを HostAccessActionBarAdvisor に追加します。
private LaunchApplicationAction launchAppAction;
- コードを HostAccessActionBarAdvisor.makeActions() メソッドに追加して、LaunchApplicationAction クラスの新規インスタンスを作成します。このクラスのコンストラクターは、以下のように 2 つの引数を受け入れます。
- ZIETrans リッチ・クライアント・アプリケーションの ID
- IWorkbenchWindow オブジェクト (makeActions() メソッドに渡されます)。
protected void makeActions(final IWorkbenchWindow window) { ... launchAppAction = new LaunchApplicationAction("myPlugin", window); }
- ApplicationActionBarAdvsior.fillCoolBar() メソッドを追加または更新して、ツールバーを作成し、新規ランチャー・アクションをそのツールバーに追加し、次にそのツールバーをクールバーに追加します。
protected void fillCoolBar(ICoolBarManager coolBar) { // Create toolbar manager IToolBarManager mainToolbar = new ToolBarManager(SWT.FLAT | SWT.RIGHT); // Add the launch action to the toolbar manager mainToolbar.add(launchAppAction); // Add the main toolbar to the window coolbar coolBar.add(new ToolBarContributionItem(mainToolbar, "main")); }
- 新規 Eclipse ワークベンチを起動します。このプラグインに関連付けられている変換ビューの新規インスタンスを、(クリックすることによって) 開く新規ツールバー項目が必要です。
図 1. 新規ワークベンチの起動
注: launchAppAction オブジェクトで setText() メソッドおよび setImageDescriptor() メソッドを呼び出すことによって、起動アクション用に表示されるデフォルトのイメージとテキストの両方を変更できます。詳しくは、org.eclipse.jface.action.Action クラスの Eclipse API を参照してください。