目标效果:对于一个List VIew,仅当其中至少有一元素被选中时,右键菜单中才显示菜单项。
实现思路:使用visible when表达式。
具体步骤:
1、在menuContribute中添加Command项,此项为需要在右键菜单中显示的菜单项。
2、为Command项添加所有必要关联,如:CommandID。
3、为此Command添加visibleWhen元素,checkEnabled属性设置为false。
4、为其visibleWhen表达式添加with元素,其variable属性设置为RCP内置变量selection。
5、为selection项添加count元素,并设置其属性为1,表示仅当1个被选中时才显示右键菜单。
6、将View设置为selectionProvider: getSite().setSelectionProvider(viewer);
参考资料:
1、Eclipse Commands Advanced - Tutorial