@Override
  public void update(@NotNull PresentationData presentation) {
    NamedLibraryElement library = getValue();
    if (library == null) return;

    OrderEntry orderEntry = library.getOrderEntry();
    presentation.setPresentableText(library.getName());
    Icon icon = AllIcons.Nodes.PpLibFolder;
    String tooltip = null;
    String location = null;
    if (orderEntry instanceof JdkOrderEntry jdkOrderEntry) {
      icon = getJdkIcon(jdkOrderEntry);
      Sdk projectJdk = jdkOrderEntry.getJdk();
      if (projectJdk != null) { //jdk not specified
        String path = projectJdk.getHomePath();
        if (path != null) {
          path = projectJdk.getSdkType().isLocalSdk(projectJdk) ?
                 FileUtil.toSystemDependentName(path) :
                 FileUtil.toSystemIndependentName(path);
          if (getSettings().isShowURL()) {
            location = path;
          }
          else {
            tooltip = path;
          }
        }
      }
    }
    else if (orderEntry instanceof LibraryOrderEntry libraryOrderEntry) {
      tooltip = StringUtil.capitalize(IdeBundle.message("node.projectview.library", libraryOrderEntry.getLibraryLevel()));
    }
    presentation.setIcon(icon);
    presentation.setTooltip(tooltip);
    presentation.setLocationString(location);
  }
@Override
  public void update(@NotNull PresentationData presentation)