ワークベンチ・ウィンドウ・ツールバーのカスタマイズ

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