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
EditPartListener
so 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 void
activate()
Extends activate to hook the appropriate listener and to initialize the visual changes for representing selection/focus.protected void
addSelectionListener()
Adds an EditPartListener to the host to observe selection/focus changes.void
deactivate()
Extends deactivate to unhook the seleciton listener and to remove the visual changes for representing selection/focus.EditPart
getTargetEditPart(Request request)
Returnsnull
by default.protected void
hideFocus()
Override to hide focusprotected abstract void
hideSelection()
Override to hide selectionprotected void
removeSelectionListener()
Removes the EditPartListener used to observe selectionprotected void
setFocus(boolean value)
Sets the internal focus value.protected void
setSelectedState(int type)
Sets the internal selection value.protected void
showFocus()
Override to show focus.protected void
showPrimarySelection()
CallsshowSelection()
by default.protected abstract void
showSelection()
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:
activate
in interfaceEditPolicy
- Overrides:
activate
in 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:
deactivate
in interfaceEditPolicy
- Overrides:
deactivate
in classAbstractEditPolicy
- See Also:
EditPolicy.deactivate()
-
getTargetEditPart
public EditPart getTargetEditPart(Request request)
Description copied from class:AbstractEditPolicy
Returnsnull
by default.null
indicates that this policy is unable to determine the target for the specifiedRequest
.- Specified by:
getTargetEditPart
in interfaceEditPolicy
- Overrides:
getTargetEditPart
in classAbstractEditPolicy
- Parameters:
request
- the Request- Returns:
null
or 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
-true
if 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
-
-