org.eclipse.ui.navigator.linkHelper扩展点的本意是用来在Editor和Navigator之间互相选中的支持。
勇哥问了我这个扩展点的使用,结果我也不会用。最后勇哥找出来了为啥不能用。因为还需要定义viewContentBinding。
跟踪代码,查到了这部分源码:
在org.eclipse.ui.internal.navigator.extensions.Binding类中有三个变量:
private final Set includePatterns = new HashSet();
private final Set excludePatterns = new HashSet();
private final Map knownIds = new HashMap();
其中knowIds用来在存储所有org.eclipse.ui.navigator.linkHelper扩展的id;includePatterns 用于存储当前Navigator中包含的linkHelper的支持;excludePatterns包含所有当前Navigator不支持的linkHelper。
缺省情况下,是不支持的。所以如果我们只是简单的声明了一下linkHelper的扩展,如下:
<extension
point="org.eclipse.ui.navigator.linkHelper">
<linkHelper
class="org.eclipse.ui.internal.navigator.resources.workbench.ResourceLinkHelper"
id="org.eclipse.ui.navigator.resources.linkHelper">
<selectionEnablement>
<instanceof value="org.eclipse.core.resources.IFile"/>
</selectionEnablement>
<editorInputEnablement>
<instanceof value="org.eclipse.ui.IFileEditorInput"/>
</editorInputEnablement>
</linkHelper>
</extension>
由于不知道它要用在哪个Navigator上,所以是不被任何一个Navigator支持的。也就是点"Link Editor"那个按钮没反应。
如果需要把它用在ResourceNavigator上,那需要再定义如下 :
<extension
point="org.eclipse.ui.navigator.viewer">
<viewerContentBinding
viewerId="org.eclipse.ui.navigator.ProjectExplorer">
<includes>
<contentExtension
pattern="org.eclipse.ui.navigator.resources.linkHelper">
</contentExtension>
<actionExtension
pattern="org.eclipse.ui.navigator.resources.linkHelper">
</actionExtension>
</includes>
</viewerContentBinding>
</extension>
这样一来,当处在ResourceNavigator时,并且"link Editor"按钮可用时,linkHelper的实现类就会被调到:
public void activateEditor(IWorkbenchPage aPage,
IStructuredSelection aSelection) {
}
public IStructuredSelection findSelection(IEditorInput anInput) {
return null;
}
这两个方法的逻辑需要自己实现,以完成link操作
分享到:
相关推荐
Eclipse-plugins 插件,eclipse 各种插件 .jar 包,免费下载 eclipse202106 -plugins 各种插件 .jar 包,免费下载 如果下载不了,关注我,评论区联系我, Eclipse-plugins eclipse, plugins, eclipse202106, ...
Eclipse-plugins 插件,eclipse 各种插件 .jar 包,免费下载 eclipse202106 -plugins 各种插件 .jar 包,免费下载 如果下载不了,关注我,评论区联系我, Eclipse-plugins eclipse, plugins, eclipse202106, ...
Eclipse-plugins 插件,eclipse 各种插件 .jar 包,免费下载 eclipse202106 -plugins 各种插件 .jar 包,免费下载 如果下载不了,关注我,评论区联系我, Eclipse-plugins eclipse, plugins, eclipse202106, ...
Eclipse-plugins 插件,eclipse 各种插件 .jar 包,免费下载 eclipse202106 -plugins 各种插件 .jar 包,免费下载 如果下载不了,关注我,评论区联系我, Eclipse-plugins eclipse, plugins, eclipse202106, ...
2.2 基本的Eclipse使用...... 20 2.2.1 在Eclipse中工作..... 21 2.2.2 了解Eclipse用户界面..... 22 2.2.3 任务、书签和问题..... 28 2.2.4 后台处理..... 29 2.2.5 Eclipse的帮助功能..... 30 2.3 资源管理...... ...
高德导航软件 com.autonavi.xmgd.navigator.1401261712.apk
2.2 基本的Eclipse使用...... 20 2.2.1 在Eclipse中工作..... 21 2.2.2 了解Eclipse用户界面..... 22 2.2.3 任务、书签和问题..... 28 2.2.4 后台处理..... 29 2.2.5 Eclipse的帮助功能..... 30 2.3 ...
2.2 基本的Eclipse使用...... 20 2.2.1 在Eclipse中工作..... 21 2.2.2 了解Eclipse用户界面..... 22 2.2.3 任务、书签和问题..... 28 2.2.4 后台处理..... 29 2.2.5 Eclipse的帮助功能..... 30 2.3 ...
修改 navigator.platform 的值.user.js
Eclipse RCP CNF(Common Navigator)的例子,在导航视图右键可以新建项目,项目图标可以正常显示
vue3前端js通过navigator.serial直接连接地磅仪串口显示重量 vue3前端js通过navigator.serial直接连接地磅仪串口显示重量 vue3前端js通过navigator.serial直接连接地磅仪串口显示重量 vue3前端js通过navigator....
org.kie.navigator droolsjbpm-tools的扩展,为Drools / jBPM服务器安装定义了专门的查看器。
Eclipse Rcp comon Navigator demo 一个简单的例子, 可以运行, 但是还要加入大量的 代码 扩展它, 主要要熟悉eclipse的常用 扩展点
对eclipse插件开发中导航视图内容的描述,个人理解
Eclipse RCP 允许开发者使用 eclipse结构风格设计弹性的可扩展的应用程序,可重用Eclipse中 已存在的方法和编码模式。俗话说,万事开头难。Eclipse RCP 入手可能会比较困难、费时。接下 来我们将主要讲述如何让RCP ...
手头有一些不错的Eclipse资料,只可惜它用的Eclipse还是3.3版本的,很多东西都已经无法使用。最近抽些时间,更新到eclipse3.6上来,既作为为广大Eclipser入门plugin/RCP开发的一个方便之门,也是对自己近年来学习的...
navigator.mediaDevices.getUserMedia 应项目要求,需要实现移动端app嵌入H5页面完成实人认证的功能。打开getUserMedia文档,链接如下: ...
ssd Install Navigator.exe
core-estimator, 用于 navigator.hardwareConcurrency的跨浏览器 polyfill 核心估计量核心估算器是一个用于 navigator.hardwareConcurrency的跨浏览器 polyfill 。估计器通过执行定时攻击来运行不同数量的同步网络...
学习MATHEMATICA的好书,亚马逊5星。 CSDN有拆分成两部分下载的。这个是单文件的。大家自己选择。