protected Icon getItemIcon(@NotNull VirtualFile file) {
      if (!file.isValid()) return AllIcons.Nodes.PpInvalid;
      if (file.getFileSystem() instanceof HttpFileSystem) return PlatformIcons.WEB_ICON;
      if (file.getFileSystem() instanceof ArchiveFileSystem) return PlatformIcons.JAR_ICON;
      return PlatformIcons.FILE_ICON;
    }
protected Icon getItemIcon(@NotNull VirtualFile file)