org.jgraph.graph
public class AttributeMap extends Hashtable implements Cloneable
Nested Class Summary | |
---|---|
static class | AttributeMap.SerializablePoint2D |
static class | AttributeMap.SerializableRectangle2D |
Field Summary | |
---|---|
static AttributeMap | emptyAttributeMap
Shared empty attribute map to return instead of null in applyMap. |
Constructor Summary | |
---|---|
AttributeMap()
Creates a new attribute map with an initial capacity of 8. | |
AttributeMap(int initialCapacity)
Creates a new attribute map with the specified initial capacity
| |
AttributeMap(int initialCapacity, float loadCapacity)
Constructs a new, empty hashtable with the specified initial capacity and
the specified load factor.
| |
AttributeMap(Map map)
Constructs a new AttributeMap with the same mappings as the given Map.
|
Method Summary | |
---|---|
AttributeMap | applyMap(Map change)
Apply the change to this views attributes.
|
Object | applyValue(Object key, Object value)
Apply the key to value
|
Object | clone()
Returns a clone of map , from keys to values. |
AttributeMap | cloneEntries(AttributeMap newMap)
Clones special object entried in the given map. |
Point2D[] | clonePoints(Point2D[] points)
Returns a list where all instances of PortView are replaced by their
correspnding Point instance.
|
List | clonePoints(List points)
Returns a list where all instances of PortView are replaced by their
correspnding Point instance.
|
List | clonePoints(Object[] points, boolean convertPortViews)
Returns a list where all instances of PortView are replaced by their
correspnding Point instance. |
Point2D | createPoint()
Creates a point of suitable type for this attribute map
|
Point2D | createPoint(Point2D p)
Creates a point of suitable type for this attribute map with the same
values as the point passed in
|
Point2D | createPoint(double x, double y)
Creates a point of suitable type for this attribute map with the same
values as those passed in
|
Rectangle2D | createRect()
Creates a rectangle of suitable type for this attribute map
|
Rectangle2D | createRect(double x, double y, double w, double h)
Creates a rectangle of suitable type for this attribute map with the same
values as those passed in
|
Rectangle2D | createRect(Point2D pt)
Creates a rectangle of suitable type for this attribute map at the
position of the point passed in
|
Rectangle2D | createRect(Point2D pt, double size)
Creates a rectangle of suitable type for this attribute map at the
position of the point passed in with lengths size
|
Rectangle2D | createRect(Rectangle2D rect)
Clones the rectangle passed in
|
Rectangle2D | createRect(double x, double y, double w, double h, double grow1, double grow2)
Creates a rectangle of suitable type for this attribute map
|
Rectangle2D | createRect(Rectangle2D rect, double grow1, double grow2)
Creates a clone of the rectangle passed in and manipulates it by
grow1 and grow2
|
Map | diff(Map newState)
Returns a new map that contains all (key, value)-pairs of
newState where either key is not used or value is
different for key in oldState . |
void | scale(double sx, double sy, Point2D origin)
Scales map by the given amount. |
static void | translate(Collection c, double dx, double dy)
Translates the maps in c using
translate(Map, int, int) . |
void | translate(double dx, double dy)
Translates map by the given amount. |
Parameters: initialCapacity the initial capacity of the new map
Parameters: initialCapacity the initial capacity of the hashtable. loadCapacity the load factor of the hashtable.
Parameters: map the input map to copy
change
to this views attributes.
change
must be a Map
previously obtained
from this object.
Parameters: change the change to apply
Returns: a map that may be used to undo the change to target.
key
to value
Parameters: key the map key whose value is to be altered value the new value to be applied to the specified key
Returns: the old value.
map
, from keys to values. If the map
contains bounds or points, these are cloned as well. References to
PortViews
are replaces by points. Parameters: points the points to be cloned
Returns: the cloned points
Parameters: points the points to be cloned
Returns: the cloned points
Returns: a new point
Parameters: p the point whose values the new point are to be based on
Returns: a new copy of the point passed in
Parameters: x the x-coordinate position of the new point y the y-coordinate position of the new point
Returns: a new point at the coordinates passed in
Returns: a new rectangle
Parameters: x the x-coordinate position of the new rectangle y the y-coordinate position of the new rectangle w the width of the new rectangle h the height of the new rectangle
Returns: a new rectangle at the coordinates and of the dimensions passed in
Parameters: pt the position of the new rectangle
Returns: a new rectangle the specified coordinates of zero size
size
Parameters: pt the position of the new rectangle size the length of both sides of the rectangle
Returns: a new rectangle the specified position and dimensions
Parameters: rect the rectangle to clone
Returns: a copy of the rectangle passed in
Parameters: x the x-coordinate position of the new rectangle y the y-coordinate position of the new rectangle w the width of the new rectangle h the height of the new rectangle grow1 the amount both dimensions are to be increased by and the position coorindates of the rectangle are to be decreased by grow2 the additional amount by which both dimensions are to be increased by
Returns: a new rectangle at the coordinates and of the dimensions passed in
grow1
and grow2
Parameters: grow1 the amount both dimensions are to be increased by and the position coorindates of the rectangle are to be decreased by grow2 the additional amount by which both dimensions are to be increased by
Returns: a new rectangle at the coordinates and of the dimensions passed in
newState
where either key is not used or value is
different for key in oldState
. In other words, this
method removes the common entries from oldState and newState, and returns
the "difference" between the two.
This method never returns null.map
by the given amount.c
using
translate(Map, int, int)
.map
by the given amount.