扩展点:org.eclipse.ui.actionSets

org.eclipse.ui.actionSets 扩展点用来将菜单、菜单项和工具栏按钮添加到“工作台”窗口中的公共区域。

在org.eclipse.ui.actionSets中有一个元素:actionSet,可以包含至少一个或一个以上的actionSet:

扩展点:org.eclipse.ui.actionSets<!ELEMENTextension(actionSet+)>

actionSet包含menu和action两个元素。可以单独使用menu,也可以单独使用action,也可以同时使用两个元素。但是,同时使用的时候必须保证menu在前,action在menu之后的顺序。

扩展点:org.eclipse.ui.actionSets<!ELEMENTactionSet(menu*,action*)>

menu包含separator和groupMarker两个元素。可以有至少一个或多个separator,没有或有多个groupMarker。

扩展点:org.eclipse.ui.actionSets<!ELEMENTmenu(separator+,groupMarker*)>

一个menu对应一个菜单,如下图实现场景中的run、SOA、Window;而action既对应菜单中的菜单项(如下图实现场景中的JAX-WA、SCA)又充当工具栏按钮。

在action元素中有多个参数,
其中:
---menubarPath 用来关联菜单(因为action对应菜单项);此参数被"/"分成两部分,前面部分是menu的id(标识),后面部分为menu下的separator的id或者任意字母也可(如果只要前面的部分可以吗?可以!会出现什么现象呢? 试试看 :)
---toolbarPath可以控制action是否在工具栏显示,只要toolbarPath为空即不在工具栏中显示此按钮。

在STP plugin中,用actionSets实现SOA的菜单:

扩展点:org.eclipse.ui.actionSets