public void removeNode(final ICriterionTreeNode node) {
    CriterionTreeNode.remove(node);

    final ICriterionTreeNode parent = node.getParent();
    parent.getChildren().remove(node);

    for (final ICriterionTreeListener listener : listeners) {
      try {
        listener.nodeRemoved(this, node);
      } catch (final Exception e) {
        logger.atSevere().withCause(e).log("Remove tree node");
      }
    }
  }
Root node of the criterion tree.
java/ui/src/main/java/com/google/security/zynamics/bindiff/gui/dialogs/criteriadialog/expressionmodel/CriterionTree.java