List of usage examples for org.eclipse.jface.viewers DecorationOverlayIcon DecorationOverlayIcon
public DecorationOverlayIcon(ImageDescriptor baseImageDescriptor, ImageDescriptor overlayImageDescriptor, int quadrant)
From source file:org.eclipse.elk.core.ui.views.ValidatingPropertySheetEntry.java
License:Open Source License
/** * {@inheritDoc}//from w ww . j a va 2 s . c o m */ @Override public Image getImage() { Image image = super.getImage(); List<GraphIssue> issues = validate(); if (issues.isEmpty()) { return image; } else if (image != null) { String overlayKey = "error_overlay/" + image.toString(); Image result = ElkUiPlugin.getInstance().getImageRegistry().get(overlayKey); if (result == null) { DecorationOverlayIcon overlayIcon = new DecorationOverlayIcon(image, ElkUiPlugin.getImageDescriptor("icons/error_overlay.png"), IDecoration.BOTTOM_LEFT); result = overlayIcon.createImage(); ElkUiPlugin.getInstance().getImageRegistry().put(overlayKey, result); } return result; } return null; }
From source file:org.eclipse.emf.diffmerge.ui.viewers.ComparisonResourceManager.java
License:Open Source License
/** * Return an image which is based on the given one with the given overlay * @param image_p a non-null image//from w w w. ja va2 s . c o m * @param overlay_p a potentially null image ID * @return a non-null image */ public Image getOverlayVersion(Image image_p, ImageID overlay_p) { Image result; if (overlay_p == null) { result = image_p; } else { ImageOverlay io = new ImageOverlay(image_p, overlay_p); result = _normalToOverlay.get(io); if (result == null) { ImageDescriptor overlayDescriptor = EMFDiffMergeUIPlugin.getDefault().getImageDescriptor(overlay_p); DecorationOverlayIcon icon = new DecorationOverlayIcon(image_p, overlayDescriptor, IDecoration.BOTTOM_RIGHT); result = icon.createImage(image_p.getDevice()); _normalToOverlay.put(io, result); } } return result; }
From source file:org.eclipse.equinox.internal.p2.ui.dialogs.RemediationGroup.java
License:Open Source License
public void createRemediationControl(Composite container) { remediationComposite = new Composite(container, SWT.NONE); remediationComposite.setLayout(new GridLayout()); Listener solutionslistener;//ww w .j av a2 s.c o m Label descriptionLabel = new Label(remediationComposite, SWT.NONE); descriptionLabel.setText(ProvUIMessages.RemediationPage_SubDescription); solutionslistener = new Listener() { public void handleEvent(Event e) { Button btn = (Button) e.widget; Remedy remedy = (btn.getData() == null ? null : (Remedy) btn.getData()); checkboxes.get(ALLOWPARTIALINSTALL_INDEX) .setSelection(remedy != null && remedy.getConfig().allowPartialInstall); checkboxes.get(ALLOWDIFFERENTVERSION_INDEX) .setSelection(remedy != null && remedy.getConfig().allowDifferentVersion); checkboxes.get(ALLOWINSTALLEDUPDATE_INDEX) .setSelection(remedy != null && remedy.getConfig().allowInstalledUpdate); checkboxes.get(ALLOWINSTALLEDREMOVAL_INDEX) .setSelection(remedy != null && remedy.getConfig().allowInstalledRemoval); for (Iterator<Button> iterator = checkboxes.iterator(); iterator.hasNext();) { Button btn1 = iterator.next(); btn1.setVisible(true); } if (btn == buildMyOwnSolution && btn.getSelection()) { checkBoxesComposite.setVisible(true); ((GridData) checkBoxesComposite.getLayoutData()).exclude = false; } else { checkBoxesComposite.setVisible(false); ((GridData) checkBoxesComposite.getLayoutData()).exclude = true; } currentRemedy = searchRemedyMatchingUserChoices(); refreshResultComposite(); remediationComposite.layout(false); } }; bestBeingInstalledRelaxedButton = new Button(remediationComposite, SWT.RADIO); bestBeingInstalledRelaxedButton.setText(ProvUIMessages.RemediationPage_BestSolutionBeingInstalledRelaxed); bestBeingInstalledRelaxedButton.addListener(SWT.Selection, solutionslistener); bestInstalledRelaxedButton = new Button(remediationComposite, SWT.RADIO); bestInstalledRelaxedButton.setText(ProvUIMessages.RemediationPage_BestSolutionInstallationRelaxed); bestInstalledRelaxedButton.addListener(SWT.Selection, solutionslistener); buildMyOwnSolution = new Button(remediationComposite, SWT.RADIO); buildMyOwnSolution.setText(ProvUIMessages.RemediationPage_BestSolutionBuilt); buildMyOwnSolution.addListener(SWT.Selection, solutionslistener); Listener checkboxListener = new Listener() { public void handleEvent(Event e) { currentRemedy = searchRemedyMatchingUserChoices(); refreshResultComposite(); } }; checkBoxesComposite = new Composite(remediationComposite, SWT.NONE); checkBoxesComposite.setLayout(new GridLayout(1, false)); GridData data = new GridData(); data.exclude = false; data.horizontalAlignment = SWT.FILL; checkBoxesComposite.setLayoutData(data); GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false); gd.horizontalIndent = 30; Iterator<String> iter = CONSTRAINTS.keySet().iterator(); while (iter.hasNext()) { String key = iter.next(); String[] values = CONSTRAINTS.get(key); for (String value : values) { Button checkBtn = new Button(checkBoxesComposite, SWT.CHECK); checkBtn.setText(value); checkBtn.setData(value); checkBtn.setLayoutData(gd); checkBtn.addListener(SWT.Selection, checkboxListener); checkboxes.add(checkBtn); } } resultComposite = new Composite(remediationComposite, SWT.NONE); // GridLayoutFactory.fillDefaults().numColumns(1).applyTo(resultComposite); switchRemediationLayout = new StackLayout(); resultComposite.setLayout(switchRemediationLayout); GridData data1 = new GridData(GridData.FILL_BOTH); resultComposite.setLayoutData(data1); resultErrorComposite = new Composite(resultComposite, SWT.NONE); resultErrorComposite.setLayout(new GridLayout()); resultErrorComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); resultNotFoundComposite = new Composite(resultComposite, SWT.NONE); resultNotFoundComposite.setLayout(new GridLayout()); Label resultNotFoundLabel = new Label(resultNotFoundComposite, SWT.NONE); resultNotFoundLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); resultNotFoundLabel.setText(ProvUIMessages.RemediationPage_NoSolutionFound); resultFoundComposite = new Composite(resultComposite, SWT.NONE); resultFoundComposite.setLayout(new GridLayout()); Group insideFoundComposite = new Group(resultFoundComposite, SWT.NONE); insideFoundComposite.setText(ProvUIMessages.RemediationPage_SolutionDetails); GridLayout gridLayout = new GridLayout(); gridLayout.marginWidth = 0; gridLayout.marginHeight = 0; insideFoundComposite.setLayout(gridLayout); insideFoundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); treeViewer = new TreeViewer(insideFoundComposite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); ColumnViewerToolTipSupport.enableFor(treeViewer); data = new GridData(GridData.FILL_BOTH); Tree tree = treeViewer.getTree(); tree.setLayoutData(data); tree.setHeaderVisible(true); TreeViewerColumn nameColumn = new TreeViewerColumn(treeViewer, SWT.LEFT); nameColumn.getColumn().setText(ProvUIMessages.ProvUI_NameColumnTitle); nameColumn.getColumn().setWidth(400); nameColumn.getColumn().setMoveable(true); nameColumn.getColumn().addSelectionListener(columnChangeListener(0)); nameColumn.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof RemedyElementCategory) return ((RemedyElementCategory) element).getName(); if (element instanceof RemedyIUDetail) { RemedyIUDetail iu = (RemedyIUDetail) element; String label = iu.getIu().getProperty(IInstallableUnit.PROP_NAME, null); if (label == null) label = iu.getIu().getId(); return label; } return super.getText(element); } public Image getImage(Object element) { if (element instanceof RemedyElementCategory) { RemedyElementCategory category = (RemedyElementCategory) element; if (category.getName().equals(ProvUIMessages.RemedyCategoryAdded)) return ProvUIImages.getImage(ProvUIImages.IMG_ADDED); if (category.getName().equals(ProvUIMessages.RemedyCategoryChanged)) return ProvUIImages.getImage(ProvUIImages.IMG_CHANGED); if (category.getName().equals(ProvUIMessages.RemedyCategoryNotAdded)) return ProvUIImages.getImage(ProvUIImages.IMG_NOTADDED); if (category.getName().equals(ProvUIMessages.RemedyCategoryRemoved)) return ProvUIImages.getImage(ProvUIImages.IMG_REMOVED); } else if (element instanceof RemedyIUDetail) { RemedyIUDetail iuDetail = (RemedyIUDetail) element; int status = compare(iuDetail); if (compare(iuDetail.getBeingInstalledVersion(), iuDetail.getRequestedVersion()) < 0 && containerPage != null && containerPage.getWizard() instanceof UpdateWizard) { Image img = ProvUIImages.getImage(ProvUIImages.IMG_UPGRADED_IU); ImageDescriptor overlay = ProvUIActivator.getDefault().getImageRegistry() .getDescriptor(ProvUIImages.IMG_INFO); String decoratedImageId = ProvUIImages.IMG_UPGRADED_IU.concat(ProvUIImages.IMG_INFO); if (ProvUIActivator.getDefault().getImageRegistry().get(decoratedImageId) == null) { DecorationOverlayIcon decoratedImage = new DecorationOverlayIcon(img, overlay, IDecoration.BOTTOM_RIGHT); ProvUIActivator.getDefault().getImageRegistry().put(decoratedImageId, decoratedImage); } Image decoratedImg = ProvUIActivator.getDefault().getImageRegistry().get(decoratedImageId); return decoratedImg; } if (status < 0) return ProvUIImages.getImage(ProvUIImages.IMG_DOWNGRADED_IU); if (status > 0) return ProvUIImages.getImage(ProvUIImages.IMG_UPGRADED_IU); return ProvUIImages.getImage(ProvUIImages.IMG_IU); } return super.getImage(element); } public String getToolTipText(Object element) { if (element instanceof RemedyIUDetail) { RemedyIUDetail iuDetail = (RemedyIUDetail) element; String toolTipText = ""; //$NON-NLS-1$ List<String> versions = new ArrayList<String>(); if (iuDetail.getInstalledVersion() != null) versions.add(ProvUIMessages.RemedyElementInstalledVersion + iuDetail.getInstalledVersion().toString()); if (iuDetail.getRequestedVersion() != null) versions.add(ProvUIMessages.RemedyElementRequestedVersion + iuDetail.getRequestedVersion().toString()); if (iuDetail.getBeingInstalledVersion() != null) versions.add(ProvUIMessages.RemedyElementBeingInstalledVersion + iuDetail.getBeingInstalledVersion().toString()); for (Iterator<String> iterator = versions.iterator(); iterator.hasNext();) { String version = iterator.next(); toolTipText += (toolTipText == "" ? "" : "\n") + version; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ } if (containerPage != null && containerPage.getWizard() instanceof UpdateWizard && compare(iuDetail.getBeingInstalledVersion(), iuDetail.getRequestedVersion()) < 0) toolTipText = ProvUIMessages.RemedyElementNotHighestVersion + "\n\n" + toolTipText; //$NON-NLS-1$ return toolTipText; } return super.getToolTipText(element); } private int compare(Version versionA, Version versionB) { if (versionA != null && versionB != null) return versionA.compareTo(versionB); return 0; } private int compare(RemedyIUDetail iuDetail) { if (iuDetail.getStatus() == RemedyIUDetail.STATUS_ADDED && iuDetail.getRequestedVersion() != null && iuDetail.getBeingInstalledVersion() != null) { return compare(iuDetail.getBeingInstalledVersion(), iuDetail.getRequestedVersion()); } if (iuDetail.getStatus() == RemedyIUDetail.STATUS_CHANGED && iuDetail.getInstalledVersion() != null && iuDetail.getBeingInstalledVersion() != null) { return compare(iuDetail.getBeingInstalledVersion(), iuDetail.getInstalledVersion()); } return 0; } }); TreeViewerColumn versionColumn = new TreeViewerColumn(treeViewer, SWT.LEFT); versionColumn.getColumn().setText(ProvUIMessages.ProvUI_VersionColumnTitle); versionColumn.getColumn().setWidth(200); versionColumn.getColumn().addSelectionListener(columnChangeListener(1)); versionColumn.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof RemedyIUDetail) { RemedyIUDetail iu = (RemedyIUDetail) element; if (iu.getBeingInstalledVersion() != null) return iu.getBeingInstalledVersion().toString(); } return ""; //$NON-NLS-1$ } }); TreeViewerColumn idColumn = new TreeViewerColumn(treeViewer, SWT.LEFT); idColumn.getColumn().setText(ProvUIMessages.ProvUI_IdColumnTitle); idColumn.getColumn().setWidth(200); idColumn.getColumn().addSelectionListener(columnChangeListener(2)); idColumn.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof RemedyIUDetail) { RemedyIUDetail iu = (RemedyIUDetail) element; return iu.getIu().getId(); } return ""; //$NON-NLS-1$ } }); treeComparator = new TreeViewerComparator(); treeViewer.setComparator(treeComparator); treeViewer.setContentProvider(new RemedyContentProvider()); treeViewer.setAutoExpandLevel(2); iuDetailsGroup = new IUDetailsGroup(resultErrorComposite, treeViewer, 500, true); }
From source file:org.eclipse.handly.ui.viewer.ProblemLabelDecorator.java
License:Open Source License
@Override public Image decorateImage(Image image, Object element) { if (image == null) return null; Severity severity = computeProblemSeverity(element); if (severity == null) return null; return (Image) getResourceManager() .get(new DecorationOverlayIcon(image, getOverlayImage(severity), IDecoration.BOTTOM_LEFT)); }
From source file:org.eclipse.jdt.internal.ui.wizards.buildpaths.CPListLabelProvider.java
License:Open Source License
@Override public Image getImage(Object element) { if (element instanceof CPListElement) { CPListElement cpentry = (CPListElement) element; ImageDescriptor imageDescriptor = getCPListElementBaseImage(cpentry); if (imageDescriptor != null) { if (cpentry.isMissing() || cpentry.hasMissingChildren()) { imageDescriptor = new JavaElementImageDescriptor(imageDescriptor, JavaElementImageDescriptor.ERROR, JavaElementImageProvider.SMALL_SIZE); }//from w ww.j a v a2 s . c o m return fRegistry.get(imageDescriptor); } } else if (element instanceof CPListElementAttribute) { CPListElementAttribute attribute = (CPListElementAttribute) element; String key = (attribute).getKey(); if (key.equals(CPListElement.SOURCEATTACHMENT)) { return fRegistry.get(JavaPluginImages.DESC_OBJS_SOURCE_ATTACH_ATTRIB); } else if (key.equals(CPListElement.OUTPUT)) { return fRegistry.get(JavaPluginImages.DESC_OBJS_OUTPUT_FOLDER_ATTRIB); } else if (key.equals(CPListElement.EXCLUSION)) { return fRegistry.get(JavaPluginImages.DESC_OBJS_EXCLUSION_FILTER_ATTRIB); } else if (key.equals(CPListElement.INCLUSION)) { return fRegistry.get(JavaPluginImages.DESC_OBJS_INCLUSION_FILTER_ATTRIB); } else if (key.equals(CPListElement.ACCESSRULES)) { return fRegistry.get(JavaPluginImages.DESC_OBJS_ACCESSRULES_ATTRIB); } else if (key.equals(CPListElement.IGNORE_OPTIONAL_PROBLEMS)) { Image image = fRegistry.get(getCPListElementBaseImage(attribute.getParent())); if (image != null) { ImageDescriptor overlay = JavaPluginImages.DESC_OVR_IGNORE_OPTIONAL_PROBLEMS; ImageDescriptor imageDescriptor = new DecorationOverlayIcon(image, overlay, IDecoration.BOTTOM_LEFT); return fRegistry.get(imageDescriptor); } } else { ClasspathAttributeConfiguration config = fAttributeDescriptors.get(key); if (config != null) { return fRegistry.get(config.getImageDescriptor(attribute.getClasspathAttributeAccess())); } } return fSharedImages.getImage(ISharedImages.IMG_OBJS_CLASSPATH_VAR_ENTRY); } else if (element instanceof CPUserLibraryElement) { if (((CPUserLibraryElement) element).hasMissingChildren()) { ImageDescriptor descriptor = fSharedImages.getImageDescriptor(ISharedImages.IMG_OBJS_LIBRARY); if (descriptor != null) { return fRegistry.get(new JavaElementImageDescriptor(descriptor, JavaElementImageDescriptor.ERROR, JavaElementImageProvider.SMALL_SIZE)); } } return fSharedImages.getImage(ISharedImages.IMG_OBJS_LIBRARY); } else if (element instanceof IAccessRule) { IAccessRule rule = (IAccessRule) element; return AccessRulesLabelProvider.getResolutionImage(rule.getKind()); } return null; }
From source file:org.eclipse.jdt.internal.ui.wizards.buildpaths.CPVariableElementLabelProvider.java
License:Open Source License
public CPVariableElementLabelProvider(boolean highlightReadOnly) { ImageRegistry reg = JavaPlugin.getDefault().getImageRegistry(); fJARImage = reg.get(JavaPluginImages.IMG_OBJS_EXTJAR); fFolderImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER); fDeprecatedJARImage = new DecorationOverlayIcon(fJARImage, JavaPluginImages.DESC_OVR_DEPRECATED, IDecoration.TOP_LEFT).createImage(); fDeprecatedFolderImage = new DecorationOverlayIcon(fFolderImage, JavaPluginImages.DESC_OVR_DEPRECATED, IDecoration.TOP_LEFT).createImage(); fHighlightReadOnly = highlightReadOnly; }
From source file:org.eclipse.jubula.client.ui.constants.IconConstants.java
License:Open Source License
/** * Puts the given overlay on top of another image * @param image the image//from w w w. j av a 2 s . c o m * @param overlay the overlay * @param quadrant the position * @return image */ public static Image decorateImage(Image image, ImageDescriptor overlay, int quadrant) { DecorationOverlayIcon icon = new DecorationOverlayIcon(image, overlay, quadrant); Image img = CACHE.get(icon); if (img == null) { img = icon.createImage(); CACHE.put(icon, img); } return img; }
From source file:org.eclipse.languageserver.outline.SymbolsLabelProvider.java
License:Open Source License
private Image getOverlay(Image res, int maxSeverity) { if (maxSeverity != 1 && maxSeverity != 2) { throw new IllegalArgumentException("Severity " + maxSeverity + " not supported."); //$NON-NLS-1$ //$NON-NLS-2$ }/*from w w w . j a va 2s . c o m*/ if (!this.overlays.containsKey(res)) { this.overlays.put(res, new Image[2]); } Image[] currentOverlays = this.overlays.get(res); if (currentOverlays[maxSeverity - 1] == null) { String overlayId = null; if (maxSeverity == IMarker.SEVERITY_ERROR) { overlayId = ISharedImages.IMG_DEC_FIELD_ERROR; } else if (maxSeverity == IMarker.SEVERITY_WARNING) { overlayId = ISharedImages.IMG_DEC_FIELD_WARNING; } currentOverlays[maxSeverity - 1] = new DecorationOverlayIcon(res, PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(overlayId), IDecoration.BOTTOM_LEFT).createImage(); } return currentOverlays[maxSeverity - 1]; }
From source file:org.eclipse.m2e.core.ui.internal.MavenImages.java
License:Open Source License
private static ImageDescriptor createOverlayDescriptor(ImageDescriptor base, ImageDescriptor overlay, int quadrant) { return new DecorationOverlayIcon(base.createImage(), overlay, quadrant); }
From source file:org.eclipse.m2e.core.ui.internal.MavenImages.java
License:Open Source License
private static ImageDescriptor createOverlayDescriptor(Image base, ImageDescriptor overlay, int quadrant) { return new DecorationOverlayIcon(base, overlay, quadrant); }