org.jgraph.graph
public abstract class AbstractCellView extends Object implements CellView, Serializable
Field Summary | |
---|---|
protected AttributeMap | allAttributes
Contains the complete set of attributes, including the cell's attributes.
|
protected AttributeMap | attributes
Hashtable for attributes. |
protected Object | cell Reference to the cell for this view |
static GraphCellEditor | cellEditor Editor for the cell. |
protected List | childViews Cached child views. |
protected Rectangle2D | groupBounds Cached bounds of all children if vertex is a group |
protected CellView | parent Cached parent view |
Constructor Summary | |
---|---|
AbstractCellView()
Constructs an empty abstract cell view. | |
AbstractCellView(Object cell)
Constructs a view for the specified model object, and invokes update on
the new instance.
|
Method Summary | |
---|---|
Map | changeAttributes(GraphLayoutCache cache, Map change)
Applies change to the attributes of the view and calls
update.
|
void | childUpdated()
Indicates to parent, if any, that this child has been updated. |
protected AttributeMap | createAttributeMap()
Hook for subclassers to avoid creating an empty AttributeMap during
construction of the instance. |
AttributeMap | getAllAttributes()
Returns the attributes of the view combined with the attributes of the
corresponding cell. |
AttributeMap | getAttributes()
Return the attributes of the view.
|
Rectangle2D | getBounds()
Returns the cached bounds for the group if isleaf is false |
static Rectangle2D | getBounds(CellView[] views)
Returns the bounding box for the specified views.
|
Object | getCell()
Returns the model object that this view represents.
|
protected AttributeMap | getCellAttributes(GraphModel model)
Hook for subclassers to avoid cloning the cell's attributes. |
static Point2D | getCenterPoint(CellView vertex) |
CellView[] | getChildViews()
Returns the child views of this view.
|
static CellView[] | getDescendantViews(CellView[] views)
Returns all views, including descendants that have a parent in
views without the PortViews. |
GraphCellEditor | getEditor()
Returns a cell editor for the view.
|
abstract CellHandle | getHandle(GraphContext context)
Returns a cell handle for the view.
|
CellView | getParentView()
Returns the parent view for this view.
|
Point2D | getPerimeterPoint(EdgeView edge, Point2D source, Point2D p)
Returns the intersection of the bounding rectangle and the straight line
between the source and the specified point p. |
abstract CellViewRenderer | getRenderer()
Obtains the renderer instance for this view
|
Component | getRendererComponent(JGraph graph, boolean selected, boolean focus, boolean preview)
Returns a renderer component, configured for the view. |
protected boolean | includeInGroupBounds(CellView view)
This is used to exclude certain cell views from the group bounds
computation. |
boolean | intersects(JGraph graph, Rectangle2D rect)
Returns true if the view intersects the given rectangle.
|
boolean | isLeaf()
Returns true if the view is a leaf.
|
protected void | mergeAttributes()
Implements the merging of the cell's attributes, initially stored in
allAttributes, and the location attributes. |
void | refresh(GraphLayoutCache cache, CellMapper mapper, boolean createDependentViews)
Create child views and reload properties for this view. |
void | removeFromParent()
Removes this view from the list of children of the parent. |
void | scale(double sx, double sy, Point2D origin)
Scale view (group) by sx, sy .
|
void | setAttributes(AttributeMap attributes)
Sets the attributes of this view to the specified value
|
void | setBounds(Rectangle2D bounds)
Sets the bounds of this view . |
void | setCell(Object cell)
Sets the model object that this view represents to the specified cell
|
void | translate(double dx, double dy)
Translates view (group) by dx, dy .
|
void | update(GraphLayoutCache cache)
Update attributes for this view and indicate to the parent this child has
been updated |
protected void | updateGroupBounds()
Updates the bounds of this view and its children
|
attributes
.allAttributes
.Parameters: cell reference to the model object
change
to the attributes of the view and calls
update.
Parameters: change a map of attribute changes to apply
Returns: the undo map that reverses this change
Returns: the attributes
of this view
Parameters: views the views for whom the bounding box is to be determined
Returns: the bounding box of the specified views
Returns: the model object that this view represents
Returns: the child views of this view
views
without the PortViews. Note: Iterative
Implementation using view.getChildViews. This returns the array in
inverse order, ie with the top most cell view at index 0.
Parameters: views the cell views whose descendants are to be returned
Returns: the specified views and all their descendant views
Returns: the cell editor for this view
Parameters: context the context of this cell view (cells indirectly affected by it)
Returns: the cell handle for this view
Returns: the parent view for this view
Returns: the renderer instance for this view
Parameters: graph
the JGraph
instance of the view selected
whether or not this view is selected focus
whether or not this view is the focus preview
whether or not it is a preview of the view
Returns: the renderer component for this view with this views attributes installed
Parameters: view the cell view to be included in the group bounds or not
Returns: whether or not to include the specified cell in the group bounds
Parameters: graph
the JGraph
instance of the view rect
the rectangle within which intersection is being checked for
Returns: whether or not the rectangle specified intersects the view
true
if the view is a leaf.
Returns: true
if the view is a leaf
Parameters: cache the graph model to be used mapper the cell mapper to be used createDependentViews whether or not to create a view if one does not already exist
view
(group) by sx, sy
.
Parameters: sx the multiple by which the x coordinate position of the cell view is to be scaled sy the multiple by which the y coordinate position of the cell view is to be scaled origin the origin point from which the scaling will calculate
Parameters: attributes the new attributes to set
view
. Calls translateView and
scaleView.
Parameters: bounds the new bounds for this cell view
Parameters: cell the model object this view will represent
view
(group) by dx, dy
.
Parameters: dx the x-coordinate amount to translate by dy the y-coordinate amount to translate by