Example usage for org.eclipse.jface.resource CompositeImageDescriptor CompositeImageDescriptor

List of usage examples for org.eclipse.jface.resource CompositeImageDescriptor CompositeImageDescriptor

Introduction

In this page you can find the example usage for org.eclipse.jface.resource CompositeImageDescriptor CompositeImageDescriptor.

Prototype

protected CompositeImageDescriptor() 

Source Link

Document

Constructs an uninitialized composite image.

Usage

From source file:br.com.santos.celeste.outros.ResourceManager.java

License:Open Source License

/**
 * Returns an {@link Image} composed of a base image decorated by another image.
 * /* w  w w  .j  a  va2 s .c om*/
 * @param baseImage
 *            the base {@link Image} that should be decorated.
 * @param decorator
 *            the {@link Image} to decorate the base image.
 * @param corner
 *            the corner to place decorator image.
 * @return the resulting decorated {@link Image}.
 */
public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
    if (corner <= 0 || corner >= LAST_CORNER_KEY) {
        throw new IllegalArgumentException("Wrong decorate corner");
    }
    Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[corner];
    if (cornerDecoratedImageMap == null) {
        cornerDecoratedImageMap = new HashMap<Image, Map<Image, Image>>();
        m_decoratedImageMap[corner] = cornerDecoratedImageMap;
    }
    Map<Image, Image> decoratedMap = cornerDecoratedImageMap.get(baseImage);
    if (decoratedMap == null) {
        decoratedMap = new HashMap<Image, Image>();
        cornerDecoratedImageMap.put(baseImage, decoratedMap);
    }
    //
    Image result = decoratedMap.get(decorator);
    if (result == null) {
        final Rectangle bib = baseImage.getBounds();
        final Rectangle dib = decorator.getBounds();
        final Point baseImageSize = new Point(bib.width, bib.height);
        CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(baseImage.getImageData(), 0, 0);
                if (corner == TOP_LEFT) {
                    drawImage(decorator.getImageData(), 0, 0);
                } else if (corner == TOP_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, 0);
                } else if (corner == BOTTOM_LEFT) {
                    drawImage(decorator.getImageData(), 0, bib.height - dib.height);
                } else if (corner == BOTTOM_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, bib.height - dib.height);
                }
            }

            @Override
            protected Point getSize() {
                return baseImageSize;
            }
        };
        //
        result = compositImageDesc.createImage();
        decoratedMap.put(decorator, result);
    }
    return result;
}

From source file:com.aptana.ide.server.ui.decorators.WebServerDecorator.java

License:Open Source License

/**
 * @see org.eclipse.jface.viewers.ILabelDecorator#decorateImage(org.eclipse.swt.graphics.Image, java.lang.Object)
 *///w  w  w.  j a  v  a2  s . co m
public Image decorateImage(final Image image, Object element) {
    IServer srv = (IServer) element;
    if (shouldDecorate(srv)) {
        if (decoratedImages == null) {
            decoratedImages = new HashMap<Image, Image>();
            Display.getDefault().disposeExec(new Runnable() {

                public void run() {
                    for (Image i : decoratedImages.keySet()) {
                        Image image = decoratedImages.get(i);
                        if (image != null) {
                            image.dispose();
                        }
                    }
                }

            });
        }
        Image image2 = decoratedImages.get(image);
        if (image2 != null) {
            return image2;
        }
        CompositeImageDescriptor ma = new CompositeImageDescriptor() {

            @Override
            protected void drawCompositeImage(int width, int height) {
                ImageData bg = image.getImageData();
                drawImage(bg, 0, 0);
                drawBottomRight();
            }

            protected void drawBottomRight() {
                ImageData bg = proxy.getImageData();
                drawImage(bg, 8, 8);
            }

            @Override
            protected Point getSize() {
                Rectangle bounds = image.getBounds();
                return new Point(bounds.width, image.getBounds().height);
            }

        };
        Image createImage = ma.createImage();
        decoratedImages.put(image, createImage);
        return createImage;
    }
    return null;
}

From source file:com.ibm.etools.mft.pattern.bpm.integration.code.designer.ResourceManager.java

License:Open Source License

