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

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

Introduction

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

Prototype

@Deprecated
public static ImageDescriptor createFromImageData(ImageData data) 

Source Link

Document

Creates and returns a new image descriptor given ImageData describing the image.

Usage

From source file:com.android.uiautomator.actions.ImageHelper.java

License:Apache License

public static ImageDescriptor loadImageDescriptorFromResource(String path) {
    InputStream is = ImageHelper.class.getClassLoader().getResourceAsStream(path);
    //System.out.println(ImageHelper.class.getClassLoader().getResource(path));
    if (is != null) {
        ImageData[] data = null;//  ww  w . j  a va 2 s. c  om
        try {
            data = new ImageLoader().load(is);
        } catch (SWTException e) {
        } finally {
            try {
                is.close();
            } catch (IOException e) {
            }
        }
        if (data != null && data.length > 0) {
            return ImageDescriptor.createFromImageData(data[0]);
        }
    }
    return null;
}

From source file:com.aptana.ide.ui.io.ImageUtils.java

License:Open Source License

public static ImageDescriptor getImageDescriptor(File file) {
    if (file.isFile()) {
        ImageDescriptor imageDescriptor = PlatformUI.getWorkbench().getEditorRegistry()
                .getImageDescriptor(file.getName());
        if (imageDescriptor != null) {
            return imageDescriptor;
        }//  w ww  .j  a v  a2 s .c  om
    }
    if (file.exists()) {
        if (jFileChooser == null) {
            jFileChooser = new javax.swing.JFileChooser();
        }
        String fileType = jFileChooser.getTypeDescription(file);
        if (fileType == null || fileType.length() == 0 || "Directory".equals(fileType) //$NON-NLS-1$
                || "System Folder".equals(fileType) || "Generic File".equals(fileType)) { //$NON-NLS-1$ //$NON-NLS-2$
            String name = file.getName();
            try {
                name = file.getCanonicalFile().getName();
            } catch (IOException e) {
                name = file.getName();
            }
            if (name.equals((new Path(DESKTOP)).lastSegment())) {
                fileType = "Desktop"; //$NON-NLS-1$
            } else if (!file.isDirectory()) {
                int index = name.lastIndexOf('.');
                if (index >= 0 && index < name.length() - 1) {
                    fileType = name.substring(index + 1);
                } else {
                    fileType = "unknown"; //$NON-NLS-1$
                }
            } else if ("Directory".equals(fileType) || name.length() == 0) { //$NON-NLS-1$
                fileType = file.getAbsolutePath();
            } else if ("System Folder".equals(fileType)) { //$NON-NLS-1$
                if (file.getAbsolutePath().equals(USER_HOME)) {
                    fileType = "UserHome"; //$NON-NLS-1$
                }
            }
        }
        String imageKey = "os.fileType_" + fileType; //$NON-NLS-1$

        ImageRegistry imageRegistry = JFaceResources.getImageRegistry();
        if (resetMap.get(imageKey) != null && resetMap.get(imageKey)) {
            imageRegistry.remove(imageKey);
            resetMap.remove(imageKey);
        }
        ImageDescriptor imageDescriptor = imageRegistry.getDescriptor(imageKey);
        if (imageDescriptor != null) {
            return imageDescriptor;
        }

        Icon icon;
        if (ON_WINDOWS) {
            icon = FileSystemView.getFileSystemView().getSystemIcon(file);
        } else {
            icon = jFileChooser.getIcon(file);
        }
        if (icon != null) {
            String existingImageKey = iconToKeyMap.get(icon);
            if (existingImageKey != null) {
                imageDescriptor = imageRegistry.getDescriptor(existingImageKey);
                if (imageDescriptor != null) {
                    return imageDescriptor;
                }
            }
            ImageData imageData = awtImageIconToSWTImageData(icon, null);
            if (imageData != null) {
                imageDescriptor = ImageDescriptor.createFromImageData(imageData);
                imageRegistry.put(imageKey, imageDescriptor);
                iconToKeyMap.put(icon, imageKey);
                resetMap.put(imageKey, false);
                return imageRegistry.getDescriptor(imageKey);
            }
        }
    }
    return getImageDescriptor(file.getName());
}

From source file:com.aptana.projects.wizards.ProjectTemplateSelectionPage.java

License:Open Source License

