|
org.eclipse.gef
Interface ConnectionEditPart
-
All Superinterfaces:
-
EditPart,
GraphicalEditPart
-
All Known Implementing Classes:
-
AbstractConnectionEditPart
- public interface ConnectionEditPart
- extends
GraphicalEditPart
A specialization of
GraphicalEditPart for representing
connections. ConnectionEditParts must join a source and target EditPart.
Its Figure is typically a line between two "nodes", with possible decorations on that
line.
In GEF, ConnectionEditParts are
structural features
of their source
and target "nodes", which are EditParts. However, the model does not have this
requirement. The application may store the connection model in any way, or there may
even be no real model. The burden is on the source and target EditPart to obtain their
appropriate connections in the methods
getModelSourceConnections() and
getModelTargetConnections() . How this is done is application specific.
Since ConnectionEditParts are features of their node EditPart, it is those EditParts
that must create and manage the connection. Creation is performed by whichever end
happens to "intialize" itself first. Therefore an end always looks first in the
EditPartRegistry to see if the
connection was already created by the other end.
ConnectionEditParts are EditParts, and therefore can have children. This is a common
way to implement labels and other selectable decorations on connections. Similarly, a
ConnectionEditPart can also be a "node", meaning it can serve as the source or target
of some other ConnectionEditPart. This makes connection to connection possible.
IMPORTANT: The need to display something as a line does not automatically mean that
a ConnectionEditPart is required. There are several situations in which
ConnectionEditParts should not be used. You should use ConnectionEditParts in general
if:
- The connection should be selectable by the user independant of its "nodes".
- The connection can be deleted, leaving the source and target intact.
- The connection cannot exist without a source and target. A instance of when
this is not true is assocations. Associations are top-level object
that are children of the diagram. They are probably only valid if they have a source
and target, but many applications allow you to create things in any order.
Methods inherited from interface org.eclipse.gef.
EditPart
|
activate,
addEditPartListener,
addNotify,
deactivate,
eraseSourceFeedback,
eraseTargetFeedback,
getChildren,
getCommand,
getDragTracker,
getEditPolicy,
getModel,
getParent,
getRoot,
getSelected,
getTargetEditPart,
getViewer,
hasFocus,
installEditPolicy,
isActive,
isSelectable,
performRequest,
refresh,
removeEditPartListener,
removeEditPolicy,
removeNotify,
setFocus,
setModel,
setParent,
setSelected,
showSourceFeedback,
showTargetFeedback,
understandsRequest
|
getSource
public
EditPart getSource()
-
-
-
Returns:
- the EditPart at the source end of this connection.
getTarget
public
EditPart getTarget()
-
-
-
Returns:
- the EditPart at the target end of this connection.
setSource
public void setSource(
EditPart source)
- Sets the source of this connection.
-
-
-
Parameters:
-
source - the source of this connection
setTarget
public void setTarget(
EditPart target)
- Sets thetarget of this connection.
-
-
-
Parameters:
-
target - the target of this connection
Copyright (c) IBM Corp. and others 2000, 2007. All Rights Reserved.
|
|