It appears that adding them to the
"model" (vgraph.graph.xmlData) directly is the best way. I have been
using functions like this (adapted from a posting to the mailing
list):
private function addNode(e : MouseEvent) : void {
addToGraph(
<Nodes>
<Node id='nodeA' label='nodeA' color='0xFF0000' size='40' /
>
</Nodes>
);
}
private function addToGraph(newNodes : XML) : void {
vgraph.newNodesDefaultVisible = true;
var nodes : XMLList = newNodes..Node;
var edges : XMLList = newNodes..Edge;
var root : IVisualNode = vgraph.currentRootVNode;
for (var i : Number = 0; i < nodes.length(); i++) {
if (!vgraph.graph.xmlData.children().contains(nodes[i])) {
vgraph.graph.xmlData.appendChild(nodes[i]);
var newNode : IVisualNode = vgraph.createNode(nodes
[i].@id, nodes[i]);
}
}
for (var j : Number = 0; j < edges.length(); j++) {
if (!vgraph.graph.xmlData.children().contains(edges[j])) {
vgraph.graph.xmlData.appendChild(edges[j]);
var fromNode : INode = vgraph.graph.nodeByStringId(edges
[j].@fromID);
var toNode : INode = vgraph.graph.nodeByStringId(edges
[j].@toID);
var newEdge : IVisualEdge = vgraph.linkNodes
(fromNode.vnode, toNode.vnode);
newEdge.data = edges[j];
}
}
vgraph.draw();
}
On Jun 16, 2:24 pm, "
rexmedo...@gmail.com" <
rexmedo...@gmail.com>
wrote: