Package com.iizigo.quickfix
Class QuickFixAdapter
java.lang.Object
org.eclipse.ui.views.markers.WorkbenchMarkerResolution
com.iizigo.quickfix.QuickFixAdapter
- All Implemented Interfaces:
IQuickFixer
,IMarkerResolution
,IMarkerResolution2
- Direct Known Subclasses:
CloseProjectQuickFixer
,CreateModuleFolders
,DeleteFile
,DeleteProperty
,DeleteRect
,GotoProperty
,RecoverModuleSettings
,RenameResource
The quick-fixes adapter class to Eclipse. It handles resolution of quick-fixes that can be grouped with others that are similar to allow multi-selection.
- Author:
- Christopher Mindus
Constructor Summary
Method Summary
Modifier and TypeMethodDescriptionboolean
Checks if this resolution can be grouped together with other ones.IMarker[]
findOtherMarkers
(IMarker[] markers) Iterate through the list of supplied markers.Returns optional additional information about the resolution.getImage()
Returns the image to be displayed in the list of resolutions.abstract String
getLabel()
Returns a short label indicating what the resolution will do.Gets the marker if theisMarkerRequired()
is true.boolean
Indicates if the label returned and also the description depends on the marker selected.abstract void
Runs this resolution.void
Call to set the marker in a new instance of the quick-fixer.Methods inherited from class org.eclipse.ui.views.markers.WorkbenchMarkerResolution
run
Constructor Details
QuickFixAdapter
public QuickFixAdapter()
Method Details
getDescription
Returns optional additional information about the resolution. The additional information will be presented to assist the user in deciding if the selected proposal is the desired choice.- Specified by:
getDescription
in interfaceIMarkerResolution2
- Returns:
- the additional information or
null
getImage
Returns the image to be displayed in the list of resolutions. The image would typically be shown to the left of the display string.- Specified by:
getImage
in interfaceIMarkerResolution2
- Returns:
- the image to be shown or
null
if no image is desired
getLabel
Returns a short label indicating what the resolution will do.- Specified by:
getLabel
in interfaceIMarkerResolution
- Specified by:
getLabel
in interfaceIQuickFixer
- Returns:
- a short label for this resolution
isMarkerRequired
public boolean isMarkerRequired()Indicates if the label returned and also the description depends on the marker selected. In case this method returns true, a new Quick-Fix of the same instance is created followed bysetMarker(marker)
. The implementation ofgetLabel()
can therefore be redirected togetLabel(marker)
instead.- Specified by:
isMarkerRequired
in interfaceIQuickFixer
- Returns:
- false by default.
setMarker
Call to set the marker in a new instance of the quick-fixer.- Specified by:
setMarker
in interfaceIQuickFixer
- Parameters:
marker
- The marker.
getMarker
Gets the marker if theisMarkerRequired()
is true.run
Runs this resolution.- Specified by:
run
in interfaceIMarkerResolution
- Specified by:
run
in interfaceIQuickFixer
- Parameters:
marker
- the marker to resolve
canBeGrouped
public boolean canBeGrouped()Checks if this resolution can be grouped together with other ones. By default it can be grouped, but e.g. the "Go to Property" should not be grouped (you can't go to several places at once).- Returns:
- true by default, override to return false for e.g. the "Go to Property" quick-fixer.
findOtherMarkers
Iterate through the list of supplied markers. Return any that can also have the receiver applied to them.- Specified by:
findOtherMarkers
in classWorkbenchMarkerResolution
- Parameters:
markers
- The array of markers.- Returns:
- IMarker[]