6

Eclipse プラグインのビューのツールバーにプルダウン ボタンを追加する必要があります。

実際、ツールバーのボタンは次のように追加されます。

<extension point="org.eclipse.ui.viewActions">
  <viewContribution id="..." targetId="$MyViewId$">
    <action id="..."
            toolbarPath="action1"
            class="Class extending Action and implementing IViewActionDelegate">
    </action>
  </viewContribution>
</extension>
4

1 に答える 1

9

私はそれを理解しました。2つの方法:1つはorg.eclipse.ui.viewActions拡張機能を使用し、もう1つはorg.eclipse.ui.menus

org.eclipse.ui.viewActions拡張機能を使用する(日食> = 3.5)

  • アクションのスタイルは次のように設定する必要がありますpulldown
    <extension point="org.eclipse.ui.viewActions">
      <viewContribution id="..." targetId="$MyViewId$">
        <action id="..."
                toolbarPath="action1"
                class="xxx.MyAction"
                style="pulldown">
        </action>
      </viewContribution>
    </extension>
  • アクションクラスは、(IViewActionDelegateビューツールバーに寄与するアクションに必要)およびIMenuCreator(メニューの動作を定義する)を実装する必要があります。
    public class RetrieveViolationsViewActionDelegate implements IViewActionDelegate, IMenuCreator
    {
      private IAction action;
      private Menu menu;

      // IViewActionDelegate methods
      ...

      // IMenuCreator methods
      public void selectionChanged(IAction action, ISelection selection)
      {
        if (action != this.action)
        {
          action.setMenuCreator(this);
          this.action = action;
        }
      }

      public void dispose()
      {
        if (menu != null)
        {
          menu.dispose();
        }
      }

      public Menu getMenu(Control parent)
      {
        Menu menu = new Menu(parent);
        addActionToMenu(menu, new ClassImplemententingIAction());
        return menu;
      }

      public Menu getMenu(Menu parent)
      {
        // Not use
        return null;
      }



      private void addActionToMenu(Menu menu, IAction action)
      {
        ActionContributionItem item= new ActionContributionItem(action);
        item.fill(menu, -1);
      }
    }

org.eclipse.ui.menusの使用(eclipse> = 3.3)

  • org.eclipse.ui.menus拡張ポイントに新しいmenucontributionを追加します。
  • ロケーションURIをに設定しますtoolbar:IdOfYourView
  • この拡張機能にツールバーを追加し、この新しいツールバーに新しいコマンドを追加します。
  • コマンドスタイルをに変更しますpulldown
  • 新しいmenucontributionを作成し、locationURIをに設定しますmenu:IdOfThePullDownCommand
  • このメニューにコマンドを追加します。

より詳しい情報

于 2010-05-07T12:17:16.347 に答える