Example usage for org.eclipse.jface.resource ImageDescriptor createFromFile

List of usage examples for org.eclipse.jface.resource ImageDescriptor createFromFile

Introduction

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

Prototype

public static ImageDescriptor createFromFile(Class<?> location, String filename) 

Source Link

Document

Creates and returns a new image descriptor from a file.

Usage

From source file:org.talend.designer.business.diagram.custom.util.ElementHelper.java

License:Open Source License

/**
 * DOC Administrator Comment method "getTooltipFigure".
 * //from w ww.  j a  va  2s  .  c o  m
 * @param figure
 */
public void updateTooltipFigure(Figure figure, BusinessTooltipFigure tooltipFigure, EditPart editPart) {
    EObject element = ((View) editPart.getModel()).getElement();
    if (element instanceof BusinessItem) {
        List assignements = ((BusinessItem) element).getAssignments();
        BusinessItemProviderAdapterFactory adapterFactory = new BusinessItemProviderAdapterFactory();
        BusinessAssignmentItemProvider provider = (BusinessAssignmentItemProvider) adapterFactory
                .createBusinessAssignmentAdapter();
        Image img = null;
        Label label = null;
        List<Label> labels = new ArrayList();
        try {
            for (Object assignment : assignements) {
                if (assignment instanceof BusinessAssignment) {
                    TalendItem talendItem = ((BusinessAssignment) assignment).getTalendItem();
                    if (talendItem != null) {
                        IRepositoryViewObject obj = CorePlugin.getDefault().getProxyRepositoryFactory()
                                .getLastVersion(talendItem.getId());
                        if (obj != null) {
                            ERepositoryObjectType type = obj.getRepositoryObjectType();
                            Item item = obj.getProperty().getItem();
                            if (item instanceof JobletProcessItem) {
                                JobletProcessItem jobletItem = (JobletProcessItem) item;
                                Image jobletCustomIcon = RepositoryLabelProvider
                                        .getJobletCustomIcon(jobletItem.getProperty());
                                if (jobletCustomIcon != null) {
                                    img = ImageUtils.scale(jobletCustomIcon, ICON_SIZE.ICON_16);
                                }

                            } else {
                                img = CoreImageProvider.getImage(type);
                            }
                            label = new Label(
                                    obj.getLabel() + " (" + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$ //$NON-NLS-2$
                            labels.add(label);
                        } else {

                            MetadataTable table = MetadataToolHelper
                                    .getMetadataTableFromRepository(talendItem.getId());
                            Query query = MetadataToolHelper.getQueryFromRepository(talendItem.getId());
                            SAPFunctionUnit function = MetadataToolHelper
                                    .getSAPFunctionFromRepository(talendItem.getId());
                            if (table != null) {
                                img = ImageDescriptor.createFromFile(ECoreImage.class,
                                        ECoreImage.METADATA_TABLE_ICON.getPath()).createImage();
                                label = new Label(talendItem.getLabel() + " (" //$NON-NLS-1$
                                        + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$
                                labels.add(label);
                            } else if (query != null) {
                                img = ImageDescriptor.createFromFile(ECoreImage.class,
                                        ECoreImage.METADATA_QUERY_ICON.getPath()).createImage();
                                label = new Label(talendItem.getLabel() + " (" //$NON-NLS-1$
                                        + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$
                                labels.add(label);
                            } else if (talendItem instanceof SQLPattern) {

                                List<IRepositoryViewObject> list = ProxyRepositoryFactory.getInstance()
                                        .getAll(ERepositoryObjectType.SQLPATTERNS);
                                for (IRepositoryViewObject object : list) {
                                    if (talendItem.getLabel().equals(object.getLabel())) {
                                        img = ImageDescriptor
                                                .createFromFile(ECoreImage.class,
                                                        ECoreImage.METADATA_SQLPATTERN_ICON.getPath())
                                                .createImage();
                                        label = new Label(talendItem.getLabel() + " (" //$NON-NLS-1$
                                                + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$
                                        labels.add(label);
                                    }
                                }

                            } else if (talendItem instanceof Routine) {
                                List<IRepositoryViewObject> list = ProxyRepositoryFactory.getInstance()
                                        .getAll(ERepositoryObjectType.ROUTINES);
                                for (IRepositoryViewObject object : list) {
                                    if (talendItem.getLabel().equals(object.getLabel())) {
                                        img = ImageDescriptor.createFromFile(ECoreImage.class,
                                                ECoreImage.ROUTINE_ICON.getPath()).createImage();
                                        label = new Label(talendItem.getLabel() + " (" //$NON-NLS-1$
                                                + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$
                                        labels.add(label);
                                    }
                                }
                            } else if (function != null) {
                                img = ImageDescriptor.createFromFile(ECoreImage.class,
                                        ECoreImage.METADATA_SAPCONNECTION_ICON.getPath()).createImage();
                                label = new Label(talendItem.getLabel() + " (" //$NON-NLS-1$
                                        + provider.getColumnText(assignment, 0) + ")", img); //$NON-NLS-1$
                                labels.add(label);

                            } else {
                                img = (Image) provider.getImage(assignment);
                                img = new OverlayImage(img,
                                        ImageProvider.getImageDesc(ECoreImage.DELETED_OVERLAY),
                                        EPosition.BOTTOM_RIGHT).createImage();
                                String text = provider.getText(assignment) + " (" //$NON-NLS-1$
                                        + provider.getColumnText(assignment, 0) + ")"; //$NON-NLS-1$
                                label = new Label(text, img);
                                labels.add(label);

                            }

                        }
                    }
                }

            }

            if (tooltipFigure == null) {
                tooltipFigure = new BusinessTooltipFigure();
            }
            if (labels.size() == 0) {
                figure.setToolTip(null);
            } else {
                tooltipFigure.buildFigures(labels);
                figure.setToolTip(tooltipFigure);
            }

        } catch (PersistenceException e) {
            ExceptionHandler.process(e);
        }
    }
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4SameImageDescriptor() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);/* w ww . j  a  v a2 s.  co  m*/

    byte[] data1 = ImageUtils.saveImageToData(imgDesc);
    byte[] data2 = ImageUtils.saveImageToData(imgDesc);
    Assert.assertNotEquals(data2, data1); // different object(Array)
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4SameNewImageDescriptor() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);/*from  w w w  .  j a v  a 2 s .co m*/

    Image img = imgDesc.createImage();
    Assert.assertNotNull(img);

    ImageDescriptor newImgDesc = ImageDescriptor.createFromImageData(img.getImageData());
    Assert.assertNotNull(newImgDesc);

    byte[] data1 = ImageUtils.saveImageToData(newImgDesc);
    byte[] data2 = ImageUtils.saveImageToData(newImgDesc);
    Assert.assertNotEquals(data2, data1);
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4SameImage() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);//from  w w w  .  j  av  a2s  .c  o  m

    Image img = imgDesc.createImage();
    Assert.assertNotNull(img);

    ImageData imageData1 = img.getImageData();
    ImageData imageData2 = img.getImageData();
    Assert.assertNotEquals(imageData2, imageData1);

    ImageDescriptor newImgDesc1 = ImageDescriptor.createFromImageData(imageData1);
    ImageDescriptor newImgDesc2 = ImageDescriptor.createFromImageData(imageData2);
    Assert.assertNotEquals(newImgDesc2, newImgDesc1);

    byte[] data1 = ImageUtils.saveImageToData(newImgDesc1);
    byte[] data2 = ImageUtils.saveImageToData(newImgDesc2);
    Assert.assertNotEquals(data2, data1);
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4SameImageData() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);// w  ww  .  j  av a  2s  .c  om

    Image img = imgDesc.createImage();
    Assert.assertNotNull(img);

    ImageData imageData = img.getImageData();
    Assert.assertNotNull(imageData);

    ImageDescriptor newImgDesc1 = ImageDescriptor.createFromImageData(imageData);
    ImageDescriptor newImgDesc2 = ImageDescriptor.createFromImageData(imageData);
    Assert.assertEquals(newImgDesc2, newImgDesc1);

    byte[] data1 = ImageUtils.saveImageToData(newImgDesc1);
    byte[] data2 = ImageUtils.saveImageToData(newImgDesc2);
    Assert.assertNotEquals(data2, data1);
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4DifferentNewImageDescriptor() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);/*from  w  w  w.ja v  a 2 s  .  co m*/

    Image img1 = imgDesc.createImage();
    Image img2 = imgDesc.createImage();
    Assert.assertNotEquals(img2, img1);

    ImageData imageData1 = img1.getImageData();
    ImageData imageData2 = img2.getImageData();
    Assert.assertNotEquals(imageData2, imageData1);

    ImageDescriptor newImgDesc1 = ImageDescriptor.createFromImageData(imageData1);
    ImageDescriptor newImgDesc2 = ImageDescriptor.createFromImageData(imageData2);
    Assert.assertNotEquals(newImgDesc2, newImgDesc1);

    byte[] data1 = ImageUtils.saveImageToData(newImgDesc1);
    byte[] data2 = ImageUtils.saveImageToData(newImgDesc2);
    Assert.assertNotEquals(data2, data1);
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testData4DifferentImageDescriptor() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc1 = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    ImageDescriptor imgDesc2 = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertEquals(imgDesc2, imgDesc1);

    Image img1 = imgDesc1.createImage();
    Image img2 = imgDesc2.createImage();
    Assert.assertNotEquals(img2, img1);//from   www .  j av a  2s  .co  m

    ImageData imageData1 = img1.getImageData();
    ImageData imageData2 = img2.getImageData();
    Assert.assertNotEquals(imageData2, imageData1);

    ImageDescriptor newImgDesc1 = ImageDescriptor.createFromImageData(imageData1);
    ImageDescriptor newImgDesc2 = ImageDescriptor.createFromImageData(imageData2);
    Assert.assertNotEquals(newImgDesc2, newImgDesc1);

    byte[] data1 = ImageUtils.saveImageToData(newImgDesc1);
    byte[] data2 = ImageUtils.saveImageToData(newImgDesc2);
    Assert.assertNotEquals(data2, data1);
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testImageDescriptor4SameData() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);/*ww  w.  j  a  va  2 s.c o  m*/

    byte[] data = ImageUtils.saveImageToData(imgDesc);
    Assert.assertNotNull(data);

    ImageDescriptor newImgDesc1 = ImageUtils.createImageFromData(data);
    ImageDescriptor newImgDesc2 = ImageUtils.createImageFromData(data);
    Assert.assertEquals(newImgDesc2, newImgDesc1); // same object from cache.
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testImageDescriptor4SameDataWithDispose() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);//from   ww w.j  a v  a2  s  .c om

    byte[] data = ImageUtils.saveImageToData(imgDesc);
    Assert.assertNotNull(data);

    ImageDescriptor newImgDesc1 = ImageUtils.createImageFromData(data);
    ImageUtils.disposeImages(data); // clean the cache.
    ImageDescriptor newImgDesc2 = ImageUtils.createImageFromData(data);
    Assert.assertNotEquals(newImgDesc2, newImgDesc1); // different object
}

From source file:org.talend.designer.core.image.CoreImageProviderTest.java

License:Open Source License

@Test
public void testImageDescriptor4DifferentData() {
    IImage icon = CoreImageProvider.getIcon(ERepositoryObjectType.PROCESS);
    ImageDescriptor imgDesc = ImageDescriptor.createFromFile(icon.getLocation(), icon.getPath());
    Assert.assertNotNull(imgDesc);/*from   w  w  w.j a  va 2 s.c  om*/

    byte[] data1 = ImageUtils.saveImageToData(imgDesc);
    byte[] data2 = ImageUtils.saveImageToData(imgDesc);
    Assert.assertNotEquals(data2, data1);

    ImageDescriptor newImgDesc1 = ImageUtils.createImageFromData(data1);
    ImageDescriptor newImgDesc2 = ImageUtils.createImageFromData(data2);
    Assert.assertNotEquals(newImgDesc2, newImgDesc1);

    Image img1 = newImgDesc1.createImage();
    Image img2 = newImgDesc2.createImage();
    Assert.assertNotEquals(img2, img1);
}