/** * Adds the nodes and arcs to this graph/canvas. Also sets the graph node and arc style on every * node and arc. */ protected void loadModel() { clear(); addGraphItems(model.getAllNodes(), model.getAllArcs()); }
public void setModel(GraphModel model) { GraphModel oldModel = this.model; oldModel.removeGraphModelListener(modelListener); // now remove any of "our" graph model listeners for (GraphModelListener gml : graphModelListeners) { oldModel.removeGraphModelListener(gml); } // don't allow null models if (model == null) { model = new DefaultGraphModel(); } this.model = model; this.model.addGraphModelListener(modelListener); // now add "our" graph model listeners back for (GraphModelListener gml : graphModelListeners) { this.model.addGraphModelListener(gml); } loadModel(); firePropertyChange(GRAPH_MODEL_PROPERTY, oldModel, this.model); }
protected void updateArcTypes() { GraphModel model = graph.getModel(); Collection<Object> newArcTypes = model.getArcTypes(); if (newArcTypes.isEmpty()) { arcTypesVisibilityMap.clear(); } else { // first remove any node types that no longer exist for (Iterator<Object> iter = arcTypesVisibilityMap.keySet().iterator(); iter.hasNext();) { Object oldArcType = iter.next(); if (!newArcTypes.contains(oldArcType)) { iter.remove(); } } // now add any that don't already exist (visible by default) for (Object arcType : newArcTypes) { if (!arcTypesVisibilityMap.containsKey(arcType)) { arcTypesVisibilityMap.put(arcType, true); } } } }
public void setGraphNodeStyle(GraphNodeStyle style) { if ((style != null) && (this.nodeStyle != style)) { GraphNodeStyle oldStyle = this.nodeStyle; this.nodeStyle = style; // now update the styles on all nodes Collection<GraphNode> nodes = model.getAllNodes(); for (GraphNode node : nodes) { node.setNodeStyle(this.nodeStyle); } firePropertyChange(GRAPH_NODE_STYLE_PROPERTY, oldStyle, this.nodeStyle); } }
public void setGraphArcStyle(GraphArcStyle style) { if ((style != null) && (this.arcStyle != style)) { GraphArcStyle oldStyle = this.arcStyle; this.arcStyle = style; // now update the styles on all arcs Collection<GraphArc> arcs = model.getAllArcs(); for (GraphArc arc : arcs) { arc.setArcStyle(this.arcStyle); } firePropertyChange(GRAPH_ARC_STYLE_PROPERTY, oldStyle, this.arcStyle); } }
public void runLayout() { Collection<GraphNode> nodes = graph.getModel().getVisibleNodes(); Collection<GraphArc> arcs = graph.getModel().getVisibleArcs(); DefaultGraphNode[] entities = nodes.toArray(new DefaultGraphNode[nodes.size()]);
public void addGraphModelListener(GraphModelListener gml) { graphModelListeners.add(gml); getModel().addGraphModelListener(gml); }
public void removeGraphModelListener(GraphModelListener gml) { graphModelListeners.remove(gml); getModel().removeGraphModelListener(gml); }
protected void updateNodeTypes() { GraphModel model = graph.getModel(); // ensure that the new node types match the old ones, // preserving the original node type visibilities Collection<Object> newNodeTypes = model.getNodeTypes(); if (newNodeTypes.isEmpty()) { nodeTypesVisibilityMap.clear(); } else { // first remove any node types that no longer exist for (Iterator<Object> iter = nodeTypesVisibilityMap.keySet().iterator(); iter.hasNext();) { Object oldNodeType = iter.next(); if (!newNodeTypes.contains(oldNodeType)) { iter.remove(); } } // now add any that don't already exist (visible by default) for (Object nodeType : newNodeTypes) { if (!nodeTypesVisibilityMap.containsKey(nodeType)) { nodeTypesVisibilityMap.put(nodeType, true); } } } }
private void applyNodeFilters(GraphModel model) { Collection<GraphNode> nodes = model.getAllNodes(); for (GraphNode node : nodes) { //boolean oldVisibility = node.isVisible(); boolean newVisibility = true; // visible by default for (GraphFilter filter : filters) { // only apply this filter if it is a node filter if (filter.isNodeFilter()) { newVisibility = filter.isVisible(node); // we stop once one filter says this node should be hidden if (!newVisibility) { break; } } } //if (oldVisibility != newVisibility) { node.setVisible(newVisibility); //} } }
for(GraphArc arc : model.getAllArcs()) { if(arc instanceof DefaultGraphArc) { DefaultGraphArc graphArc = (DefaultGraphArc)arc;
graph.getModel().addGraphModelListener(new GraphModelAdapter() { @Override public void graphArcTypeAdded(Object arcType) {
for(GraphNode node : model.getAllNodes()) { if(node instanceof DefaultGraphNode) { DefaultGraphNode graphNode = (DefaultGraphNode)node;
private void applyArcFilters(GraphModel model) { Collection<GraphArc> arcs = model.getAllArcs(); for (GraphArc arc : arcs) { boolean oldVisibility = arc.isVisible(); boolean newVisibility = true; // visible by default for (GraphFilter filter : filters) { // only apply this filter if it is an arc filter if (filter.isArcFilter()) { newVisibility = filter.isVisible(arc); // we stop once one filter says this arc should be hidden if (!newVisibility) { break; } } } if (oldVisibility != newVisibility) { arc.setVisible(newVisibility); } } }
filterManager.addFilterChangedListener(nodeFilterPanel); graph.getModel().addGraphModelListener(new GraphModelAdapter() { @Override public void graphNodeTypeAdded(Object nodeType) {