private Image getImage(IProjectTemplate template) {
    Image image = templateImages.get(template);
    if (image == null) {
        // Resolve and load the image
        URL iconPath = template.getIconURL();
        if (iconPath != null) {
            ImageDescriptor descriptor = ImageDescriptor.createFromURL(iconPath);
            if (descriptor != null) {
                image = descriptor.createImage(false);
                if (image != null) {
                    // Scale the image to 48x48 in case it's not.
                    ImageData imageData = image.getImageData();
                    if (imageData.x != IMAGE_SIZE || imageData.y != IMAGE_SIZE) {
                        // dispose the previous one
                        image.dispose();
                        // Scale the image data and create a new image
                        imageData = imageData.scaledTo(IMAGE_SIZE, IMAGE_SIZE);
                        image = ImageDescriptor.createFromImageData(imageData).createImage();
                    }/*from  w  w w . j  a  va2 s. c o  m*/
                }

            }
        }
        if (image == null) {
            image = defaultTemplateImage;
        }
        templateImages.put(template, image);
    }
    return image;
}

From source file:com.archimatetool.editor.ui.factory.AbstractElementUIProvider.java

License:Open Source License

/**
 * Create a new ImageDescriptor substituting the user's preference for fill color
 *//*  w w  w  . ja  va2 s .c om*/
protected ImageDescriptor getImageDescriptorWithUserFillColor(String imageName) {
    // Not a preference
    if (!Preferences.STORE.getBoolean(IPreferenceConstants.SHOW_FILL_COLORS_IN_GUI)) {
        return IArchimateImages.ImageFactory.getImageDescriptor(imageName);
    }

    ImageDescriptor newImageDescriptor = fImageRegistry.getDescriptor(imageName);

    // Create new ImageDescriptor
    if (newImageDescriptor == null) {
        ImageDescriptor originalImageDescriptor = IArchimateImages.ImageFactory.getImageDescriptor(imageName);

        Color color = ColorFactory.getUserDefaultFillColor(providerFor());

        // No user default color
        if (color == null) {
            return originalImageDescriptor;
        }

        ImageData imageData = originalImageDescriptor.getImageData();

        for (int i = 0; i < imageData.width; i++) {
            for (int j = 0; j < imageData.height; j++) {
                RGB rgb = imageData.palette.getRGB(imageData.getPixel(i, j));
                if (rgb.red > 0) {
                    imageData.setPixel(i, j, ColorFactory.getPixelValue(color.getRGB()));
                }
            }
        }

        newImageDescriptor = ImageDescriptor.createFromImageData(imageData);
        fImageRegistry.put(imageName, newImageDescriptor);
    }

    return newImageDescriptor;
}

From source file:com.archimatetool.editor.ui.factory.elements.AbstractArchimateElementUIProvider.java

License:Open Source License

/**
 * Create a new ImageDescriptor substituting the user's preference for fill color
 *//* ww w.j  av a 2  s  .c  o  m*/
protected ImageDescriptor getImageDescriptorWithUserFillColor(String imageName) {
    // Not a preference
    if (!Preferences.STORE.getBoolean(IPreferenceConstants.SHOW_FILL_COLORS_IN_GUI)) {
        return IArchiImages.ImageFactory.getImageDescriptor(imageName);
    }

    ImageDescriptor newImageDescriptor = fImageRegistry.getDescriptor(imageName);

    // Create new ImageDescriptor
    if (newImageDescriptor == null) {
        ImageDescriptor originalImageDescriptor = IArchiImages.ImageFactory.getImageDescriptor(imageName);

        Color color = ColorFactory.getUserDefaultFillColor(providerFor());

        // No user default color
        if (color == null) {
            return originalImageDescriptor;
        }

        ImageData imageData = originalImageDescriptor.getImageData();

        for (int i = 0; i < imageData.width; i++) {
            for (int j = 0; j < imageData.height; j++) {
                RGB rgb = imageData.palette.getRGB(imageData.getPixel(i, j));
                if (rgb.red > 0) {
                    imageData.setPixel(i, j, ColorFactory.getPixelValue(color.getRGB()));
                }
            }
        }

        newImageDescriptor = ImageDescriptor.createFromImageData(imageData);
        fImageRegistry.put(imageName, newImageDescriptor);
    }

    return newImageDescriptor;
}

From source file:com.atlassian.connector.eclipse.internal.crucible.ui.AvatarImages.java

License:Open Source License

public void addAvatar(User key, byte[] value) {
    InputStream is = new ByteArrayInputStream(value);
    try {/* w ww  .j a va  2s  . co m*/
        Image image = getImage(key.getAvatarUrl() + AvatarSize.ORIGINAL.toString(),
                ImageDescriptor.createFromImageData(new ImageData(is)));
        getImageRegistry().put(key.getAvatarUrl() + AvatarSize.SMALL.toString(),
                new Image(Display.getDefault(), image.getImageData().scaledTo(16, 16)));
        getImageRegistry().put(key.getAvatarUrl() + AvatarSize.LARGE.toString(),
                new Image(Display.getDefault(), image.getImageData().scaledTo(32, 32)));
    } finally {
        IOUtils.closeQuietly(is);
    }
}

From source file:com.genericworkflownodes.knime.workflowexporter.ui.wizard.WorkflowExportPage.java