public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
    if (corner <= 0 || corner >= LAST_CORNER_KEY) {
        throw new IllegalArgumentException("Wrong decorate corner"); //$NON-NLS-1$
    }/*from  w  w w  . j av  a  2s  . c  om*/
    Map cornerDecoratedImageMap = decoratedImageMap[corner];
    if (cornerDecoratedImageMap == null) {
        cornerDecoratedImageMap = new HashMap();
        decoratedImageMap[corner] = cornerDecoratedImageMap;
    }
    Map decoratedMap = (Map) cornerDecoratedImageMap.get(baseImage);
    if (decoratedMap == null) {
        decoratedMap = new HashMap();
        cornerDecoratedImageMap.put(baseImage, decoratedMap);
    }

    Image result = (Image) decoratedMap.get(decorator);
    if (result == null) {
        final Rectangle bib = baseImage.getBounds();
        final Rectangle dib = decorator.getBounds();
        final Point baseImageSize = new Point(bib.width, bib.height);
        CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(baseImage.getImageData(), 0, 0);
                if (corner == TOP_LEFT) {
                    drawImage(decorator.getImageData(), 0, 0);
                } else if (corner == TOP_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, 0);
                } else if (corner == BOTTOM_LEFT) {
                    drawImage(decorator.getImageData(), 0, bib.height - dib.height);
                } else if (corner == BOTTOM_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, bib.height - dib.height);
                }
            }

            @Override
            protected Point getSize() {
                return baseImageSize;
            }
        };

        result = compositImageDesc.createImage();
        decoratedMap.put(decorator, result);
    }
    return result;
}

From source file:net.sf.eclipsensis.editor.outline.NSISOutlineLabelProvider.java

License:Open Source License

private Image decorateImage(NSISOutlineElement element) {
    final Image image = (element.isRoot() ? cRootImage : element.getIcon());
    final ImageData data;
    String hashCode;//ww  w.ja va2s .c  om
    int severity = getElementSeverity(element);
    switch (severity) {
    case IMarker.SEVERITY_ERROR:
        hashCode = image.hashCode() + "$error"; //$NON-NLS-1$
        data = cErrorImageData;
        break;
    case IMarker.SEVERITY_WARNING:
        hashCode = image.hashCode() + "$warning"; //$NON-NLS-1$
        data = cWarningImageData;
        break;
    default:
        return image;
    }
    Image image2 = EclipseNSISPlugin.getImageManager().getImage(hashCode);
    if (image2 == null) {
        EclipseNSISPlugin.getImageManager().putImageDescriptor(hashCode, new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(image.getImageData(), 0, 0);
                drawImage(data, 0, getSize().y - data.height);
            }

            @Override
            protected Point getSize() {
                return new Point(image.getBounds().width, image.getBounds().height);
            }
        });
        image2 = EclipseNSISPlugin.getImageManager().getImage(hashCode);
    }
    return image2;
}

From source file:net.sf.eclipsensis.wizard.settings.NSISInstallElementLabelProvider.java

License:Open Source License

private Image decorateImage(final Image image, INSISInstallElement element) {
    String name = Integer.toString(image.hashCode()) + "$error"; //$NON-NLS-1$
    Image image2 = EclipseNSISPlugin.getImageManager().getImage(name);
    if (image2 == null) {
        EclipseNSISPlugin.getImageManager().putImageDescriptor(name, new CompositeImageDescriptor() {
            @Override/*from   w w w .j a va 2 s.c o  m*/
            protected void drawCompositeImage(int width, int height) {
                drawImage(image.getImageData(), 0, 0);
                drawImage(cErrorImageData, 0, getSize().y - cErrorImageData.height);
            }

            @Override
            protected Point getSize() {
                return new Point(image.getBounds().width, image.getBounds().height);
            }
        });
        image2 = EclipseNSISPlugin.getImageManager().getImage(name);
    }
    return image2;
}

From source file:org.eclipse.babel.swt.ResourceManager.java

License:Open Source License

/**
 * Returns an {@link Image} composed of a base image decorated by another image.
 * /*from www  .j  a  v  a2  s  .co m*/
 * @param baseImage
 *            the base {@link Image} that should be decorated.
 * @param decorator
 *            the {@link Image} to decorate the base image.
 * @param corner
 *            the corner to place decorator image.
 * @return the resulting decorated {@link Image}.
 */
