我想在Project Explorer中添加一个新的过滤器,以便向用户隐藏一些在Eclipse RCP应用程序中自动创建的项目。
到目前为止,我找到了两个扩展点:
org.eclipse.ui.ide.resourceFilters
允许我过滤导航
org.eclipse.jdt.ui.javaElementFilters
允许我过滤Java查看器
我希望项目资源管理器有一个类似的扩展点,但到目前为止我还没有运气好。
我尝试导入org.eclipse.ui.navigator和org.eclipse.ui.navigator.resources,但我找不到任何有趣的扩展点
我使用Eclipse 3.3.2作为此RCP应用程序的基础
谢谢!
答案 0 :(得分:8)
你去了:
<extension point="org.eclipse.ui.navigator.navigatorContent">
<commonFilter
description="Hides *.pj resources"
id="com.xyz.commonFilter.hidePj"
name="*.pj resources"
activeByDefault="true">
<filterExpression>
<and>
<adapt type="org.eclipse.core.resources.IResource">
<test property="org.eclipse.core.resources.name" value="*.pj"/>
</adapt>
</and>
</filterExpression>
</commonFilter>
</extension>
<extension point="org.eclipse.ui.navigator.viewer">
<viewerContentBinding
viewerId="org.eclipse.ui.navigator.ProjectExplorer">
<includes>
<contentExtension pattern="com.xyz.commonFilter.hidePj"/>
</includes>
</viewerContentBinding>
</extension>
不要忘记导入 org.eclipse.ui.navigator 包
答案 1 :(得分:7)
我找到了正确的扩展点集。这更令我期待,因为Project Explorer是常见导航器的专业化。
这是一个两步过程:
扩展org.eclipse.ui.navigator.navigatorContent
扩展org.eclipse.ui.navigator.viewer
然后,过滤器与常见的Project Explorer
相关联答案 2 :(得分:2)
过滤...用于项目资源管理器视图?
有一些长期存在的错误:
CommonNavigator
, add "Name filter patterns" freetext filter(2008)这可能需要某些特定的开发(如this thread中所述)
您可以通过创建一个扩展
ViewFilter
的类并将您的类与项目资源管理器相关联来实现此目的。
(注意:FilterViewer是broken in Eclipse3.3.1,有些人使用3.3.2这是个好主意)