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

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

Introduction

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

Prototype

@Deprecated
public ImageData getImageData() 

Source Link

Document

Creates and returns a new SWT ImageData object for this image descriptor.

Usage

From source file:org.eclipse.dltk.ui.viewsupport.ImagesOnFileSystemRegistry.java

License:Open Source License

public URL getImageURL(ImageDescriptor descriptor) {
    if (fTempDir == null)
        return null;

    URL url = fURLMap.get(descriptor);
    if (url != null)
        return url;

    File imageFile = getNewFile();
    ImageData imageData = descriptor.getImageData();
    if (imageData == null) {
        return null;
    }/*from   ww w .ja  va  2 s. c o m*/

    ImageLoader loader = new ImageLoader();
    loader.data = new ImageData[] { imageData };
    loader.save(imageFile.getAbsolutePath(), SWT.IMAGE_PNG);

    try {
        url = imageFile.toURI().toURL();
        fURLMap.put(descriptor, url);
        return url;
    } catch (MalformedURLException e) {
        DLTKUIPlugin.log(e);
    }
    return null;
}

From source file:org.eclipse.e4.demo.contacts.views.DetailComposite.java

License:Open Source License

@Inject
public DetailComposite(MDirtyable dirtyable, final Composite parent) {
    super(parent, SWT.NONE);
    this.dirtyable = dirtyable;

    parent.getShell().setBackgroundMode(SWT.INHERIT_DEFAULT);

    dbc = new DataBindingContext();

    URL url = FileLocator.find(Platform.getBundle("org.eclipse.e4.demo.contacts"), new Path("images/dummy.png"),
            null);/*from  w  ww  .  j a v  a2  s  .  com*/
    ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url);
    if (imageDescriptor != null) {
        dummyPortrait = imageDescriptor.getImageData();
    }

    final GridLayout layout = new GridLayout(1, false);
    layout.verticalSpacing = 5;
    setLayout(layout);

    // General
    final Composite composite = createComposite(this);

    createSeparator(composite, "General");

    createText(composite, "Title:", "title");
    createText(composite, "Name:", "name"); // Leads to Aggregate
    // "firstName" "middleName"
    // "lastName"
    createText(composite, "Company:", "company");
    createText(composite, "Job Title:", "jobTitle");
    createText(composite, "Note:", "note");

    createVerticalSpace(composite);

    // Business Address
    createSeparator(composite, "Business Address ");
    createText(composite, "Street:", "street");
    createText(composite, "City:", "city");
    createText(composite, "ZIP:", "zip");
    createText(composite, "State/Prov:", "state");
    createText(composite, "Country:", "country");
    createVerticalSpace(composite);

    // Business Phone
    createSeparator(composite, "Business Phones ");
    createText(composite, "Phone:", "phone");
    createText(composite, "Mobile:", "mobile");
    createVerticalSpace(composite);

    // Business Internet
    createSeparator(composite, "Business Internet");
    createText(composite, "Email:", "email");
    createText(composite, "Web Page:", "webPage");
    createVerticalSpace(composite);

    // Bind the image
    final IObservableValue imageObservableValue = PojoObservables.observeDetailValue(contactValue, "image",
            ImageData.class);

    this.scaledImage = new ComputedValue() {
        private Image currentImage;

        @Override
        protected Object calculate() {
            ImageData imageData = (ImageData) imageObservableValue.getValue();
            if (imageData == null) {
                imageData = dummyPortrait;
            }
            double ratio = imageData.height / 85.0;
            int width = (int) (imageData.width / ratio);
            int height = (int) (imageData.height / ratio);
            ImageData scaledImageData = imageData.scaledTo(width, height);
            if (currentImage != null) {
                currentImage.dispose();
                currentImage = null;
            }
            currentImage = new Image(Display.getCurrent(), scaledImageData);
            return currentImage;
        }

        @Override
        public void dispose() {
            if (currentImage != null) {
                currentImage.dispose();
                currentImage = null;
            }
            super.dispose();
        }

    };

    dbc.bindValue(SWTObservables.observeImage(imageLabel), scaledImage,
            new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), null);

    addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
            scaledImage.dispose();
        }
    });

    commitChanges = true;
}

From source file:org.eclipse.e4.xwt.vex.util.ImageHelper.java

License:Open Source License

/**
 * Create ImageDescriptor of given path. Load images from extension registry.
 *//*from   w w  w .j  a v a2  s.  co m*/
public static ImageDescriptor getImageDescriptor(PaletteResourceManager tResourceManager, String iconPath) {
    if (tResourceManager == null || iconPath == null) {
        return null;
    }
    if (iconPath.startsWith("/")) {
        iconPath = iconPath.substring(1);
    }
    URI registryPath = tResourceManager.getIconsPath();
    String newIconPath = registryPath.toString() + iconPath;
    URL url;
    try {
        File file = new File(iconPath);
        if (file.exists()) {
            // try customize component first
            url = file.toURL();
        } else {
            // if don't work, try system component then
            url = new URL(newIconPath);
        }
        ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url);
        if (imageDescriptor.getImageData() != null) {
            return imageDescriptor;
        } else {
            return null;
        }

    } catch (MalformedURLException e) {
        // if both don't work, return null
        return null;
    }
}