License:Open Source License

@Override
public void createControl(final Composite parent) {
    final Composite container = new Composite(parent, SWT.NULL);
    final GridLayout containerLayout = new GridLayout(1, false);
    container.setLayout(containerLayout);
    container.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    // ------- format selection
    final Group selectFormatGroup = new Group(container, SWT.NULL);
    final GridLayout selectFormatGroupLayout = new GridLayout(2, false);
    selectFormatGroupLayout.horizontalSpacing = HORIZONTAL_SPACING;
    selectFormatGroup.setLayout(selectFormatGroupLayout);
    selectFormatGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Label formatLabel = new Label(selectFormatGroup, SWT.HORIZONTAL | SWT.LEFT);
    formatLabel.setText("Select an export format:");
    // formatLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Combo formatCombo = new Combo(selectFormatGroup, SWT.PUSH | SWT.DROP_DOWN);

    formatCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    for (final DisplayInformationProvider infoProvider : exporters) {
        formatCombo.add(infoProvider.getShortDescription());
    }//from   w ww  .  j ava  2s . c  o  m
    // ------------------------

    // ------- export mode
    final Group selectExportModeGroup = new Group(container, SWT.NULL);
    final GridLayout selectExportModeGroupLayout = new GridLayout(2, false);
    selectExportModeGroupLayout.horizontalSpacing = HORIZONTAL_SPACING;
    selectExportModeGroup.setLayout(selectExportModeGroupLayout);
    selectExportModeGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Label exportModeLabel = new Label(selectExportModeGroup, SWT.HORIZONTAL | SWT.LEFT);
    exportModeLabel.setText("Select an export mode:");

    final Combo exportModeCombo = new Combo(selectExportModeGroup, SWT.PUSH | SWT.DROP_DOWN);
    exportModeCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    // -------------------------

    // ------- file destination
    final Group selectDestinationGroup = new Group(container, SWT.NULL);
    final GridLayout selectDestinationGroupLayout = new GridLayout(3, false);
    selectDestinationGroupLayout.horizontalSpacing = HORIZONTAL_SPACING;
    selectDestinationGroup.setLayout(selectDestinationGroupLayout);
    selectDestinationGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Label destinationLabel = new Label(selectDestinationGroup, SWT.NULL);
    destinationLabel.setText("Select an export destination:");

    final Text destinationText = new Text(selectDestinationGroup, SWT.BORDER | SWT.SINGLE);
    destinationText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Button destinationButton = new Button(selectDestinationGroup, SWT.PUSH);
    destinationButton.setText("Browse...");
    // ------------------------

    // ---------- format information display
    final Group infoDisplayGroup = new Group(container, SWT.NULL);
    final GridLayout infoDisplayGroupLayout = new GridLayout(2, false);
    infoDisplayGroupLayout.horizontalSpacing = HORIZONTAL_SPACING;
    infoDisplayGroup.setLayout(infoDisplayGroupLayout);
    infoDisplayGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Label image = new Label(infoDisplayGroup, SWT.NULL);
    image.setSize(150, 150);
    final Label description = new Label(infoDisplayGroup, SWT.NULL);
    description.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    // -------------------------------------

    // ------------------- listeners / action handlers
    // formatCombo.addModifyListener(new ModifyListener() {
    // @Override
    // public void modifyText(final ModifyEvent e) {
    // if (e.getSource() == formatCombo) {
    // selectedIndex = formatCombo.getSelectionIndex();
    // if (selectedIndex > -1) {
    // final KnimeWorkflowExporter selectedExporter =
    // exporters.get(selectedIndex);
    // // change the image and the description
    // final Image scaledPic = ImageDescriptor.createFromImageData(
    // selectedExporter.getImageDescriptor().getImageData().scaledTo(150,
    // 150)).createImage();
    // image.setImage(scaledPic);
    // description.setText(selectedExporter.getLongDescription());
    // //
    // final Collection<String> exportModes =
    // selectedExporter.getSupportedExportModes();
    // exportModeCombo.setEnabled(exportModes != null &&
    // exportModes.isEmpty());
    // exportModeCombo.removeAll();
    // for (final String exportMode :
    // selectedExporter.getSupportedExportModes()) {
    // exportModeCombo.add(exportMode);
    // }
    // }
    // }
    // updatePageComplete();
    // }
    // });

    formatCombo.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(final ModifyEvent e) {
            if (e.getSource() == formatCombo) {
                selectedIndex = formatCombo.getSelectionIndex();
                if (selectedIndex > -1) {
                    final KnimeWorkflowExporter selectedExporter = exporters.get(selectedIndex);
                    // change the image and the description
                    final Image scaledPic = ImageDescriptor
                            .createFromImageData(
                                    selectedExporter.getImageDescriptor().getImageData().scaledTo(150, 150))
                            .createImage();
                    image.setImage(scaledPic);
                    description.setText(selectedExporter.getLongDescription());
                    //
                    final Collection<String> exportModes = selectedExporter.getSupportedExportModes();
                    exportModeCombo.setEnabled(exportModes != null && !exportModes.isEmpty());
                    exportModeCombo.removeAll();
                    for (final String exportMode : selectedExporter.getSupportedExportModes()) {
                        exportModeCombo.add(exportMode);
                    }
                    if (exportModeCombo.isEnabled()) {
                        exportModeCombo.select(0);
                    } else {
                        exportMode = null;
                    }
                }
            }
        }
    });

    exportModeCombo.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(final ModifyEvent e) {
            if (e.getSource() == exportModeCombo) {
                exportMode = exportModeCombo.getItem(exportModeCombo.getSelectionIndex());
            }
        }
    });

    destinationText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(final ModifyEvent e) {
            if (e.getSource() == destinationText) {
                destinationFilePath = destinationText.getText();
            }
            updatePageComplete();
        }
    });

    destinationButton.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            if (e.getSource() == destinationButton) {
                final FileDialog fileDialog = new FileDialog(getShell(), SWT.SAVE);
                fileDialog.setOverwrite(true);
                final KnimeWorkflowExporter selectedExporter = exporters.get(selectedIndex);
                final Collection<ExtensionFilter> extensionFilters = selectedExporter.getExtensionFilters();
                final String[] filterExtensions = new String[extensionFilters.size()];
                final String[] filterNames = new String[extensionFilters.size()];
                int i = 0;
                for (final Iterator<ExtensionFilter> it = extensionFilters.iterator(); it.hasNext(); i++) {
                    final ExtensionFilter current = it.next();
                    filterExtensions[i] = current.getFilter();
                    filterNames[i] = current.getDescription();
                }
                fileDialog.setFilterExtensions(filterExtensions);
                fileDialog.setFilterNames(filterNames);
                if (extensionFilters.size() > 1) {
                    fileDialog.setFilterIndex(1);
                }

                fileDialog.setText("Specify the export file.");

                final String filePath = fileDialog.open();
                if (StringUtils.isNotBlank(filePath)) {
                    destinationFilePath = filePath;
                    destinationText.setText(filePath);
                }
            }
            updatePageComplete();
        }

        @Override
        public void widgetDefaultSelected(final SelectionEvent e) {
            widgetSelected(e);
        }
    });
    // -----------------------------------

    // make a default selection
    formatCombo.select(0);

    setControl(container);
}

