1 19 package org.lucane.applications.whiteboard.operations.changers; 20 21 import org.lucane.applications.whiteboard.graph.GraphUtils; 22 import org.lucane.applications.whiteboard.graph.MyGraph; 23 24 import org.jgraph.graph.*; 25 26 public class EdgeChanger extends CellChanger 27 { 28 public void change(MyGraph graph, GraphCell toChange, GraphCell source) 29 { 30 super.change(graph, toChange, source); 31 32 DefaultEdge to = (DefaultEdge)toChange; 33 DefaultEdge from = (DefaultEdge)source; 34 35 DefaultPort sourcePort = (DefaultPort)from.getSource(); 36 DefaultPort targetPort = (DefaultPort)from.getTarget(); 37 38 if(sourcePort == null) 39 to.setSource(null); 40 else 41 { 42 DefaultGraphCell parent = GraphUtils.findCorrespondingCell(graph, (DefaultGraphCell)sourcePort.getParent()); 43 sourcePort.setParent(parent); 44 to.setSource(sourcePort); 45 } 46 47 if(targetPort == null) 48 to.setTarget(null); 49 else 50 { 51 DefaultGraphCell parent = GraphUtils.findCorrespondingCell(graph, (DefaultGraphCell)targetPort.getParent()); 52 targetPort.setParent(parent); 53 to.setTarget(targetPort); 54 } 55 } 56 } | Popular Tags |