Package mgui.interfaces.graphs
Class InterfaceAbstractGraph
java.lang.Object
edu.uci.ics.jung.graph.AbstractGraph<V,E>
edu.uci.ics.jung.graph.SparseGraph<AbstractGraphNode,AbstractGraphEdge>
mgui.interfaces.graphs.InterfaceAbstractGraph
- All Implemented Interfaces:
edu.uci.ics.jung.graph.Graph<AbstractGraphNode,AbstractGraphEdge>,edu.uci.ics.jung.graph.Hypergraph<AbstractGraphNode,AbstractGraphEdge>,java.io.Serializable,NetworkGraphListener,AttributeListener,AttributeObject,InterfaceObject,PopupMenuObject,NamedObject,TreeObject,CleanableObject,XMLObject,IconObject
- Direct Known Subclasses:
DefaultGraph,NeuralNetGraph
public class InterfaceAbstractGraph extends edu.uci.ics.jung.graph.SparseGraph<AbstractGraphNode,AbstractGraphEdge> implements AttributeObject, AttributeListener, InterfaceObject, NetworkGraphListener, PopupMenuObject, IconObject, XMLObject
Abstract representation of a Graph in modelGUI; extends Jung's SparseGraph
- Since:
- 1.0
- Version:
- 1.0
- Author:
- Andrew Reid
- See Also:
- Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from interface mgui.interfaces.xml.XMLObject
XMLObject.XMLEncoding, XMLObject.XMLType -
Field Summary
Fields Modifier and Type Field Description AttributeListattributesjava.util.ArrayList<InterfaceGraphListener>graphListenersprotected booleanisDestroyedjava.lang.StringnameInterfaceTreeNodetreeNodeprotected java.util.ArrayList<InterfaceTreeNode>treeNodesprotected java.lang.Stringxml_blockprotected intxml_countprotected intxml_itrprotected java.util.HashMap<java.lang.Integer,AbstractGraphNode>xml_nodesFields inherited from class edu.uci.ics.jung.graph.SparseGraph
directed_edges, INCIDENT, INCOMING, OUTGOING, undirected_edges, vertex_maps -
Constructor Summary
Constructors Constructor Description InterfaceAbstractGraph() -
Method Summary
Modifier and Type Method Description booleanaddEdge(AbstractGraphEdge edge, edu.uci.ics.jung.graph.util.EdgeType edgeType)booleanaddEdge(AbstractGraphEdge edge, AbstractGraphNode v1, AbstractGraphNode v2, edu.uci.ics.jung.graph.util.EdgeType edgeType)Overridden to set up edge properly.booleanaddEdge(AbstractGraphNode v1, AbstractGraphNode v2, edu.uci.ics.jung.graph.util.EdgeType edgeType)voidaddGraphListener(InterfaceGraphListener g)voidattributeUpdated(AttributeEvent e)Called when an Attribute's value has been updated.voidclean()Instructs this object to search its members for any object which has been destroyed, and release the pointer to it.java.lang.Objectclone()voiddestroy()Destroy this object (prepare it to be removed from memory)protected voidfireGraphListeners()protected voidfireGraphListeners(int code)Attribute<?>getAttribute(java.lang.String attrName)Returns a specific attribute for this object.AttributeListgetAttributes()Returns the list of current attributes for this object.java.lang.ObjectgetAttributeValue(java.lang.String name)Gets the value of attributename, ornullif it does not exist.java.lang.StringgetDefaultLayout()java.lang.StringgetDTD()Returns the Data Type Declaration (DTD) for this object's XML representationbooleangetLabelEdges()booleangetLabelNodes()java.lang.StringgetLocalName()Returns the local name associated with this XML object.java.lang.StringgetName()Gets the name for this object.java.util.ArrayList<AbstractGraphNode>getNodes()javax.swing.IcongetObjectIcon()Returns theIconassociated with this object.InterfacePopupMenugetPopupMenu()Produces and returns a popup menu for this object.InterfacePopupMenugetPopupMenu(java.util.List<java.lang.Object> selected)Produces and returns a popup menu for this object.java.lang.StringgetShortXML(int tab)Returns a short XML representation of this object.java.lang.StringgetTreeLabel()Returns the label text to appear in a tree node.java.lang.StringgetXML()Returns this object's XML representation as a single string.java.lang.StringgetXML(int tab)Returns this object's XML representation as a single string.java.lang.StringgetXMLSchema()Returns the XML schema for this object's XML representationvoidgraphUpdated(NetworkGraphEvent e)voidhandlePopupEvent(java.awt.event.ActionEvent e)Handles an event on this object's popup menu.voidhandleXMLElementEnd(java.lang.String localName)Handles the end of an XML element.voidhandleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type)Handles the start of an XML element.voidhandleXMLString(java.lang.String s)Handles a string within an XML element.protected voidinit()booleanisDestroyed()Test whether this object has been destroyedInterfaceTreeNodeissueTreeNode()Issues a newInterfaceTreeNodefor this object.voidremoveAllEdges()Removes all edges in this Graph.voidremoveAllNodes()Removes all nodes in this Graph.voidremoveGraphListener(InterfaceGraphListener g)voidsetAttribute(java.lang.String attrName, java.lang.Object newValue)Sets a value for a specific attribute.voidsetAttributes(AttributeList thisList)Sets the list of attributes for this object.voidsetName(java.lang.String name)Sets the name for this object.voidsetTreeNode(InterfaceTreeNode treeNode)Sets the children for this node'sInterfaceTreeNode.voidshowPopupMenu(java.awt.event.MouseEvent e)Shows a popup menu at the point of the givenMouseEvent.java.lang.StringtoString()voidwriteXML(int tab, java.io.Writer writer)Writes the XML representation of this object to file.voidwriteXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar)Writes the XML representation of this object to file, asXMLType.Normal.voidwriteXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar)Writes the XML representation of this object to file.Methods inherited from class edu.uci.ics.jung.graph.SparseGraph
addEdge, addVertex, containsEdge, containsVertex, findEdge, findEdgeSet, getDefaultEdgeType, getDest, getEdgeCount, getEdgeCount, getEdges, getEdges, getEdgeType, getEndpoints, getFactory, getIncidentEdges, getInEdges, getNeighbors, getOutEdges, getPredecessors, getSource, getSuccessors, getVertexCount, getVertices, isDest, isSource, removeEdge, removeVertexMethods inherited from class edu.uci.ics.jung.graph.AbstractGraph
addEdge, addEdge, addEdge, addEdge, degree, getIncidentCount, getIncidentVertices, getNeighborCount, getOpposite, getPredecessorCount, getSuccessorCount, getValidatedEndpoints, inDegree, isIncident, isNeighbor, isPredecessor, isSuccessor, outDegreeMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface edu.uci.ics.jung.graph.Graph
addEdge, getOpposite, getPredecessorCount, getSuccessorCount, inDegree, isPredecessor, isSuccessor, outDegreeMethods inherited from interface edu.uci.ics.jung.graph.Hypergraph
addEdge, addEdge, degree, getIncidentCount, getIncidentVertices, getNeighborCount, isIncident, isNeighbor
-
Field Details
-
attributes
-
graphListeners
-
treeNodes
-
treeNode
-
name
public java.lang.String name -
isDestroyed
protected boolean isDestroyed -
xml_nodes
-
xml_itr
protected int xml_itr -
xml_count
protected int xml_count -
xml_block
protected java.lang.String xml_block
-
-
Constructor Details
-
InterfaceAbstractGraph
public InterfaceAbstractGraph()
-
-
Method Details
-
init
protected void init() -
clean
public void clean()Description copied from interface:CleanableObjectInstructs this object to search its members for any object which has been destroyed, and release the pointer to it.- Specified by:
cleanin interfaceCleanableObject
-
getObjectIcon
public javax.swing.Icon getObjectIcon()Description copied from interface:IconObjectReturns theIconassociated with this object.- Specified by:
getObjectIconin interfaceIconObject- Returns:
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException- Overrides:
clonein classjava.lang.Object- Throws:
java.lang.CloneNotSupportedException
-
getName
public java.lang.String getName()Description copied from interface:NamedObjectGets the name for this object.- Specified by:
getNamein interfaceNamedObject- Returns:
-
setName
public void setName(java.lang.String name)Description copied from interface:NamedObjectSets the name for this object.- Specified by:
setNamein interfaceNamedObject
-
getTreeLabel
public java.lang.String getTreeLabel()Description copied from interface:TreeObjectReturns the label text to appear in a tree node.- Specified by:
getTreeLabelin interfaceTreeObject- Returns:
-
toString
public java.lang.String toString()- Overrides:
toStringin classedu.uci.ics.jung.graph.AbstractGraph<AbstractGraphNode,AbstractGraphEdge>
-
getDefaultLayout
public java.lang.String getDefaultLayout() -
getLabelNodes
public boolean getLabelNodes() -
getLabelEdges
public boolean getLabelEdges() -
addGraphListener
-
removeGraphListener
-
fireGraphListeners
protected void fireGraphListeners() -
fireGraphListeners
protected void fireGraphListeners(int code) -
attributeUpdated
Description copied from interface:AttributeListenerCalled when an Attribute's value has been updated.- Specified by:
attributeUpdatedin interfaceAttributeListener
-
getAttribute
Description copied from interface:AttributeObjectReturns a specific attribute for this object.- Specified by:
getAttributein interfaceAttributeObject- Returns:
-
getAttributeValue
public java.lang.Object getAttributeValue(java.lang.String name)Description copied from interface:AttributeObjectGets the value of attributename, ornullif it does not exist.- Specified by:
getAttributeValuein interfaceAttributeObject- Parameters:
name- Name of the attribute- Returns:
- the value of attribute
name, ornullif it does not exist
-
getAttributes
Description copied from interface:AttributeObjectReturns the list of current attributes for this object.- Specified by:
getAttributesin interfaceAttributeObject- Returns:
-
setAttribute
public void setAttribute(java.lang.String attrName, java.lang.Object newValue)Description copied from interface:AttributeObjectSets a value for a specific attribute.- Specified by:
setAttributein interfaceAttributeObject
-
setAttributes
Description copied from interface:AttributeObjectSets the list of attributes for this object.- Specified by:
setAttributesin interfaceAttributeObject
-
graphUpdated
- Specified by:
graphUpdatedin interfaceNetworkGraphListener
-
issueTreeNode
Description copied from interface:TreeObjectIssues a newInterfaceTreeNodefor this object. The object is responsible for maintaining, updating, and destroying the tree nodes it issues, or notifying containers -- i.e., parent trees -- of changes which require the tree nodes to be modified or destroyed.- Specified by:
issueTreeNodein interfaceTreeObject- Returns:
-
setTreeNode
Description copied from interface:TreeObjectSets the children for this node'sInterfaceTreeNode.- Specified by:
setTreeNodein interfaceTreeObject
-
getPopupMenu
Description copied from interface:PopupMenuObjectProduces and returns a popup menu for this object.- Specified by:
getPopupMenuin interfacePopupMenuObject- Returns:
-
getPopupMenu
Description copied from interface:PopupMenuObjectProduces and returns a popup menu for this object. Allows an associated list of objects to be passed as an argument.- Specified by:
getPopupMenuin interfacePopupMenuObject- Returns:
-
handlePopupEvent
public void handlePopupEvent(java.awt.event.ActionEvent e)Description copied from interface:PopupMenuObjectHandles an event on this object's popup menu.- Specified by:
handlePopupEventin interfacePopupMenuObject
-
showPopupMenu
public void showPopupMenu(java.awt.event.MouseEvent e)Description copied from interface:PopupMenuObjectShows a popup menu at the point of the givenMouseEvent.- Specified by:
showPopupMenuin interfacePopupMenuObject
-
addEdge
public boolean addEdge(AbstractGraphEdge edge, AbstractGraphNode v1, AbstractGraphNode v2, edu.uci.ics.jung.graph.util.EdgeType edgeType)Overridden to set up edge properly.- Specified by:
addEdgein interfaceedu.uci.ics.jung.graph.Graph<AbstractGraphNode,AbstractGraphEdge>- Overrides:
addEdgein classedu.uci.ics.jung.graph.AbstractGraph<AbstractGraphNode,AbstractGraphEdge>- Parameters:
edge-v1-v2-edgeType-- Returns:
-
addEdge
-
addEdge
public boolean addEdge(AbstractGraphNode v1, AbstractGraphNode v2, edu.uci.ics.jung.graph.util.EdgeType edgeType) -
removeAllEdges
public void removeAllEdges()Removes all edges in this Graph. -
removeAllNodes
public void removeAllNodes()Removes all nodes in this Graph. -
getNodes
-
destroy
public void destroy()Description copied from interface:InterfaceObjectDestroy this object (prepare it to be removed from memory)- Specified by:
destroyin interfaceInterfaceObject
-
isDestroyed
public boolean isDestroyed()Description copied from interface:InterfaceObjectTest whether this object has been destroyed- Specified by:
isDestroyedin interfaceInterfaceObject- Returns:
-
getDTD
public java.lang.String getDTD()Description copied from interface:XMLObjectReturns the Data Type Declaration (DTD) for this object's XML representationSee http://en.wikipedia.org/wiki/Document_Type_Definition for a description.
-
getXMLSchema
public java.lang.String getXMLSchema()Description copied from interface:XMLObjectReturns the XML schema for this object's XML representation- Specified by:
getXMLSchemain interfaceXMLObject- Returns:
-
getXML
public java.lang.String getXML()Description copied from interface:XMLObjectReturns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)functions to write larger objects to file. -
getXML
public java.lang.String getXML(int tab)Description copied from interface:XMLObjectReturns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)functions to write larger objects to file. -
handleXMLElementStart
public void handleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles the start of an XML element.- Specified by:
handleXMLElementStartin interfaceXMLObject- Parameters:
localName- Local name of the elementattributes- Set of element attributestype- TheXMLTypeof this element- Throws:
org.xml.sax.SAXException
-
handleXMLElementEnd
public void handleXMLElementEnd(java.lang.String localName) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles the end of an XML element.- Specified by:
handleXMLElementEndin interfaceXMLObject- Parameters:
localName- Local name of the element- Throws:
org.xml.sax.SAXException
-
handleXMLString
public void handleXMLString(java.lang.String s) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles a string within an XML element.- Specified by:
handleXMLStringin interfaceXMLObject- Parameters:
s- String to handle- Throws:
org.xml.sax.SAXException
-
writeXML
public void writeXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Asciiwill be used. -
writeXML
public void writeXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file, asXMLType.Normal. The default format ofXMLFormat.Asciiwill be used. The basic contract for this method is that it should not write a newline character at its start or end. -
writeXML
public void writeXML(int tab, java.io.Writer writer) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Asciiwill be used. -
getShortXML
public java.lang.String getShortXML(int tab)Description copied from interface:XMLObjectReturns a short XML representation of this object.- Specified by:
getShortXMLin interfaceXMLObject- Returns:
-
getLocalName
public java.lang.String getLocalName()Description copied from interface:XMLObjectReturns the local name associated with this XML object.- Specified by:
getLocalNamein interfaceXMLObject- Returns:
-