/** * Check, if a node is a zombie. */ @Override public boolean isZombieNode(Object id) { assert SwingUtilities.isEventDispatchThread();// || Starter.isShutdown(); return super.isZombieNode(id); }
/** * Add a child and update the tree. Must be called from swing thread. */ public void addChild(int index, ITreeNode node) { // Ignore when node already removed. if(!model.isZombieNode(node.getId())) { // set parent to this ((AbstractTreeNode)node).setParent(this); if(children == null) children = new ArrayList(); children.add(index, node); model.addNode(node); model.fireNodeAdded(this, node, index); if (searching) dirty = true; // if(node.getId().toString().startsWith("ANDTest@")) // System.out.println("Node added: "+node+", "+children); } else { model.removeZombieNode(node); } }
if(!model.isZombieNode(node.getId()))