JGraph
v5.13.0.0


com.jgraph.components.labels
Class RichTextGraphModel

java.lang.Object
  extended by javax.swing.undo.UndoableEditSupport
      extended by org.jgraph.graph.DefaultGraphModel
          extended by com.jgraph.components.labels.RichTextGraphModel
All Implemented Interfaces:
Serializable, GraphModel

public class RichTextGraphModel
extends DefaultGraphModel

GraphModel that supports cloning of JGraphpadBusinessObject and handles custom entries in nested maps to add/change/remove properties for business object (using the model's insert and edit methods).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jgraph.graph.DefaultGraphModel
DefaultGraphModel.EmptyIterator, DefaultGraphModel.GraphModelEdit, DefaultGraphModel.GraphModelLayerEdit
 
Field Summary
static Object VALUE_EMPTY
          Defines the EMPTY_VALUE constant to be used in nested maps in order to remove properties from business objects.
 
Fields inherited from class org.jgraph.graph.DefaultGraphModel
asksAllowsChildren, attributes, emptyIterator, listenerList, removeEmptyGroups, roots, transAddedCells, transEditAttrs, transEditCS, transEditPM, transRemovedCells, updateLevel
 
Fields inherited from class javax.swing.undo.UndoableEditSupport
compoundEdit, listeners, realSource
 
Constructor Summary
RichTextGraphModel()
          Constructs a new empty graph model.
RichTextGraphModel(List roots, AttributeMap attributes, ConnectionSet cs)
          Constructs a new graph model using the specified root cells and attributes (for the model) and establishes the connections defined in the specified connection set between the cells.
 
Method Summary
 boolean acceptsSource(Object edge, Object port)
          Returns true if port is a valid source for edge.
 boolean acceptsTarget(Object edge, Object port)
          Returns true if port is a valid target for edge.
protected  Object cloneUserObject(Object userObject)
          Extends the parent implementation to support cloning of JGraphpadBusinessObject.
protected  Map handleAttributes(Map attributes)
          Extends the parent implementation to support changing properties on JGraphpadBusinessObject by adding a map for the business object to the nested map which is passed to an insert or edit call.
 Object valueForCellChanged(Object cell, Object newValue)
          Extends the parent implementation to support changing the value on JGraphpadBusinessObject.
 
Methods inherited from class org.jgraph.graph.DefaultGraphModel
addGraphModelListener, beginUpdate, cellsChanged, cloneCell, cloneCell, cloneCell, cloneCells, connect, contains, containsEdgeBetween, createEdit, createLayerEdit, createRemoveEdit, edges, edit, edit, endUpdate, execute, fireGraphChanged, getAll, getAttributes, getAttributes, getChild, getChildCount, getConnectionSet, getDescendants, getEdges, getEdges, getEdgesBetween, getGraphModelListeners, getIncomingEdges, getIndexOfChild, getIndexOfRoot, getOpposite, getOutgoingEdges, getParent, getRootAt, getRootCount, getRoots, getRoots, getRoots, getRootsAsCollection, getSource, getSourceVertex, getTarget, getTargetVertex, getTopmostCells, getUpdateLevel, getUserObject, getValue, handleConnection, handleConnectionSet, handleInsert, handleParentMap, handleRemove, hasAncestorIn, insert, isEdge, isGroup, isLeaf, isPort, isRemoveEmptyGroups, isVertex, order, remove, removeGraphModelListener, setParent, setRemoveEmptyGroups, setSourcePort, setTargetPort, toBack, toFront, updateTransaction
 
Methods inherited from class javax.swing.undo.UndoableEditSupport
_postEdit, addUndoableEditListener, createCompoundEdit, getUndoableEditListeners, postEdit, removeUndoableEditListener, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jgraph.graph.GraphModel
addUndoableEditListener, removeUndoableEditListener
 

Field Detail

VALUE_EMPTY

public static final Object VALUE_EMPTY
Defines the EMPTY_VALUE constant to be used in nested maps in order to remove properties from business objects.

Constructor Detail

RichTextGraphModel

public RichTextGraphModel()
Constructs a new empty graph model.


RichTextGraphModel

public RichTextGraphModel(List roots,
                          AttributeMap attributes,
                          ConnectionSet cs)
Constructs a new graph model using the specified root cells and attributes (for the model) and establishes the connections defined in the specified connection set between the cells.

Parameters:
roots - The roots to be inserted into the model.
attributes - The model's attributes.
cs - The connections to be established.
Method Detail

acceptsSource

public boolean acceptsSource(Object edge,
                             Object port)
Description copied from class: DefaultGraphModel
Returns true if port is a valid source for edge. edge and port must be objects previously obtained from this data source.

Specified by:
acceptsSource in interface GraphModel
Overrides:
acceptsSource in class DefaultGraphModel
Returns:
true if port is a valid source for edge.

acceptsTarget

public boolean acceptsTarget(Object edge,
                             Object port)
Description copied from class: DefaultGraphModel
Returns true if port is a valid target for edge. edge and port must be objects previously obtained from this data source.

Specified by:
acceptsTarget in interface GraphModel
Overrides:
acceptsTarget in class DefaultGraphModel
Returns:
true if port is a valid target for edge.

cloneUserObject

protected Object cloneUserObject(Object userObject)
Extends the parent implementation to support cloning of JGraphpadBusinessObject.

Overrides:
cloneUserObject in class DefaultGraphModel
Parameters:
userObject - The user object to be cloned.
Returns:
Returns the cloned user object.

valueForCellChanged

public Object valueForCellChanged(Object cell,
                                  Object newValue)
Extends the parent implementation to support changing the value on JGraphpadBusinessObject. This implementation supports setting the value to String, JGraphpadRichTextValue or Map. If the new value is a map the complete properties of the user object are replaced with the specified map.

Specified by:
valueForCellChanged in interface GraphModel
Overrides:
valueForCellChanged in class DefaultGraphModel
Parameters:
cell - The cell to change the value for.
newValue - The new value to use for the cell.
Returns:
Returns the old value of the cell.

handleAttributes

protected Map handleAttributes(Map attributes)
Extends the parent implementation to support changing properties on JGraphpadBusinessObject by adding a map for the business object to the nested map which is passed to an insert or edit call. The special VALUE_EMPTY is used to remove a property from a business object.

Overrides:
handleAttributes in class DefaultGraphModel
Parameters:
attributes - The attributes to be processed.
Returns:
Returns the attributes used to undo the change.

JGraph
v5.13.0.0


Copyright (C) 2001-2009 JGraph Ltd. All rights reserved.