From source file:org.eclipse.e4mf.common.ui.ImageURIRegistry.java

License:Open Source License

/**
 * Returns a URI to the cached local file system instance of this given image descriptor.
 *//*from ww  w.  ja  va 2  s  .  c o m*/
public synchronized URI getImageURI(ImageDescriptor descriptor) {
    if (imageDirectory == null)
        return null;

    URI uri = descriptorToURIMap.get(descriptor);
    if (uri != null)
        return uri;

    File imageFile = getNewFile();
    ImageData imageData = descriptor.getImageData();
    if (imageData == null) {
        return null;
    }

    ImageLoader loader = new ImageLoader();
    loader.data = new ImageData[] { imageData };
    loader.save(imageFile.getAbsolutePath(), SWT.IMAGE_PNG);

    uri = URI.createURI(imageFile.toURI().toString());
    descriptorToURIMap.put(descriptor, uri);
    return uri;
}

From source file:org.eclipse.egit.ui.internal.DecorationOverlayDescriptor.java

License:Open Source License

/**
 * Draw the overlays for the receiver.//from   w w w .  j a  v  a 2s . c  o m
 *
 * @param overlaysArray
 */
private void drawOverlays(ImageDescriptor[] overlaysArray) {
    for (int i = 0; i < overlays.length; i++) {
        ImageDescriptor overlay = overlaysArray[i];
        if (overlay == null)
            continue;
        ImageData overlayData = overlay.getImageData();
        // Use the missing descriptor if it is not there.
        if (overlayData == null)
            overlayData = ImageDescriptor.getMissingImageDescriptor().getImageData();

        switch (i) {
        case IDecoration.TOP_LEFT:
            drawImage(overlayData, 0, 0);
            break;
        case IDecoration.TOP_RIGHT:
            drawImage(overlayData, size.x - overlayData.width, 0);
            break;
        case IDecoration.BOTTOM_LEFT:
            drawImage(overlayData, 0, size.y - overlayData.height);
            break;
        case IDecoration.BOTTOM_RIGHT:
            drawImage(overlayData, size.x - overlayData.width, size.y - overlayData.height);
            break;
        }
    }
}

From source file:org.eclipse.egit.ui.internal.DecorationOverlayDescriptor.java

License:Open Source License

protected void drawCompositeImage(int width, int height) {
    if (overlays.length > IDecoration.UNDERLAY) {
        ImageDescriptor underlay = overlays[IDecoration.UNDERLAY];
        if (underlay != null)
            drawImage(underlay.getImageData(), 0, 0);
    }/*w w w . j  a va  2  s .c o  m*/

    if (overlays.length > IDecoration.REPLACE && overlays[IDecoration.REPLACE] != null)
        drawImage(overlays[IDecoration.REPLACE].getImageData(), 0, 0);
    else
        drawImage(getBaseImageData(), 0, 0);

    drawOverlays(overlays);
}

From source file:org.eclipse.emf.ecp.ecoreeditor.internal.ui.MasterDetailRenderer.java

License:Open Source License

/**
 * Gets the page header.//w w w .j av  a 2 s.  c o  m
 * This is the part of the toolbar with the icon and title
 *
 * @param parent the parent
 * @return the page header
 */
private Composite getPageHeader(Composite parent) {
    final Composite header = new Composite(parent, SWT.FILL);
    final FormLayout layout = new FormLayout();
    layout.marginHeight = 5;
    layout.marginWidth = 5;
    header.setLayout(layout);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).applyTo(header);

    header.setBackground(parent.getBackground());

    final Label titleImage = new Label(header, SWT.FILL);
    final ImageDescriptor imageDescriptor = ImageDescriptor
            .createFromURL(Activator.getDefault().getBundle().getResource("icons/view.png"));
    titleImage.setImage(new Image(parent.getDisplay(), imageDescriptor.getImageData()));
    final FormData titleImageData = new FormData();
    final int imageOffset = -titleImage.computeSize(SWT.DEFAULT, SWT.DEFAULT).y / 2;
    titleImageData.top = new FormAttachment(50, imageOffset);
    titleImageData.left = new FormAttachment(0, 10);
    titleImage.setLayoutData(titleImageData);

    final Label title = new Label(header, SWT.WRAP);

    final FontDescriptor boldDescriptor = FontDescriptor.createFrom(title.getFont()).setHeight(12)
            .setStyle(SWT.BOLD);

    final Font boldFont = boldDescriptor.createFont(title.getDisplay());
    title.setForeground(new Color(parent.getDisplay(), 25, 76, 127));
    title.setFont(boldFont);

    title.setText("Ecore Editor"); //$NON-NLS-1$

    final FormData titleData = new FormData();
    title.setLayoutData(titleData);
    titleData.left = new FormAttachment(titleImage, 5, SWT.DEFAULT);

    return header;

}

