@Override
  public void treeNodesInserted(TreeModelEvent event) {
    TreePath path = event.getTreePath();
    if (path == null) return;

    if (!myTree.isVisible(path) || !myTree.isExpanded(path)) return;

    for (Object child : event.getChildren()) {
      SimpleNode node = TreeUtil.getUserObject(SimpleNode.class, child);
      if (node != null && node.isAutoExpandNode()) {
        TreeUtil.promiseExpand(myTree, event.getTreePath().pathByAddingChild(child));
      }
    }
  }
@Override
  public void treeNodesInserted(TreeModelEvent event)