Class MarkerRulerAction

All Implemented Interfaces:
IAction, IUpdate
Direct Known Subclasses:
MarkerRulerInfoAction

public class MarkerRulerAction extends ResourceAction implements IUpdate
A ruler action which can add and remove markers which have a visual representation in the ruler.

This class may be instantiated but is not intended for sub-classing.

Restriction:
This class is not intended to be subclassed by clients.
  • Constructor Details

    • MarkerRulerAction

      public MarkerRulerAction(ResourceBundle bundle, String prefix, ITextEditor editor, IVerticalRulerInfo ruler, String markerType, boolean askForLabel)
      Creates a new action for the given ruler and editor. The action configures its visual representation from the given resource bundle.
      Parameters:
      bundle - the resource bundle
      prefix - a prefix to be prepended to the various resource keys (described in ResourceAction constructor), or null if none
      editor - the editor
      ruler - the ruler
      markerType - the type of marker
      askForLabel - true if the user should be asked for a label when a new marker is created
      Since:
      2.0
      See Also:
    • MarkerRulerAction

      @Deprecated public MarkerRulerAction(ResourceBundle bundle, String prefix, IVerticalRuler ruler, ITextEditor editor, String markerType, boolean askForLabel)
      Deprecated.
      use MarkerRulerAction(ResourceBundle, String, ITextEditor, IVerticalRulerInfo, String, boolean) instead
      Creates a new action for the given ruler and editor. The action configures its visual representation from the given resource bundle.
      Parameters:
      bundle - the resource bundle
      prefix - a prefix to be prepended to the various resource keys
      ruler - the ruler
      editor - the editor
      markerType - the type of the marker
      askForLabel - true if the user should be asked for a label
  • Method Details

    • getTextEditor

      protected ITextEditor getTextEditor()
      Returns this action's text editor.
      Returns:
      this action's text editor
    • getVerticalRuler

      @Deprecated protected IVerticalRuler getVerticalRuler()
      Deprecated.
      use getVerticalRulerInfo instead
      Returns this action's vertical ruler.
      Returns:
      this action's vertical ruler
    • getVerticalRulerInfo

      protected IVerticalRulerInfo getVerticalRulerInfo()
      Returns this action's vertical ruler info.
      Returns:
      this action's vertical ruler info
      Since:
      2.0
    • getResourceBundle

      protected ResourceBundle getResourceBundle()
      Returns this action's resource bundle.
      Returns:
      this action's resource bundle
    • getResourceKeyPrefix

      protected String getResourceKeyPrefix()
      Returns this action's resource key prefix.
      Returns:
      this action's resource key prefix
    • update

      public void update()
      Description copied from interface: IUpdate
      Requests that this object update itself.
      Specified by:
      update in interface IUpdate
    • run

      public void run()
      Description copied from class: Action
      The default implementation of this IAction method does nothing. Subclasses should override this method if they do not need information from the triggering event, or override runWithEvent(Event) if they do.
      Specified by:
      run in interface IAction
      Overrides:
      run in class Action
      See Also:
    • getResource

      protected IResource getResource()
      Returns the resource for which to create the marker, or null if there is no applicable resource.
      Returns:
      the resource for which to create the marker or null
    • getAnnotationModel

      protected AbstractMarkerAnnotationModel getAnnotationModel()
      Returns the AbstractMarkerAnnotationModel of the editor's input.
      Returns:
      the marker annotation model
    • getDocument

      protected IDocument getDocument()
      Returns the IDocument of the editor's input.
      Returns:
      the document of the editor's input
    • includesRulerLine

      protected boolean includesRulerLine(Position position, IDocument document)
      Checks whether a position includes the ruler's line of activity.
      Parameters:
      position - the position to be checked
      document - the document the position refers to
      Returns:
      true if the line is included by the given position
    • handleCoreException

      protected void handleCoreException(CoreException exception, String message)
      Handles core exceptions. This implementation logs the exceptions with the workbench plug-in and shows an error dialog.
      Parameters:
      exception - the exception to be handled
      message - the message to be logged with the given exception
    • getMarkers

      protected List<IMarker> getMarkers()
      Returns all markers which include the ruler's line of activity.
      Returns:
      all a list of markers which include the ruler's line of activity
    • addMarker

      protected void addMarker()
      Creates a new marker according to the specification of this action and adds it to the marker resource.
    • removeMarkers

      protected void removeMarkers(List<? extends IMarker> markers)
      Removes the given markers.
      Parameters:
      markers - the markers to be deleted
    • askForLabel

      protected boolean askForLabel(Map<String,Object> attributes)
      Asks the user for a marker label. Returns true if a label is entered, false if the user cancels the input dialog. Sets the value of the attribute message in the given map of attributes.
      Parameters:
      attributes - the map of attributes
      Returns:
      true if the map of attributes has successfully been initialized
    • getInitialAttributes

      protected Map<String,Object> getInitialAttributes()
      Returns the attributes with which a newly created marker will be initialized.
      Returns:
      the initial marker attributes
    • getLabelProposal

      protected String getLabelProposal(IDocument document, int offset, int length)
      Returns the initial label for the marker.
      Parameters:
      document - the document from which to extract a label proposal
      offset - the document offset of the range from which to extract the label proposal
      length - the length of the range from which to extract the label proposal
      Returns:
      the label proposal
      Since:
      3.0