Package org.eclipse.gef.editpolicies
Class GraphicalNodeEditPolicy
java.lang.Object
org.eclipse.gef.editpolicies.AbstractEditPolicy
org.eclipse.gef.editpolicies.GraphicalEditPolicy
org.eclipse.gef.editpolicies.GraphicalNodeEditPolicy
- All Implemented Interfaces:
EditPolicy,RequestConstants
A GraphicalNodeEditPolicy is responsible for creating and reconnecting
connections graphically.
Created on :Nov 11, 2002
- Since:
- 2.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ConnectionThe connection feedback displayed during createsprotected FeedbackHelperthe current FeedbackHelperFields 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_ROLEFields 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 -
Method Summary
Modifier and TypeMethodDescriptionprotected ConnectionReturns a connection to be used as feeback during creates.voidDoes nothing by default.protected voidErases connection feedback if necessary.voideraseSourceFeedback(Request request) CallseraseCreationFeedback(CreateConnectionRequest)when appropriate.protected voideraseTargetConnectionFeedback(DropRequest request) Override to erase target feedback.voideraseTargetFeedback(Request request) CallseraseTargetConnectionFeedback(DropRequest)when appropriate.getCommand(Request request) Factors the request into one of four abstract methods.protected abstract CommandReturns the Command that will create the connection.protected abstract CommandReturns the command that represents the first half of creating a connection.protected ConnectionRouterReturns the ConnectionRouter for the creation feedback's connection.protected FeedbackHelpergetFeedbackHelper(CreateConnectionRequest request) Returns the FeedbackHelper that is ready to use.protected abstract CommandReturns theCommandto reconnect a connection's source end to the host.protected abstract CommandReturns theCommandto reconnect a connection's target end to the host.protected ConnectionAnchorCalled during the display of creation feedback to snap the feedback to the nearest source ConnectionAnchor.protected ConnectionAnchorCalled during the display of creation feedback to snap the feedback to the nearest target ConnectionAnchor.getTargetEditPart(Request request) Returns the host for the appropriateRequests.protected voidShows feedback during a creation.voidshowSourceFeedback(Request request) callsshowCreationFeedback(CreateConnectionRequest)when appropriate.protected voidshowTargetConnectionFeedback(DropRequest request) Override to show target connection feedback.voidshowTargetFeedback(Request request) CallsshowTargetConnectionFeedback(DropRequest)when appropriate.Methods inherited from class org.eclipse.gef.editpolicies.GraphicalEditPolicy
addFeedback, getFeedbackLayer, getHost, getHostFigure, getLayer, removeFeedbackMethods inherited from class org.eclipse.gef.editpolicies.AbstractEditPolicy
activate, debugFeedback, setHost, toString, understandsRequest
-
Field Details
-
feedbackHelper
the current FeedbackHelper -
connectionFeedback
The connection feedback displayed during creates
-
-
Constructor Details
-
GraphicalNodeEditPolicy
public GraphicalNodeEditPolicy()
-
-
Method Details
-
createDummyConnection
Returns a connection to be used as feeback during creates.- Parameters:
req- the operation being performed- Returns:
- a connection to use as feedback
-
deactivate
public void deactivate()Description copied from class:AbstractEditPolicyDoes nothing by default.- Specified by:
deactivatein interfaceEditPolicy- Overrides:
deactivatein classAbstractEditPolicy- See Also:
-
eraseCreationFeedback
Erases connection feedback if necessary. Frees unused fields.- Parameters:
request- the CreateConnectionRequest
-
eraseSourceFeedback
CallseraseCreationFeedback(CreateConnectionRequest)when appropriate.- Specified by:
eraseSourceFeedbackin interfaceEditPolicy- Overrides:
eraseSourceFeedbackin classAbstractEditPolicy- Parameters:
request- the Request- See Also:
-
eraseTargetConnectionFeedback
Override to erase target feedback. Does nothing by default.- Parameters:
request- the DropRequest
-
eraseTargetFeedback
CallseraseTargetConnectionFeedback(DropRequest)when appropriate.- Specified by:
eraseTargetFeedbackin interfaceEditPolicy- Overrides:
eraseTargetFeedbackin classAbstractEditPolicy- Parameters:
request- the Request- See Also:
-
getCommand
Factors the request into one of four abstract methods. Subclasses must implement these methods.- Specified by:
getCommandin interfaceEditPolicy- Overrides:
getCommandin classAbstractEditPolicy- Parameters:
request- the Request- Returns:
nullor a Command contribution- See Also:
-
getConnectionCompleteCommand
Returns the Command that will create the connection. This is second part of creation.CreateConnectionRequest.getStartCommand()is used here to obtain the contribution from the EditPart from which the User started the creation.- Parameters:
request- the CreateConnectionRequest- Returns:
- the complete command to create a connection
-
getConnectionCreateCommand
Returns the command that represents the first half of creating a connection. In case the first half of the connection creation was successful (i.e. the returned start command is executable), the target edit part is then responsible of creating a Command that represents the entire creation. In case the target edit part needs to refer to the start command to achieve this, the start command may be registered on the passed in create request (seeCreateConnectionRequest.setStartCommand(Command)) before returning it here.- Parameters:
request- the CreateConnectionRequest- Returns:
- a Command representing half of a connection creation
- See Also:
-
getDummyConnectionRouter
Returns the ConnectionRouter for the creation feedback's connection.- Parameters:
request- the create request- Returns:
- a connection router
- Since:
- 3.2
-
getFeedbackHelper
Returns the FeedbackHelper that is ready to use. The feedback helper must be configured with the connection that will be used to display feedback, and that connection must be added to the appropriate layer in the diagram.- Parameters:
request- the CreateConnectionRequest- Returns:
- a FeedbackHelper
-
getReconnectTargetCommand
Returns theCommandto reconnect a connection's target end to the host.- Parameters:
request- the ReconnectRequest- Returns:
- a Command
-
getReconnectSourceCommand
Returns theCommandto reconnect a connection's source end to the host.- Parameters:
request- the ReconnectRequest- Returns:
- a Command
-
getSourceConnectionAnchor
Called during the display of creation feedback to snap the feedback to the nearest source ConnectionAnchor.- Parameters:
request- CreateConnectionRequest- Returns:
nullor the nearest source ConnectionAnchor
-
getTargetConnectionAnchor
Called during the display of creation feedback to snap the feedback to the nearest target ConnectionAnchor.- Parameters:
request- CreateConnectionRequest- Returns:
nullor the nearest target ConnectionAnchor
-
getTargetEditPart
Returns the host for the appropriateRequests. Returnsnullotherwise.- Specified by:
getTargetEditPartin interfaceEditPolicy- Overrides:
getTargetEditPartin classAbstractEditPolicy- Parameters:
request- the Request- Returns:
nullor the appropriate targetEditPart- See Also:
-
showCreationFeedback
Shows feedback during a creation.- Parameters:
request- CreateConnectionRequest
-
showSourceFeedback
callsshowCreationFeedback(CreateConnectionRequest)when appropriate.- Specified by:
showSourceFeedbackin interfaceEditPolicy- Overrides:
showSourceFeedbackin classAbstractEditPolicy- Parameters:
request- the Request- See Also:
-
showTargetConnectionFeedback
Override to show target connection feedback. Does nothing by default.- Parameters:
request- the DropRequest
-
showTargetFeedback
CallsshowTargetConnectionFeedback(DropRequest)when appropriate.- Specified by:
showTargetFeedbackin interfaceEditPolicy- Overrides:
showTargetFeedbackin classAbstractEditPolicy- Parameters:
request- the Request- See Also:
-