@Override public void updateInPerspective(ActionEvent e) { final Resource[] resources = appContext.getResources(); final boolean inJavaProject = resources != null && resources.length == 1 && isJavaProject(resources[0].getRelatedProject().get()); e.getPresentation() .setEnabledAndVisible( inJavaProject && resources[0].getMarker(SourceFolderMarker.ID).isPresent()); } }
@Override public SVGResource getIcon(Resource resource) { if (resource.getResourceType() != FOLDER) { return null; } final Optional<Marker> srcMarker = resource.getMarker(SourceFolderMarker.ID); if (srcMarker.isPresent()) { final ContentRoot contentRoot = ((SourceFolderMarker) srcMarker.get()).getContentRoot(); switch (contentRoot) { case SOURCE: return javaResources.sourceFolder(); case TEST_SOURCE: return javaResources.testFolder(); default: return null; } } return null; } }
protected Node transform(ResourceNode resourceNode) { final Optional<Resource> srcFolder = resourceNode.getData().getParentWithMarker(SourceFolderMarker.ID); if (!srcFolder.isPresent()) { return resourceNode; } final Optional<Marker> marker = srcFolder.get().getMarker(SourceFolderMarker.ID); final ContentRoot contentRoot = ((SourceFolderMarker) marker.get()).getContentRoot(); if (contentRoot == ContentRoot.TEST_SOURCE && !resourceNode.getData().getLocation().equals(srcFolder.get().getLocation())) { resourceNode .getAttributes() .put( CUSTOM_BACKGROUND_FILL, singletonList(Style.theme.projectExplorerTestItemBackground())); } return resourceNode; } }
@Override public void updateInPerspective(ActionEvent e) { final Resource[] resources = appContext.getResources(); if (resources == null || resources.length != 1) { e.getPresentation().setEnabledAndVisible(false); return; } Resource resource = resources[0]; final boolean inJavaProject = isJavaProject(resource.getRelatedProject().get()); e.getPresentation() .setEnabledAndVisible( inJavaProject && resource.isFolder() && !resource.getMarker(SourceFolderMarker.ID).isPresent()); } }
final StringBuilder cssBuilder = new StringBuilder(); final Optional<Marker> presentableTextMarker = getData().getMarker(PresentableTextMarker.ID); if (presentableTextMarker.isPresent() && getData() instanceof Container) { presentation.setPresentableText(