org.eclipse.emf.edit.ui.action.ecp
Class StaticSelectionCommandAction

java.lang.Object
  extended by org.eclipse.core.commands.common.EventManager
      extended by org.eclipse.jface.action.AbstractAction
          extended by org.eclipse.jface.action.Action
              extended by org.eclipse.emf.edit.ui.action.ecp.StaticSelectionCommandAction
All Implemented Interfaces:
org.eclipse.jface.action.IAction
Direct Known Subclasses:
CreateChildAction

public abstract class StaticSelectionCommandAction
extends org.eclipse.jface.action.Action

This class is used as a basis for implementing an IAction on the menubar, the toolbar, or a pop-up menu by delegating all required behaviour to a Command, only when it is guaranteed that the selection will not change during the life of the action. In other words, the action itself would be created based on the selection, and destroyed when the selection changed. All possible aspects of the action are delegated to the command, namely the enablement state and, if it implements CommandActionDelegate, the text, the toolbar icon, and the tool tip text; however, this need only be done once, at the time the action is created.

Subclasses must provide an implementation for createActionCommand(org.eclipse.emf.edit.domain.EditingDomain, java.util.Collection) that creates the command to perform this action. They may also override getDefaultImageDescriptor() to provide a default icon and disable() to set the action's state when a command cannot be created.


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
StaticSelectionCommandAction()
          This constructs an instance without a specified workbenchPart.
StaticSelectionCommandAction(org.eclipse.emf.edit.domain.EditingDomain editingDomain)
          This constructs an instance for a command to be executed via the given editing domain.
 
Method Summary
 void configureAction(org.eclipse.jface.viewers.ISelection selection)
          This extracts the objects from selection, invokes createActionCommand to create the command, and then configures the action based on the result.
 void run()
          This executes the command.
 
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, removePropertyChangeListener
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StaticSelectionCommandAction

public StaticSelectionCommandAction(org.eclipse.emf.edit.domain.EditingDomain editingDomain)
This constructs an instance for a command to be executed via the given editing domain.

Since:
2.4.0

StaticSelectionCommandAction

public StaticSelectionCommandAction()
This constructs an instance without a specified workbenchPart.

Method Detail

configureAction

public void configureAction(org.eclipse.jface.viewers.ISelection selection)
This extracts the objects from selection, invokes createActionCommand to create the command, and then configures the action based on the result.


run

public void run()
This executes the command.

Specified by:
run in interface org.eclipse.jface.action.IAction
Overrides:
run in class org.eclipse.jface.action.Action


Copyright © 2014. All Rights Reserved.