From source file:com.google.gapid.image.Images.java

License:Apache License

/**
 * Auto scales the given image to the devices DPI setting.
 *//*from ww w.j av a2  s.c o  m*/
public static org.eclipse.swt.graphics.Image createAutoScaledImage(ResourceManager resources, ImageData data) {
    return resources.createImage(ImageDescriptor.createFromImageData(data));
}

From source file:com.mindquarry.mylyn.repository.ui.RepositoryUi.java

License:Open Source License

public RepositoryUi() {
    registry = new ImageRegistry();

    InputStream stream = Plugin.getDefault().getClass().getResourceAsStream(OVERLAY_TASK_NEW);
    ImageData data = new ImageData(stream);
    ImageDescriptor descriptor = ImageDescriptor.createFromImageData(data);
    registry.put(OVERLAY_TASK_NEW, descriptor);

    stream = Plugin.getDefault().getClass().getResourceAsStream(OVERLAY_TASK_RUNNING);
    data = new ImageData(stream);
    descriptor = ImageDescriptor.createFromImageData(data);
    registry.put(OVERLAY_TASK_RUNNING, descriptor);

    stream = Plugin.getDefault().getClass().getResourceAsStream(OVERLAY_TASK_PAUSED);
    data = new ImageData(stream);
    descriptor = ImageDescriptor.createFromImageData(data);
    registry.put(OVERLAY_TASK_PAUSED, descriptor);

    stream = Plugin.getDefault().getClass().getResourceAsStream(OVERLAY_TASK_DONE);
    data = new ImageData(stream);
    descriptor = ImageDescriptor.createFromImageData(data);
    registry.put(OVERLAY_TASK_DONE, descriptor);
}

From source file:com.nokia.carbide.cpp.internal.ui.images.FileImageModel.java

License:Open Source License

public ImageDescriptor getImageDescriptor(Point size) throws CoreException {
    if (imageDataProvider == null) {
        imageDataProvider = containerModel.getImageLoader().createImageDataProvider(sourceLocation);
        if (imageDataProvider != null) {
            imageDataProvider.addListener(this);
        }/*from  ww w .ja  v a2 s .  c  o  m*/
    }
    return ImageDescriptor.createFromImageData(imageDataProvider.getImageData(size));
}