通过使用 org.eclipse.ui.ide.markerHelp、org.eclipse.ui.ide.markerResolution 和 org.eclipse.ui.ide.markerSupport 扩展点,可以在用户界面中显示使用 org.eclipse.core.resources.markers 支持创建的标记。在发行版 3.2 中,org.eclipse.ui.ide.markerImageProvider API 仅供内部使用。
org.eclipse.ui.ide.markerHelp
org.eclipse.ui.ide.markerHelp
扩展点允许使帮助上下文与标记类型相关联。
org.eclipse.ui.ide.markerResolution
org.eclipse.ui.ide.markerResolution
扩展点允许添加标记的快速修正。当前,可以在两个位置(Java 编辑器和“问题”视图)应用这些快速修正。此扩展点允许插件开发者指定 IMarkerResolutionGenerator
以确定标记的可能解决方案。
在发行版 3.2 中,“问题”视图支持多个解决方案,从而允许用户将其他匹配的问题添加到要修正的问题列表中并同时对所有问题应用所选修正。如果 IMarkerResolution 是 WorkbenchMarkerResolution
的实例,用户就可以在“快速修正”对话框中添加其他匹配的
WorkbenchMarkerResolution
。
缺少两种外部化的“快速修正”对话框
org.eclipse.ui.ide.markerSupport
org.eclipse.ui.ide.markerSupport
扩展用于指定标记在“问题”视图中的显示方式。此扩展点处理过滤器和分组。
过滤器
在 Eclipse 3.2 中,“问题”视图能够处理多个过滤器。请注意,这些过滤器将它们的结果求和,而不是查找它们的并集。可以使用 problemFilter 扩展元素来添加新过滤器,用户也可以手工添加过滤器。以下是“问题”视图的过滤器部分,此部分显示了用户过滤器和通过扩展点添加的过滤器(系统过滤器)。
分组
可以通过两种方法来对标记进行分组。第一种方法是使用 markerTypeCategory
扩展对标记类型进行分组。当用户选择“分组依据”->“类型”时,将显示此分组。以下示例使用测试分组显示了 Java 问题。
当标记类型分组在一起时,在过滤器对话框中,它们将显示在那些组中。
您也可以使用 markerGrouping
元素来创建自己的分组,这将在“问题”视图的“分组依据->”菜单中显示一个附加条目。IDE 提供了基于严重性的分组(缺省分组)。JDT 和 SDK 都提供了“Java 类型”分组。
markerGroupings
是通过检查 IMarker
的属性进行解析的。markerAttributeMappings
用来指定这些映射。以下是添加了附加 markerGroupings
后的“分组依据”菜单。目前,“问题”视图按严重性分组。