Markers created using the org.eclipse.core.resources.markers support can be shown in the user interface using the org.eclipse.ui.ide.markerHelp, org.eclipse.ui.ide.markerResolution and org.eclipse.ui.ide.markerSupport extension points. The org.eclipse.ui.ide.markerImageProvider API is internal of release 3.2.
org.eclipse.ui.ide.markerHelp
org.eclipse.ui.ide.markerHelp
is the extension point that allows
you to associate a help context with your marker type.
org.eclipse.ui.ide.markerResolution
org.eclipse.ui.ide.markerResolution
is the extension point that
allows you to contribute Quick Fixes for markers. The Java Editor and the Problems
View are two places where these can be applied currently. This extension point
allows the plug-in developer to specify the IMarkerResolutionGenerator
that can determine the possible resolutions to a marker.
As of release 3.2 the Problems View supports multiple resolutions allowing
the user to add other matching problems to the list of problems to fix and applying
the selected fix to all of them at once. If IMarkerResolutions
are instances of WorkbenchMarkerResolution
it is possible for users to add other matching WorkbenchMarkerResolutions
in the Quick Fix dialog.
Quick Fix dialog with two missing externalizations
org.eclipse.ui.ide.markerSupport
org.eclipse.ui.ide.markerSupport
is the extension for specifying
how markers are displayed in the Problems View. This extension point handles
filters and grouping.
Filters
As of Eclipse 3.2 the Problems View handles multiple filters. Note that these filters sum their results rather than find their union. New filters can be added using the problemFilter extension element or manually by the user. Below is the filters section of the Problems View showing user filters and filters added via the extension point (system filters).
Grouped
Markers can be grouped into two ways. The first way is to group marker types
into groups using the markerTypeCategory
extension. This is shown
when the user selects Group By - > Type. Below is an example showing Java
Problems and some using a test grouping.
When marker types are grouped together they will be shown in those groups in the filters dialog.
It is also possible to create your own grouping using the markerGrouping
extension which will show up as an extra entry in the Group By->Menu of the
Problems view. The IDE provides a grouping based on severity (the default).
JDT provides a Java Type grouping as well in the SDK.
markerGroupings
are resolved by checking attributes on the IMarker.
markerAttributeMappings
are used to specify these mappings. Below
is the Group By menu with the extra markerGroupings
that have been
added. The Problems view is currently grouped by severity.