public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
    if (corner <= 0 || corner >= LAST_CORNER_KEY) {
        throw new IllegalArgumentException("Wrong Corner Decoration");
    }
    Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[corner];
    if (cornerDecoratedImageMap == null) {
        cornerDecoratedImageMap = new HashMap<Image, Map<Image, Image>>();
        m_decoratedImageMap[corner] = cornerDecoratedImageMap;
    }
    Map<Image, Image> decoratedMap = cornerDecoratedImageMap.get(baseImage);
    if (decoratedMap == null) {
        decoratedMap = new HashMap<Image, Image>();
        cornerDecoratedImageMap.put(baseImage, decoratedMap);
    }
    //
    Image result = decoratedMap.get(decorator);
    if (result == null) {
        final Rectangle bib = baseImage.getBounds();
        final Rectangle dib = decorator.getBounds();
        final Point baseImageSize = new Point(bib.width, bib.height);
        CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(baseImage.getImageData(), 0, 0);
                if (corner == TOP_LEFT) {
                    drawImage(decorator.getImageData(), 0, 0);
                } else if (corner == TOP_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, 0);
                } else if (corner == BOTTOM_LEFT) {
                    drawImage(decorator.getImageData(), 0, bib.height - dib.height);
                } else if (corner == BOTTOM_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, bib.height - dib.height);
                }
            }

            @Override
            protected Point getSize() {
                return baseImageSize;
            }
        };
        //
        result = compositImageDesc.createImage();
        decoratedMap.put(decorator, result);
    }
    return result;
}

From source file:org.eclipse.babel.swt.ResourceManager.java

License:Open Source License

public static ImageDescriptor decorateImage(final ImageDescriptor baseImage, final ImageDescriptor decorator,
        final int corner) {
    if (corner <= 0 || corner >= LAST_CORNER_KEY) {
        throw new IllegalArgumentException("Wrong Corner Decoration");
    }//from w  w w .j  a v a  2  s .  com
    Map<ImageDescriptor, Map<ImageDescriptor, ImageDescriptor>> cornerDecoratedImageMap = m_decoratedImageDescriptorMap[corner];
    if (cornerDecoratedImageMap == null) {
        cornerDecoratedImageMap = new HashMap<ImageDescriptor, Map<ImageDescriptor, ImageDescriptor>>();
        m_decoratedImageDescriptorMap[corner] = cornerDecoratedImageMap;
    }
    Map<ImageDescriptor, ImageDescriptor> decoratedMap = cornerDecoratedImageMap.get(baseImage);
    if (decoratedMap == null) {
        decoratedMap = new HashMap<ImageDescriptor, ImageDescriptor>();
        cornerDecoratedImageMap.put(baseImage, decoratedMap);
    }
    //
    ImageDescriptor result = decoratedMap.get(decorator);
    if (result == null) {
        final Rectangle bib = baseImage.createImage().getBounds();
        final Rectangle dib = decorator.createImage().getBounds();
        final Point baseImageSize = new Point(bib.width, bib.height);
        CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(baseImage.getImageData(), 0, 0);
                if (corner == TOP_LEFT) {
                    drawImage(decorator.getImageData(), 0, 0);
                } else if (corner == TOP_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, 0);
                } else if (corner == BOTTOM_LEFT) {
                    drawImage(decorator.getImageData(), 0, bib.height - dib.height);
                } else if (corner == BOTTOM_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, bib.height - dib.height);
                }
            }

            @Override
            protected Point getSize() {
                return baseImageSize;
            }
        };
        result = compositImageDesc;
        decoratedMap.put(decorator, result);
    }
    return result;
}

From source file:org.eclipse.egit.ui.internal.repository.RepositoriesViewLabelProvider.java

License:Open Source License

private Image getDecoratedImage(final Image image) {
    // check if we have a decorated image yet or not
    Image decoratedImage = decoratedImages.get(image);
    if (decoratedImage == null) {
        // create one
        CompositeImageDescriptor cd = new CompositeImageDescriptor() {

            @Override/*from w w  w  . j av  a2s .co m*/
            protected Point getSize() {
                Rectangle bounds = image.getBounds();
                return new Point(bounds.width, bounds.height);
            }

            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(image.getImageData(), 0, 0);
                drawImage(UIIcons.OVR_CHECKEDOUT.getImageData(), 0, 0);

            }
        };
        decoratedImage = cd.createImage();
        // store it
        decoratedImages.put(image, decoratedImage);
    }
    return decoratedImage;
}

From source file:org.eclipse.emf.ecp.cdo.internal.ui.ResourceManager.java

License:Open Source License

/**
 * Returns an {@link Image} composed of a base image decorated by another image.
 *
 * @param baseImage/*from  w  ww .j a v a 2s.  c  o  m*/
 *            the base {@link Image} that should be decorated.
 * @param decorator
 *            the {@link Image} to decorate the base image.
 * @param corner
 *            the corner to place decorator image.
 * @return the resulting decorated {@link Image}.
 */
public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
    if (corner <= 0 || corner >= LAST_CORNER_KEY) {
        throw new IllegalArgumentException("Wrong decorate corner"); //$NON-NLS-1$
    }
    Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[corner];
    if (cornerDecoratedImageMap == null) {
        cornerDecoratedImageMap = new HashMap<Image, Map<Image, Image>>();
        m_decoratedImageMap[corner] = cornerDecoratedImageMap;
    }
    Map<Image, Image> decoratedMap = cornerDecoratedImageMap.get(baseImage);
    if (decoratedMap == null) {
        decoratedMap = new HashMap<Image, Image>();
        cornerDecoratedImageMap.put(baseImage, decoratedMap);
    }
    //
    Image result = decoratedMap.get(decorator);
    if (result == null) {
        final Rectangle bib = baseImage.getBounds();
        final Rectangle dib = decorator.getBounds();
        final Point baseImageSize = new Point(bib.width, bib.height);
        final CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() {
            @Override
            protected void drawCompositeImage(int width, int height) {
                drawImage(baseImage.getImageData(), 0, 0);
                if (corner == TOP_LEFT) {
                    drawImage(decorator.getImageData(), 0, 0);
                } else if (corner == TOP_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, 0);
                } else if (corner == BOTTOM_LEFT) {
                    drawImage(decorator.getImageData(), 0, bib.height - dib.height);
                } else if (corner == BOTTOM_RIGHT) {
                    drawImage(decorator.getImageData(), bib.width - dib.width, bib.height - dib.height);
                }
            }

            @Override
            protected Point getSize() {
                return baseImageSize;
            }
        };
        //
        result = compositImageDesc.createImage();
        decoratedMap.put(decorator, result);
    }
    return result;
}

From source file:org.eclipse.launchbar.ui.controls.internal.TargetSelector.java

License:Open Source License

public TargetSelector(Composite parent, int style) {
    super(parent, style);

    targetManager.addListener(this);

    setContentProvider(new IStructuredContentProvider() {
        @Override//ww w  . j a va  2s.co m
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        @Override
        public void dispose() {
        }

        @Override
        public Object[] getElements(Object inputElement) {
            try {
                return manager.getLaunchTargets(manager.getActiveLaunchDescriptor());
            } catch (CoreException e) {
                Activator.log(e);
                return noTargets;
            }
        }
    });

    setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof ILaunchTarget) {
                ILaunchTarget target = (ILaunchTarget) element;
                ILabelProvider provider = targetUIManager.getLabelProvider(target);
                return provider != null ? provider.getText(target) : target.getId();
            }
            return super.getText(element);
        }

        @Override
        public Image getImage(Object element) {
            if (element == ILaunchTarget.NULL_TARGET) {
                return null;
            }
            if (element instanceof ILaunchTarget) {
                ILaunchTarget target = (ILaunchTarget) element;
                ILabelProvider provider = targetUIManager.getLabelProvider(target);
                if (provider != null) {
                    final Image baseImage = provider.getImage(target);
                    final TargetStatus status = targetManager.getStatus(target);
                    if (status.getCode() == Code.OK) {
                        return baseImage;
                    } else {
                        String compId = String.format("%s.%s.%s", target.getTypeId(), target.getId(),
                                status.getCode());
                        Image image = Activator.getDefault().getImageRegistry().get(compId);
                        if (image == null && baseImage != null) {
                            ImageDescriptor desc = new CompositeImageDescriptor() {
                                @Override
                                protected Point getSize() {
                                    Rectangle bounds = baseImage.getBounds();
                                    return new Point(bounds.width, bounds.height);
                                }

                                @Override
                                protected void drawCompositeImage(int width, int height) {
                                    Image overlay = PlatformUI.getWorkbench().getSharedImages()
                                            .getImage(status.getCode() == Code.ERROR
                                                    ? ISharedImages.IMG_DEC_FIELD_ERROR
                                                    : ISharedImages.IMG_DEC_FIELD_WARNING);
                                    drawImage(baseImage.getImageData(), 0, 0);
                                    int y = baseImage.getBounds().height - overlay.getBounds().height;
                                    drawImage(overlay.getImageData(), 0, y);
                                }
                            };
                            image = desc.createImage();
                            Activator.getDefault().getImageRegistry().put(compId, image);
                        }
                        return image;
                    }
                }
            }
            return super.getImage(element);
        }
    });

    setSorter(new Comparator<Object>() {
        @Override
        public int compare(Object o1, Object o2) {
            // Sort by name
            String s1 = String.valueOf(o1);
            String s2 = String.valueOf(o2);
            return s1.compareTo(s2);
        }
    });
}