@Override
    public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
      setBorderSelectionColor(null);
      setBackgroundSelectionColor(null);
      setBackgroundNonSelectionColor(null);
      super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
      setBackground(UIUtil.getTreeBackground(sel, hasFocus));
      setForeground(UIUtil.getTreeForeground(sel, hasFocus));

      if (value instanceof FileTemplateNode node) {
        setText((String) node.getUserObject());
        setIcon(node.getIcon());

        final FileTemplate template = getTemplate(node);
        if (template != null && !template.isDefault()) {
          if (!sel) {
            setForeground(MODIFIED_FOREGROUND);
          }
        }
      }
      return this;
    }
@Override
    public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus)