Package org.eclipse.gef.editpolicies
Class DirectEditPolicy
java.lang.Object
org.eclipse.gef.editpolicies.AbstractEditPolicy
org.eclipse.gef.editpolicies.GraphicalEditPolicy
org.eclipse.gef.editpolicies.DirectEditPolicy
- All Implemented Interfaces:
EditPolicy
,RequestConstants
Shows DirectEdit feedback and creates the Command to perform a "direct edit".
Direct Edit is when the User is editing a property of an EditPart
directly (as opposed to in the Properties View) in the Viewer using a
CellEditor
. This EditPolicy is typically
installed using EditPolicy.DIRECT_EDIT_ROLE
.- 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 -
Method Summary
Modifier and TypeMethodDescriptionprotected void
eraseDirectEditFeedback
(DirectEditRequest request) If feedback is being shown, this method callsrevertOldEditValue(DirectEditRequest)
.void
eraseSourceFeedback
(Request request) Does nothing by default.getCommand
(Request request) Returnsnull
by default.protected abstract Command
getDirectEditCommand
(DirectEditRequest request) Returns theCommand
to perform the direct edit.protected void
revertOldEditValue
(DirectEditRequest request) Helps erase feedback by reverting the original edit value.protected abstract void
showCurrentEditValue
(DirectEditRequest request) Override to show the current direct edit value in the host's Figure.protected void
showDirectEditFeedback
(DirectEditRequest request) Pushes the original edit value if necessary, and shows feedback.void
showSourceFeedback
(Request request) Does nothing by default.protected void
storeOldEditValue
(DirectEditRequest request) Called to remember the old value before direct edit feedback begins.boolean
understandsRequest
(Request request) Returnstrue
forRequestConstants.REQ_DIRECT_EDIT
.Methods inherited from class org.eclipse.gef.editpolicies.GraphicalEditPolicy
addFeedback, getFeedbackLayer, getHost, getHostFigure, getLayer, removeFeedback
Methods inherited from class org.eclipse.gef.editpolicies.AbstractEditPolicy
activate, deactivate, debugFeedback, eraseTargetFeedback, getTargetEditPart, setHost, showTargetFeedback, toString
-
Constructor Details
-
DirectEditPolicy
public DirectEditPolicy()
-
-
Method Details
-
eraseSourceFeedback
Description copied from class:AbstractEditPolicy
Does nothing by default.- Specified by:
eraseSourceFeedback
in interfaceEditPolicy
- Overrides:
eraseSourceFeedback
in classAbstractEditPolicy
- Parameters:
request
- the Request- See Also:
-
eraseDirectEditFeedback
If feedback is being shown, this method callsrevertOldEditValue(DirectEditRequest)
.- Parameters:
request
- the DirectEditRequest
-
getCommand
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:
request
- the Request- Returns:
null
or a Command contribution- See Also:
-
getDirectEditCommand
Returns theCommand
to perform the direct edit.- Parameters:
request
- the DirectEditRequest- Returns:
- the command to perform the direct edit
-
revertOldEditValue
Helps erase feedback by reverting the original edit value. The rule when using GEF is that all feedback is removed before changes to the model are made. By default, the host is sentEditPart.refresh()
, which should cause it to refresh all properties. Subclasses can override this method to perform a more specific revert.- Parameters:
request
- the DirectEditRequest- See Also:
-
showSourceFeedback
Description copied from class:AbstractEditPolicy
Does nothing by default.- Specified by:
showSourceFeedback
in interfaceEditPolicy
- Overrides:
showSourceFeedback
in classAbstractEditPolicy
- Parameters:
request
- the Request- See Also:
-
showDirectEditFeedback
Pushes the original edit value if necessary, and shows feedback.- Parameters:
request
- the DirectEditRequest
-
showCurrentEditValue
Override to show the current direct edit value in the host's Figure. Although the CellEditor will probably cover the figure's display of this value, updating the figure will cause its preferred size to reflect the new value.- Parameters:
request
- the DirectEditRequest
-
storeOldEditValue
Called to remember the old value before direct edit feedback begins. After feedback is over,revertOldEditValue(DirectEditRequest)
is called to undo the changes done by feedback. By default, this method nothing.- Parameters:
request
- the DirectEditRequest
-
understandsRequest
Returnstrue
forRequestConstants.REQ_DIRECT_EDIT
.DirectEditAction
will determine enablement based on whether the selected EditPart understands "direct edit".- Specified by:
understandsRequest
in interfaceEditPolicy
- Overrides:
understandsRequest
in classAbstractEditPolicy
- Parameters:
request
- the Request- Returns:
- boolean
true
if the EditPolicy understands the specified request - See Also:
-