|
Eclipse GEF 2.1 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.eclipse.gef.editparts.AbstractEditPart | +--org.eclipse.gef.editparts.AbstractGraphicalEditPart
Default implementation for GraphicalEditPart
.
This is an implementation class, and the documentation here is targeted at subclassing this class. Callers of public API should refer to the interface's documentation.
Nested Class Summary | |
protected class |
AbstractGraphicalEditPart.AccessibleGraphicalEditPart
A default implementation of AccessibleEditPart . |
protected class |
AbstractGraphicalEditPart.DefaultAccessibleAnchorProvider
The default implementation of AccessibleAnchorProvider returned in getAdapter(Class) . |
Nested classes inherited from class org.eclipse.gef.editparts.AbstractEditPart |
AbstractEditPart.EditPolicyIterator |
Field Summary | |
protected IFigure |
figure
The Figure |
protected List |
sourceConnections
List of source ConnectionEditParts |
protected List |
targetConnections
List of source ConnectionEditParts |
Fields inherited from class org.eclipse.gef.editparts.AbstractEditPart |
children, FLAG_ACTIVE, FLAG_FOCUS, MAX_FLAG |
Fields inherited from interface org.eclipse.gef.EditPart |
SELECTED, SELECTED_NONE, SELECTED_PRIMARY |
Fields inherited from interface org.eclipse.gef.RequestConstants |
REQ_ADD, REQ_ALIGN, REQ_ALIGN_CHILDREN, 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 | |
AbstractGraphicalEditPart()
|
Method Summary | |
void |
activate()
Extends AbstractEditPart.activate() to also activate all source
ConnectionEditParts. |
protected void |
addChildVisual(EditPart childEditPart,
int index)
Adds the child's Figure to the contentPane . |
void |
addNodeListener(NodeListener listener)
Adds a NodeListener to the EditPart. |
void |
addNotify()
Called after the EditPart has been added to its parent. |
protected void |
addSourceConnection(ConnectionEditPart connection,
int index)
Adds a source ConnectionEditPart at the specified index. |
protected void |
addTargetConnection(ConnectionEditPart connection,
int index)
Adds a target ConnectionEditPart at the specified index. |
protected ConnectionEditPart |
createConnection(Object model)
Creates a ConnectionEditPart for the given
model. |
protected abstract IFigure |
createFigure()
Creates the Figure to be used as this part's visuals. |
protected ConnectionEditPart |
createOrFindConnection(Object model)
Searches for an existing ConnectionEditPart in the Viewer's EditPart registry and returns it if one is found.
|
void |
deactivate()
Extends AbstractEditPart.deactivate() to
also deactivate the source ConnectionEditParts. |
protected void |
fireRemovingSourceConnection(ConnectionEditPart connection,
int index)
Notifies listeners that a source connection has been removed. |
protected void |
fireRemovingTargetConnection(ConnectionEditPart connection,
int index)
Notifies listeners that a target connection has been removed. |
protected void |
fireSourceConnectionAdded(ConnectionEditPart connection,
int index)
Notifies listeners that a source connection has been added. |
protected void |
fireTargetConnectionAdded(ConnectionEditPart connection,
int index)
Notifies listeners that a target connection has been added. |
Object |
getAdapter(Class key)
Extends AbstractEditPart.getAdapter(Class) to handle additional adapter types.
|
IFigure |
getContentPane()
If the children's Figures should be |
DragTracker |
getDragTracker(Request request)
Overridden to return a default DragTracker for GraphicalEditParts. |
IFigure |
getFigure()
The default implementation calls createFigure() if the figure is currently
null . |
protected IFigure |
getLayer(Object layer)
A convenience method for obtaining the specified layer from the LayerManager . |
protected List |
getModelSourceConnections()
Returns the List of the connection
model objects for which this EditPart's model is the source. |
protected List |
getModelTargetConnections()
Returns the List of the connection
model objects for which this EditPart's model is the target. |
List |
getSourceConnections()
Returns the source connections for this GraphicalEditPart. |
List |
getTargetConnections()
Returns the target connections for this GraphicalEditPart. |
protected void |
primAddSourceConnection(ConnectionEditPart connection,
int index)
Adds the specified source ConnectionEditPart at an index. |
protected void |
primAddTargetConnection(ConnectionEditPart connection,
int index)
Adds the specified target ConnectionEditPart at an index. |
protected void |
primRemoveSourceConnection(ConnectionEditPart connection)
Removes the specified source ConnectionEditPart from the sourceConnections List. |
protected void |
primRemoveTargetConnection(ConnectionEditPart connection)
Removes the specified target ConnectionEditPart from the targetConnections List. |
void |
refresh()
Extends AbstractEditPart.refresh() to refresh two additional structural
features: source and target connections. |
protected void |
refreshSourceConnections()
Updates the set of source ConnectionEditParts so that it is in sync with the model source connections. |
protected void |
refreshTargetConnections()
Updates the set of target ConnectionEditParts so that it is in sync with the model target connections. |
protected void |
registerVisuals()
Registers the EditPart's Figure in the Viewer. |
protected void |
removeChildVisual(EditPart childEditPart)
Adds the child's Figure to the contentPane . |
void |
removeNodeListener(NodeListener listener)
Removes the first occurance of the specified listener from the list of listeners. |
void |
removeNotify()
Extends AbstractEditPart.removeNotify() to cleanup
ConnectionEditParts . |
protected void |
removeSourceConnection(ConnectionEditPart connection)
Removes the given connection for which this EditPart is the source. |
protected void |
removeTargetConnection(ConnectionEditPart connection)
Removes the given connection for which this EditPart is the target. |
protected void |
reorderChild(EditPart child,
int index)
This method is extended to preserve a LayoutManager constraint if one exists. |
protected void |
reorderSourceConnection(ConnectionEditPart connection,
int index)
Moves a source ConnectionEditPart into a lower index than it currently
occupies. |
protected void |
reorderTargetConnection(ConnectionEditPart connection,
int index)
Moves a target ConnectionEditPart into a lower index than it currently
occupies. |
protected void |
setFigure(IFigure figure)
Sets the Figure |
void |
setLayoutConstraint(EditPart child,
IFigure childFigure,
Object constraint)
Sets the specified constraint for a child's Figure on the content pane figure for this GraphicalEditPart. |
protected void |
unregisterVisuals()
Implemented to remove the Figure from the Viewer's registry. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.eclipse.gef.EditPart |
addEditPartListener, eraseSourceFeedback, eraseTargetFeedback, getChildren, getCommand, getEditPolicy, getModel, getParent, getRoot, getSelected, getTargetEditPart, getViewer, hasFocus, installEditPolicy, isActive, isSelectable, performRequest, removeEditPartListener, removeEditPolicy, setFocus, setModel, setParent, setSelected, showSourceFeedback, showTargetFeedback, understandsRequest |
Field Detail |
protected IFigure figure
protected List sourceConnections
protected List targetConnections
Constructor Detail |
public AbstractGraphicalEditPart()
Method Detail |
public void activate()
AbstractEditPart.activate()
to also activate all source
ConnectionEditParts.
activate
in interface EditPart
activate
in class AbstractEditPart
EditPart.activate()
protected void addChildVisual(EditPart childEditPart, int index)
contentPane
.
addChildVisual
in class AbstractEditPart
childEditPart
- The EditPart being added.index
- The child's position.AbstractEditPart.addChildVisual(EditPart, int)
public void addNodeListener(NodeListener listener)
GraphicalEditPart
addNodeListener
in interface GraphicalEditPart
listener
- the ListenerGraphicalEditPart.addNodeListener(org.eclipse.gef.NodeListener)
public void addNotify()
EditPart
addNotify
in interface EditPart
addNotify
in class AbstractEditPart
EditPart.addNotify()
protected void addSourceConnection(ConnectionEditPart connection, int index)
refreshSourceConnections()
. There should be no reason to call or override
this method. Source connection are created as a result of overriding getModelSourceConnections()
.
primAddSourceConnection(ConnectionEditPart, int)
is called to perform the
actual update of the sourceConnections
List
. The connection will
have its source set to this
.
If active, this EditPart will activate the ConnectionEditPart.
Finally, all NodeListener
s are notified of the new connection.
connection
- Connection being addedindex
- Index where it is being addedprotected void addTargetConnection(ConnectionEditPart connection, int index)
refreshTargetConnections()
. There should be no reason to call or override
this method. Target connection are created as a result of overriding getModelTargetConnections()
.
primAddTargetConnection(ConnectionEditPart, int)
is called to perform the
actual update of the targetConnections
List
. The connection will
have its target set to this
.
Finally, all NodeListener
s are notified of the new connection.
connection
- Connection being addedindex
- Index where it is being addedprotected ConnectionEditPart createConnection(Object model)
ConnectionEditPart
for the given
model. Similar to AbstractEditPart.createChild(Object)
. This method is called
indirectly during refreshSourceConnections()
, and refreshTargetConnections()
.
The default implementation goes to the EditPartViewer's EditPartFactory
to
create the connection. This method should not be overridden unless factories are not
being used.
model
- the connection model object
protected abstract IFigure createFigure()
Figure
to be used as this part's visuals. This is
called from getFigure()
if the figure has not been created.
protected ConnectionEditPart createOrFindConnection(Object model)
ConnectionEditPart
in the Viewer's EditPart registry
and returns it if one is found.
Otherwise, createConnection(Object)
is called to create a new
ConnectionEditPart. Override this method only if you need to find an existing
connection some other way.
model
- the Connection's model
public void deactivate()
AbstractEditPart.deactivate()
to
also deactivate the source ConnectionEditParts. Subclasses should extend this
method to remove any listeners added in activate()
.
deactivate
in interface EditPart
deactivate
in class AbstractEditPart
EditPart.deactivate()
protected void fireRemovingSourceConnection(ConnectionEditPart connection, int index)
removeSourceConnection(ConnectionEditPart)
. There is
no reason for subclasses to call or override this method.
connection
- ConnectionEditPart
being added as child.index
- Position child is being added into.protected void fireRemovingTargetConnection(ConnectionEditPart connection, int index)
removeTargetConnection(ConnectionEditPart)
. There is
no reason for subclasses to call or override this method.
connection
- ConnectionEditPart
being added as child.index
- Position child is being added into.protected void fireSourceConnectionAdded(ConnectionEditPart connection, int index)
addSourceConnection(ConnectionEditPart, int)
. There is
no reason for subclasses to call or override this method.
connection
- ConnectionEditPart
being added as child.index
- Position child is being added into.protected void fireTargetConnectionAdded(ConnectionEditPart connection, int index)
addTargetConnection(ConnectionEditPart, int)
. There is
no reason for subclasses to call or override this method.
connection
- ConnectionEditPart
being added as child.index
- Position child is being added into.public Object getAdapter(Class key)
AbstractEditPart.getAdapter(Class)
to handle additional adapter types.
Currently, these types include AccessibleHandleProvider
and AccessibleAnchorProvider
. Subclasses should extend this method to support
additional adapter types, or to replace the default provided adapaters.
getAdapter
in interface IAdaptable
getAdapter
in class AbstractEditPart
IAdaptable.getAdapter(Class)
public IFigure getContentPane()
getContentPane
in interface GraphicalEditPart
getContentPane()
public DragTracker getDragTracker(Request request)
DragTracker
for GraphicalEditParts.
getDragTracker
in interface EditPart
request
- a Request
indicating the context of the drag
null
or a DragTrackerEditPart.getDragTracker(Request)
public IFigure getFigure()
createFigure()
if the figure is currently
null
.
getFigure
in interface GraphicalEditPart
GraphicalEditPart.getFigure()
protected IFigure getLayer(Object layer)
LayerManager
.
layer
- ID of the Layer
null
if it doesn't existprotected List getModelSourceConnections()
List
of the connection
model objects for which this EditPart's model is the source. refreshSourceConnections()
calls this method. For each connection model object,
createConnection(Object)
will be called automatically to obtain a
corresponding ConnectionEditPart
.
protected List getModelTargetConnections()
List
of the connection
model objects for which this EditPart's model is the target. refreshTargetConnections()
calls this method. For each connection model object,
createConnection(Object)
will be called automatically to obtain a
corresponding ConnectionEditPart
.
public List getSourceConnections()
GraphicalEditPart
getSourceConnections
in interface GraphicalEditPart
GraphicalEditPart.getSourceConnections()
public List getTargetConnections()
GraphicalEditPart
getTargetConnections
in interface GraphicalEditPart
GraphicalEditPart.getTargetConnections()
protected void primAddSourceConnection(ConnectionEditPart connection, int index)
ConnectionEditPart
at an index. This method is
used to update the sourceConnections
List. This method is called from addSourceConnection(ConnectionEditPart, int)
. Subclasses should not call or override
this method.
connection
- the ConnectionEditPartindex
- the index of the addprotected void primAddTargetConnection(ConnectionEditPart connection, int index)
ConnectionEditPart
at an index. This method is
used to update the targetConnections
List. This method is called from addTargetConnection(ConnectionEditPart, int)
. Subclasses should not call or override
this method.
connection
- the ConnectionEditPartindex
- the index of the addprotected void primRemoveSourceConnection(ConnectionEditPart connection)
ConnectionEditPart
from the sourceConnections
List. This method is called from removeSourceConnection(ConnectionEditPart)
. Subclasses should not call or override
this method.
connection
- Connection to remove.protected void primRemoveTargetConnection(ConnectionEditPart connection)
ConnectionEditPart
from the targetConnections
List. This method is called from removeTargetConnection(ConnectionEditPart)
. Subclasses should not call or override
this method.
connection
- Connection to remove.public void refresh()
AbstractEditPart.refresh()
to refresh two additional structural
features: source and target connections. Subclasses should probably
override AbstractEditPart.refreshVisuals()
instead of this method.
refresh
in interface EditPart
refresh
in class AbstractEditPart
EditPart.refresh()
protected void refreshSourceConnections()
refresh()
, and may also be called in response to
notification from the model.
The update is performed by comparing the exising source ConnectionEditParts with the
set of model source connections returned from getModelSourceConnections()
.
EditParts whose model no longer exists are removed
. New models have their
ConnectionEditParts created
. Subclasses should
override getModelSourceChildren()
.
This method should not be overridden.
protected void refreshTargetConnections()
refresh()
, and may also be called in response to
notification from the model.
The update is performed by comparing the exising source ConnectionEditParts with the
set of model source connections returned from getModelTargetConnections()
.
EditParts whose model no longer exists are removed
. New models have their
ConnectionEditParts created
. Subclasses should
override getModelTargetChildren()
.
This method should not be overridden.
protected void registerVisuals()
registerVisuals
in class AbstractEditPart
AbstractEditPart.registerVisuals()
protected void removeChildVisual(EditPart childEditPart)
contentPane
.
removeChildVisual
in class AbstractEditPart
childEditPart
- the child EditPartAbstractEditPart.removeChildVisual(EditPart)
public void removeNodeListener(NodeListener listener)
GraphicalEditPart
removeNodeListener
in interface GraphicalEditPart
listener
- the listener being removedGraphicalEditPart.removeNodeListener(org.eclipse.gef.NodeListener)
public void removeNotify()
AbstractEditPart.removeNotify()
to cleanup
ConnectionEditParts
.
removeNotify
in interface EditPart
removeNotify
in class AbstractEditPart
removeNotify()
protected void removeSourceConnection(ConnectionEditPart connection)
addSourceConnection(ConnectionEditPart, int)
connection
- Connection being removedprotected void removeTargetConnection(ConnectionEditPart connection)
addTargetConnection(ConnectionEditPart, int)
connection
- Connection being removedprotected void reorderChild(EditPart child, int index)
reorderChild
in class AbstractEditPart
child
- the child being reorderedindex
- new index for the childAbstractEditPart.reorderChild(EditPart, int)
protected void reorderSourceConnection(ConnectionEditPart connection, int index)
ConnectionEditPart
into a lower index than it currently
occupies. This method is called from refreshSourceConnections()
.
connection
- the ConnectionEditPartindex
- the new indexprotected void reorderTargetConnection(ConnectionEditPart connection, int index)
ConnectionEditPart
into a lower index than it currently
occupies. This method is called from refreshTargetConnections()
.
connection
- the ConnectionEditPartindex
- the new indexprotected void setFigure(IFigure figure)
figure
- the Figurepublic void setLayoutConstraint(EditPart child, IFigure childFigure, Object constraint)
GraphicalEditPart
content pane
figure for this GraphicalEditPart. The constraint will be applied to the
content pane's LayoutManager
. revalidate()
is
called on the content pane, which will cuase it to layout during the next update.
setLayoutConstraint
in interface GraphicalEditPart
child
- the child GraphicalEditPart whose constraint is being setchildFigure
- the Figure whose constraint is being setconstraint
- the constraint for the draw2d
LayoutManager
GraphicalEditPart.setLayoutConstraint(EditPart, IFigure, Object)
protected void unregisterVisuals()
unregisterVisuals
in class AbstractEditPart
AbstractEditPart.unregisterVisuals()
|
Eclipse GEF 2.1 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |