Specifies the interface for objects that manage creation of and interaction with graph edges.
A factory which creates a visual representation (EdgeFigure) given an edge input.
A class that represents the main component of a typical graph editor.
A listener for changes in a graph's structure or contents, which are communicated through GraphEvent objects.
A graph model is an abstraction of a graph implementation and a registration point for GraphListeners.
A listener for changes in a graph's structure or contents, which are communicated through GraphViewEvent objects.
A mutable graph model is a read-write subclass of the read-only graph model, allowing users to actually create new nodes and edges, and to modify the topology of the graph.
Specifies the interface for objects that manage creation of and interaction with graph nodes.
A factory which creates a visual representation (Figure) given a node input.
An abstract implementation of the GraphController interface.
An abstract implementation of the GraphModel interface that provides the basic event notification system
A basic implementation of EdgeController, which works with graphs that have edges connecting simple nodes.
A basic node controller implementation, intended for use as a controller for graphs containing only one node type.
An interactor that interactively drags edges from one node to another.
An interactor for edges.
A graph event that is emitted when anything interesting happens inside a graph by way of a GraphModel.
The display part of the JGraph user-level widget.
A set of utilities for traversing/manipulating/etc. graphs.
A graph view event that is emitted when anything interesting happens inside a graph view.
A graph widget analogous to java.swing.JTree.
An interactor that drags nodes.
An interactor for nodes.
A simple graph controller, which works well if all nodes have the same interaction, and all edges have the same interaction.
A graph package topological error.
A generic and highly-extensible graph visualization library whose basic interface is a widget analogous to java.swing.JTree. The diva.graph collection of packages provides three central pieces of functionality:
For a taste of how this library works in its most basic form, the following piece of code instantiates a basic graph, containing two nodes connected by an edge ( A -> B ).
// Construct the widgets
Frame f = new Frame();
JGraph g = new JGraph();
// Construct the graph
BasicNode a = new BasicNode("a");
BasicNode b = new BasicNode("b");
BasicEdge e = new BasicEdge("e");
jg.getModel().connect(e, a, b);
// Display it all