Package org.eclipse.ui.texteditor
Class AddMarkerAction
- Direct Known Subclasses:
AddTaskAction
Action for creating a marker of a specified type for the editor's input element based on the
editor's selection. If required, the action asks the user to provide a marker label. The action
is initially associated with a text editor via the constructor, but that can be subsequently
changed using
setEditor
.
The following keys, prepended by the given option prefix, are used for retrieving resources from the given bundle:
"dialog.title"
- the input dialog's title"dialog.message"
- the input dialog's message"error.dialog.title"
- the error dialog's title"error.dialog.message"
- the error dialog's message
This class may be instantiated but is not intended to be subclassed.
- Restriction:
- This class is not intended to be subclassed by clients.
-
Field Summary
Fields inherited from interface org.eclipse.jface.action.IAction
AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, AS_RADIO_BUTTON, AS_UNSPECIFIED, CHECKED, DESCRIPTION, ENABLED, HANDLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT
-
Constructor Summary
ConstructorDescriptionAddMarkerAction
(ResourceBundle bundle, String prefix, ITextEditor textEditor, String markerType, boolean askForLabel) Creates a new action for the given text editor. -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
askForLabel
(Map<String, Object> attributes) Asks the user for a marker label.Returns the attributes the new marker will be initialized with.protected String
getLabelProposal
(IDocument document, int offset, int length) Returns the initial label for the marker.protected IResource
Returns the resource on which to create the marker, ornull
if there is no applicable resource.protected ResourceBundle
Returns this action's resource bundle.protected String
Returns this action's resource key prefix.void
run()
The default implementation of thisIAction
method does nothing.void
update()
Always enables this action if it is connected to a text editor.Methods inherited from class org.eclipse.ui.texteditor.TextEditorAction
canModifyEditor, getTextEditor, setEditor, validateEditorInputState
Methods inherited from class org.eclipse.ui.texteditor.ResourceAction
getString, initialize, setHelpContextId
Methods inherited from class org.eclipse.jface.action.Action
convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, runWithEvent, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
Methods inherited from class org.eclipse.jface.action.AbstractAction
addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
-
Constructor Details
-
AddMarkerAction
public AddMarkerAction(ResourceBundle bundle, String prefix, ITextEditor textEditor, String markerType, boolean askForLabel) Creates a new action for the given text editor. The action configures its visual representation from the given resource bundle.- Parameters:
bundle
- the resource bundleprefix
- a prefix to be prepended to the various resource keys (described inResourceAction
constructor), ornull
if nonetextEditor
- the text editormarkerType
- the type of marker to addaskForLabel
-true
if the user should be asked for a label for the new marker- See Also:
-
-
Method Details
-
getResourceBundle
Returns this action's resource bundle.- Returns:
- this action's resource bundle
-
getResourceKeyPrefix
Returns this action's resource key prefix.- Returns:
- this action's resource key prefix
-
run
public void run()Description copied from class:Action
The default implementation of thisIAction
method does nothing. Subclasses should override this method if they do not need information from the triggering event, or overriderunWithEvent(Event)
if they do. -
update
public void update()Description copied from class:TextEditorAction
Always enables this action if it is connected to a text editor. If the associated editor isnull
, the action is disabled. Subclasses may override.- Specified by:
update
in interfaceIUpdate
- Overrides:
update
in classTextEditorAction
-
askForLabel
Asks the user for a marker label. Returnstrue
if a label is entered,false
if the user cancels the input dialog. The value for the attributemessage
is modified in the given attribute map.- Parameters:
attributes
- the attributes map- Returns:
true
if a label has been entered
-
getInitialAttributes
Returns the attributes the new marker will be initialized with.Subclasses may extend or replace this method.
- Returns:
- the attributes the new marker will be initialized with
-
getLabelProposal
Returns the initial label for the marker.- Parameters:
document
- the document from which to extract a label proposaloffset
- the document offset of the range from which to extract the label proposallength
- the length of the range from which to extract the label proposal- Returns:
- the label proposal
-
getResource
Returns the resource on which to create the marker, ornull
if there is no applicable resource. This queries the editor's input usinggetAdapter(IResource.class)
. Subclasses may override this method.- Returns:
- the resource to which to attach the newly created marker
-