From source file:org.eclipse.emf.ecp.edit.internal.swt.Activator.java

License:Open Source License

/**
 * Loads an image based on the provided {@link URL} form this bundle. The url may be null, then an empty image is
 * returned./*from   ww  w  .  j a  v a 2 s  .  c o  m*/
 *
 * @param url the {@link URL} to load the {@link Image} from
 * @return the {@link Image}
 */
public static Image getImage(URL url) {
    if (!getDefault().imageRegistry.containsKey(url == null ? "NULL" : url.toExternalForm())) { //$NON-NLS-1$

        final ImageDescriptor createFromURL = ImageDescriptor.createFromURL(url);
        final ImageData imageData = createFromURL.getImageData();
        getDefault().imageRegistry.put(url == null ? "NULL" : url.toExternalForm(), new ImageDescriptorToImage( //$NON-NLS-1$
                createFromURL));
    }
    return getDefault().imageRegistry.get(url == null ? "NULL" : url.toExternalForm()).getImage(); //$NON-NLS-1$

}

From source file:org.eclipse.emf.ecp.view.model.internal.preview.e3.views.PreviewView.java

License:Open Source License

/**
 * @param parent/*  www  .  j av  a2s. c  om*/
 * @return
 */
private Composite getPageHeader(Composite parent) {
    final Composite header = new Composite(parent, SWT.FILL);
    final FormLayout layout = new FormLayout();
    layout.marginHeight = 5;
    layout.marginWidth = 5;
    header.setLayout(layout);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).applyTo(header);

    header.setBackground(parent.getBackground());

    final Label titleImage = new Label(header, SWT.FILL);
    final ImageDescriptor imageDescriptor = ImageDescriptor
            .createFromURL(Activator.getDefault().getBundle().getResource("icons/preview.png")); //$NON-NLS-1$
    titleImage.setImage(new Image(parent.getDisplay(), imageDescriptor.getImageData()));
    final FormData titleImageData = new FormData();
    final int imageOffset = -titleImage.computeSize(SWT.DEFAULT, SWT.DEFAULT).y / 2;
    titleImageData.top = new FormAttachment(50, imageOffset);
    titleImageData.left = new FormAttachment(0, 10);
    titleImage.setLayoutData(titleImageData);

    final Label title = new Label(header, SWT.WRAP);
    title.setText(Messages.PreviewView_EditorTitle);
    titleFont = new Font(title.getDisplay(), getDefaultFontName(title), 12, SWT.BOLD);
    title.setFont(titleFont);
    title.setForeground(getTitleColor());
    final FormData titleData = new FormData();
    title.setLayoutData(titleData);
    titleData.left = new FormAttachment(titleImage, 5, SWT.DEFAULT);

    return header;
}

From source file:org.eclipse.emf.ecp.view.spi.treemasterdetail.ui.swt.TreeMasterDetailSWTRenderer.java

License:Open Source License

/**
 * @param form2//ww w.j  ava  2  s.  co  m
 */
private Composite getPageHeader(Composite parent) {
    final Composite header = new Composite(parent, SWT.FILL);
    final FormLayout layout = new FormLayout();
    layout.marginHeight = 5;
    layout.marginWidth = 5;
    header.setLayout(layout);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).applyTo(header);

    header.setBackground(parent.getBackground());

    final Label titleImage = new Label(header, SWT.FILL);
    final ImageDescriptor imageDescriptor = ImageDescriptor
            .createFromURL(Activator.getDefault().getBundle().getResource("icons/view.png")); //$NON-NLS-1$
    titleImage.setImage(new Image(parent.getDisplay(), imageDescriptor.getImageData()));
    final FormData titleImageData = new FormData();
    final int imageOffset = -titleImage.computeSize(SWT.DEFAULT, SWT.DEFAULT).y / 2;
    titleImageData.top = new FormAttachment(50, imageOffset);
    titleImageData.left = new FormAttachment(0, 10);
    titleImage.setLayoutData(titleImageData);

    final Label title = new Label(header, SWT.WRAP);
    title.setText("View Editor"); //$NON-NLS-1$
    titleFont = new Font(title.getDisplay(), getDefaultFontName(title), 12, SWT.BOLD);
    title.setFont(titleFont);
    title.setForeground(getTitleColor(parent));
    final FormData titleData = new FormData();
    title.setLayoutData(titleData);
    titleData.left = new FormAttachment(titleImage, 5, SWT.DEFAULT);

    return header;

}