package com.bluecove.emu.gui.graph;
import java.util.Map;
import org.jgraph.graph.DefaultCellViewFactory;
import org.jgraph.graph.DefaultGraphCell;
import org.jgraph.graph.VertexView;
public class DeviceCellViewFactory extends DefaultCellViewFactory {
private static final long serialVersionUID = 1L;
public static final String VIEW_CLASS_KEY = "viewClassKey";
public static final void setViewClass(Map map, String viewClass) {
map.put(VIEW_CLASS_KEY, viewClass);
}
protected VertexView createVertexView(Object v) {
try {
DefaultGraphCell cell = (DefaultGraphCell) v;
String viewClass = (String) cell.getAttributes().get(VIEW_CLASS_KEY);
VertexView view = (VertexView) Thread.currentThread()
.getContextClassLoader().loadClass(viewClass).newInstance();
view.setCell(v);
return view;
} catch (Exception ex) {
}
return super.createVertexView(v);
}
}