在CNF中,如果使用了自己的模型,并实现IAdaptable:
public abstract class ESBFile extends ESBResource implements IESBFile, IAdaptable {
protected IFile file;
...
public Object getAdapter(Class adapter) {
if (adapter == IFile.class || adapter == IResource.class) {
return file;
}
return null;
}
}
右键菜单中就会出现一些系统的菜单项,比如SVN的菜单项。
因为我们通过 <viewer/> 下定义 <popupMenu/> 元素来定义该 CNF 视图支持的菜单结构,所以只需要
将popupMenu的allowsPlatformContributions改为false即可。
注:
allowsPlatformContributions 表示是否接受 popupMenus 扩展点定义的菜单,如果设置为真,则 popupMenus 扩展点定义的菜单以及 ActionProvider 定义的菜单都可以在菜单结构中显示;如果设置假,则 popupMenus 扩展点定义的菜单不能在菜单结构中显示,只有 ActionProvider 定义的菜单才予以显示。
参考资料:
http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-cnfext2/