Runtime

org.eclipse.gmf.runtime.diagram.ui.actions
Class AttachShapeAction

java.lang.Object
  extended byorg.eclipse.core.commands.common.EventManager
      extended byorg.eclipse.jface.action.AbstractAction
          extended byorg.eclipse.jface.action.Action
              extended byorg.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler
                  extended byorg.eclipse.gmf.runtime.diagram.ui.actions.DiagramAction
                      extended byorg.eclipse.gmf.runtime.diagram.ui.actions.AttachShapeAction
All Implemented Interfaces:
Disposable, IAction, IActionWithProgress, IDisposableAction, IOperationHistoryListener, IPropertyListener, ISelectionChangedListener
Direct Known Subclasses:
AddNoteAction

public abstract class AttachShapeAction
extends DiagramAction

Provides support for action which add an attached shapes to another shape. Puts the added shape in direct edit mode after all the shapes and connections are created.


Nested Class Summary
 
Nested classes inherited from class org.eclipse.gmf.runtime.common.ui.action.IActionWithProgress
IActionWithProgress.WorkIndicatorType
 
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
AttachShapeAction(IWorkbenchPage workbenchPage)
          Constructor
 
Method Summary
protected  Request createTargetRequest()
          Return null since this action doesn't use request to execute its commands.
protected  EditPart getContainer(EditPart editPart)
          Return the first non ShapeEditPart and non ConnectionEditPart instance in the supplied editparts editpart hierarchy.
protected  Point getLocation(java.util.List editParts)
          Determines the location of for the shape to be created in relation to the some other shape.
protected  boolean isSelectionListener()
          Does this action need to listen to selection change events?
protected  void selectAddedObject(EditPartViewer viewer, CreateRequest request)
          Method selectAddedObject.
 
Methods inherited from class org.eclipse.gmf.runtime.diagram.ui.actions.DiagramAction
calculateEnabled, clearTargetRequest, createOperationSet, dispose, doRun, execute, filterEditPartsMatching, getCommand, getCommand, getCommandLabel, getDiagramCommandStack, getDiagramEditDomain, getDiagramEditPart, getDiagramGraphicalViewer, getDiagramWorkbenchPart, getOperationSet, getPreferencesHint, getSelectedObjects, getTargetEditParts, getTargetRequest, refresh, setTargetRequest, updateTargetRequest
 
Methods inherited from class org.eclipse.gmf.runtime.common.ui.action.AbstractActionHandler
contributedToPart, getActionManager, getLabel, getOperationHistory, getPartListener, getSelection, getStructuredSelection, getUndoContext, getWorkbenchPage, getWorkbenchPart, getWorkIndicatorType, handle, historyNotification, init, isDisposed, isOperationHistoryListener, isPropertyListener, isRunnable, isSetup, needsSetup, openErrorDialog, propertyChanged, run, run, runWithEvent, selectionChanged, setDisposed, setPartSelector, setSetup, setup, setWorkbenchPart
 
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, 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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jface.action.IAction
addPropertyChangeListener, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, removePropertyChangeListener, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
 

Constructor Detail

AttachShapeAction

public AttachShapeAction(IWorkbenchPage workbenchPage)
Constructor

Parameters:
workbenchPage - the active workbenchPage
Method Detail

selectAddedObject

protected void selectAddedObject(EditPartViewer viewer,
                                 CreateRequest request)
Method selectAddedObject. Selects Select the newly added shape view by default

Parameters:
request - the request object that holds a reference for the newly created object
viewer - the viewer that contains the shapes to be selected. The shapes correspond to the newly created object.

getLocation

protected Point getLocation(java.util.List editParts)
Determines the location of for the shape to be created in relation to the some other shape.

Parameters:
editParts - the existing editparts of the shapes whose location is used to determine the location of the to be created shape
Returns:
Point the point representing the location of the to be created shape

isSelectionListener

protected boolean isSelectionListener()
Description copied from class: DiagramAction
Does this action need to listen to selection change events? If the enablement state of the context menu or the operation set depends on what is selected in a diagram, then this needs to return true. If this action targets the diagram only, then it should return false.

Actions that are only contributed to the popup menu (and not toolbar or main menus) will not receive selection events at all. The refresh() method will be called when the context menu is about to show.

Specified by:
isSelectionListener in class DiagramAction

createTargetRequest

protected Request createTargetRequest()
Return null since this action doesn't use request to execute its commands.

Specified by:
createTargetRequest in class DiagramAction
Returns:
the new target request

getContainer

protected EditPart getContainer(EditPart editPart)
Return the first non ShapeEditPart and non ConnectionEditPart instance in the supplied editparts editpart hierarchy.

Parameters:
editPart - starting editpart
Returns:
an editpart the first non ShapeEditPart non ConnectionEditPart it found traversing the hierarchy upwards.

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.