package org.incha.core.jswingripples.eig.history;
import org.incha.core.jswingripples.eig.JSwingRipplesEIG;
import org.incha.core.jswingripples.eig.JSwingRipplesEIGEdge;
import org.incha.core.jswingripples.eig.JSwingRipplesEIGNode;
public class EdgeRemovedAction implements UndoAction {
/**
* The edge.
*/
private JSwingRipplesEIGEdge edge;
/**
* @param source
*/
public EdgeRemovedAction(final JSwingRipplesEIGEdge source) {
super();
this.edge = source;
}
/* (non-Javadoc)
* @see org.incha.core.jswingripples.eig.history.UndoAction#undo()
*/
@Override
public UndoAction undo() {
final JSwingRipplesEIG eig = edge.getEig();
final JSwingRipplesEIGNode fromNode = eig.getNode(edge.getFromNode().getNodeIMember());
final JSwingRipplesEIGNode toNode = eig.getNode(edge.getToNode().getNodeIMember());
final JSwingRipplesEIGEdge addedEdge = eig.addEdge(fromNode, toNode);
return new EdgeAddedAction(addedEdge);
}
}