Package org.eclipse.gef.editpolicies
Class SelectionEditPolicy
- java.lang.Object
-
- org.eclipse.gef.editpolicies.AbstractEditPolicy
-
- org.eclipse.gef.editpolicies.GraphicalEditPolicy
-
- org.eclipse.gef.editpolicies.SelectionEditPolicy
-
- All Implemented Interfaces:
EditPolicy,RequestConstants
- Direct Known Subclasses:
ScrollableSelectionFeedbackEditPolicy,SelectionHandlesEditPolicy
public abstract class SelectionEditPolicy extends GraphicalEditPolicy
A GraphicalEditPolicy that is sensitive to the host's selection. The overall selection of the host EditPart includes whether or not it has focus. Subclasses will typically decorate the GraphicalEditPart with things like selection handles and/or focus feedback.This EditPolicy adds itself as an
EditPartListenerso that it can observe selection. When selection or focus changes, the EditPolicy will update itself and call the appropriate methods.- Since:
- 2.0
-
-
Field Summary
-
Fields inherited from interface org.eclipse.gef.EditPolicy
COMPONENT_ROLE, CONNECTION_BENDPOINTS_ROLE, CONNECTION_ENDPOINTS_ROLE, CONNECTION_ROLE, CONTAINER_ROLE, DIRECT_EDIT_ROLE, GRAPHICAL_NODE_ROLE, LAYOUT_ROLE, NODE_ROLE, PRIMARY_DRAG_ROLE, SELECTION_FEEDBACK_ROLE, TREE_CONTAINER_ROLE
-
Fields inherited from interface org.eclipse.gef.RequestConstants
REQ_ADD, REQ_ALIGN, REQ_ALIGN_CHILDREN, REQ_CLONE, REQ_CONNECTION_END, REQ_CONNECTION_START, REQ_CREATE, REQ_CREATE_BENDPOINT, REQ_DELETE, REQ_DELETE_DEPENDANT, REQ_DIRECT_EDIT, REQ_MOVE, REQ_MOVE_BENDPOINT, REQ_MOVE_CHILDREN, REQ_OPEN, REQ_ORPHAN, REQ_ORPHAN_CHILDREN, REQ_RECONNECT_SOURCE, REQ_RECONNECT_TARGET, REQ_RESIZE, REQ_RESIZE_CHILDREN, REQ_SELECTION, REQ_SELECTION_HOVER
-
-
Constructor Summary
Constructors Constructor Description SelectionEditPolicy()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidactivate()Extends activate to hook the appropriate listener and to initialize the visual changes for representing selection/focus.protected voidaddSelectionListener()Adds an EditPartListener to the host to observe selection/focus changes.voiddeactivate()Extends deactivate to unhook the seleciton listener and to remove the visual changes for representing selection/focus.EditPartgetTargetEditPart(Request request)Returnsnullby default.protected voidhideFocus()Override to hide focusprotected abstract voidhideSelection()Override to hide selectionprotected voidremoveSelectionListener()Removes the EditPartListener used to observe selectionprotected voidsetFocus(boolean value)Sets the internal focus value.protected voidsetSelectedState(int type)Sets the internal selection value.protected voidshowFocus()Override to show focus.protected voidshowPrimarySelection()CallsshowSelection()by default.protected abstract voidshowSelection()Override to show selection-
Methods inherited from class org.eclipse.gef.editpolicies.GraphicalEditPolicy
addFeedback, getFeedbackLayer, getHostFigure, getLayer, removeFeedback
-
Methods inherited from class org.eclipse.gef.editpolicies.AbstractEditPolicy
debugFeedback, eraseSourceFeedback, eraseTargetFeedback, getCommand, getHost, setHost, showSourceFeedback, showTargetFeedback, toString, understandsRequest
-
-
-
-
Method Detail
-
activate
public void activate()
Extends activate to hook the appropriate listener and to initialize the visual changes for representing selection/focus.- Specified by:
activatein interfaceEditPolicy- Overrides:
activatein classAbstractEditPolicy- See Also:
EditPolicy.activate()
-
addSelectionListener
protected void addSelectionListener()
Adds an EditPartListener to the host to observe selection/focus changes.
-
deactivate
public void deactivate()
Extends deactivate to unhook the seleciton listener and to remove the visual changes for representing selection/focus.- Specified by:
deactivatein interfaceEditPolicy- Overrides:
deactivatein classAbstractEditPolicy- See Also:
EditPolicy.deactivate()
-
getTargetEditPart
public EditPart getTargetEditPart(Request request)
Description copied from class:AbstractEditPolicyReturnsnullby default.nullindicates that this policy is unable to determine the target for the specifiedRequest.- Specified by:
getTargetEditPartin interfaceEditPolicy- Overrides:
getTargetEditPartin classAbstractEditPolicy- Parameters:
request- the Request- Returns:
nullor the appropriate targetEditPart- See Also:
EditPolicy.getTargetEditPart(Request)
-
hideFocus
protected void hideFocus()
Override to hide focus- See Also:
showFocus()
-
hideSelection
protected abstract void hideSelection()
Override to hide selection
-
removeSelectionListener
protected void removeSelectionListener()
Removes the EditPartListener used to observe selection
-
setFocus
protected void setFocus(boolean value)
Sets the internal focus value. This method is called automatically by the listener. If the focus value is changed, eithershowFocus()orhideFocus()will be called.- Parameters:
value-trueif the EditPolicy should show focus
-
setSelectedState
protected void setSelectedState(int type)
Sets the internal selection value. This method is called automatically by the listener. If the selection value is changed, the appropriate method is called to show the specified selection type.- Parameters:
type- the type of selection the EditPolicy should display
-
showFocus
protected void showFocus()
Override to show focus.- See Also:
hideFocus()
-
showPrimarySelection
protected void showPrimarySelection()
CallsshowSelection()by default. Override to distinguish between primary and normal selection.
-
showSelection
protected abstract void showSelection()
Override to show selection
-
-