Package org.eclipse.gef.editpolicies
Class TreeContainerEditPolicy
- java.lang.Object
-
- org.eclipse.gef.editpolicies.AbstractEditPolicy
-
- org.eclipse.gef.editpolicies.TreeContainerEditPolicy
-
- All Implemented Interfaces:
EditPolicy
,RequestConstants
- Direct Known Subclasses:
AbstractTreeContainerEditPolicy
public abstract class TreeContainerEditPolicy extends AbstractEditPolicy
An EditPolicy for handling ADDS, MOVES, and CREATES on aTreeEditPart
.This EditPolicy is responsible for displaying the insertion feedback in the Tree during the appropriate interactions.
This EditPolicy factors the
getCommand(Request)
into three different abstract methods which subclasses must implement.- 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 TreeContainerEditPolicy()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
eraseTargetFeedback(Request req)
Does nothing by default.protected int
findIndexOfTreeItemAt(org.eclipse.draw2d.geometry.Point pt)
Calculates the index of the TreeItem at given point.protected TreeItem
findTreeItemAt(org.eclipse.draw2d.geometry.Point pt)
Calculates theTreeItem
at a specifiedPoint
.protected abstract Command
getAddCommand(ChangeBoundsRequest request)
Returns a Command for adding the children to the container.Command
getCommand(Request req)
Returnsnull
by default.protected abstract Command
getCreateCommand(CreateRequest request)
Returns a Command for creating the object inside the container.protected abstract Command
getMoveChildrenCommand(ChangeBoundsRequest request)
Returns a Command for moving the children within the container.EditPart
getTargetEditPart(Request req)
Returns the host EditPart when appropriate.void
showTargetFeedback(Request req)
Does nothing by default.-
Methods inherited from class org.eclipse.gef.editpolicies.AbstractEditPolicy
activate, deactivate, debugFeedback, eraseSourceFeedback, getHost, setHost, showSourceFeedback, toString, understandsRequest
-
-
-
-
Method Detail
-
getAddCommand
protected abstract Command getAddCommand(ChangeBoundsRequest request)
Returns a Command for adding the children to the container.- Parameters:
request
- the Request to add.- Returns:
- Command
null
or a Command to perform the add
-
getCreateCommand
protected abstract Command getCreateCommand(CreateRequest request)
Returns a Command for creating the object inside the container.- Parameters:
request
- the CreateRequest- Returns:
- Command
null
or a Command to perform the create
-
getMoveChildrenCommand
protected abstract Command getMoveChildrenCommand(ChangeBoundsRequest request)
Returns a Command for moving the children within the container.- Parameters:
request
- the Request to move- Returns:
- Command
null
or a Command to perform the move
-
eraseTargetFeedback
public void eraseTargetFeedback(Request req)
Description copied from class:AbstractEditPolicy
Does nothing by default.- Specified by:
eraseTargetFeedback
in interfaceEditPolicy
- Overrides:
eraseTargetFeedback
in classAbstractEditPolicy
- Parameters:
req
- the Request- See Also:
EditPolicy.eraseTargetFeedback(Request)
-
findIndexOfTreeItemAt
protected final int findIndexOfTreeItemAt(org.eclipse.draw2d.geometry.Point pt)
Calculates the index of the TreeItem at given point.- Parameters:
pt
- the Point in the Viewer- Returns:
- the index of the TreeItem
-
findTreeItemAt
protected final TreeItem findTreeItemAt(org.eclipse.draw2d.geometry.Point pt)
Calculates theTreeItem
at a specifiedPoint
.- Parameters:
pt
- the draw2d Point- Returns:
null
or the TreeItem
-
getCommand
public Command getCommand(Request req)
Description copied from class:AbstractEditPolicy
Returnsnull
by default.null
is used to indicate that the EditPolicy does not contribute to the specifiedRequest
.- Specified by:
getCommand
in interfaceEditPolicy
- Overrides:
getCommand
in classAbstractEditPolicy
- Parameters:
req
- the Request- Returns:
null
or a Command contribution- See Also:
EditPolicy.getCommand(Request)
-
getTargetEditPart
public EditPart getTargetEditPart(Request req)
Returns the host EditPart when appropriate. Targeting is done by checking if the mouse is clearly over the host's TreeItem.- Specified by:
getTargetEditPart
in interfaceEditPolicy
- Overrides:
getTargetEditPart
in classAbstractEditPolicy
- Parameters:
req
- the Request- Returns:
null
or the appropriate targetEditPart
- See Also:
EditPolicy.getTargetEditPart(Request)
-
showTargetFeedback
public void showTargetFeedback(Request req)
Description copied from class:AbstractEditPolicy
Does nothing by default.- Specified by:
showTargetFeedback
in interfaceEditPolicy
- Overrides:
showTargetFeedback
in classAbstractEditPolicy
- Parameters:
req
- the Request- See Also:
EditPolicy.showTargetFeedback(Request)
-
-