@Override
 public void showTargetFeedback(Request request) {
   super.showTargetFeedback(request);
   Connection conn = getConnection();
   conn.getSourceNode().highlight(true);
   conn.getTargetNode().highlight(true);
   if (getHostFigure() instanceof ConnexionFigure) {
     ((ConnexionFigure) getHostFigure()).highlight(true);
   }
 }
 @Override
 public void eraseTargetFeedback(Request request) {
   // TODO Auto-generated method stub
   super.eraseTargetFeedback(request);
   if (getHostFigure() instanceof ConnexionFigure) {
     ((ConnexionFigure) getHostFigure()).highlight(false);
   }
   Connection conn = getConnection();
   conn.getSourceNode().highlight(false);
   conn.getTargetNode().highlight(false);
 }
 @Override
 public void undo() {
   link.getBendpoints().add(index, location);
 }
 @Override
 public void execute() {
   location = link.getBendpoints().get(index);
   link.getBendpoints().remove(index);
   link.forceRefresh();
 }
 @Override
 public boolean canExecute() {
   return (link != null) && (link.getBendpoints().size() > index);
 }