Example usage for org.eclipse.jface.viewers LabelProvider getImage

List of usage examples for org.eclipse.jface.viewers LabelProvider getImage

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers LabelProvider getImage.

Prototype

@Override
public Image getImage(Object element) 

Source Link

Document

The LabelProvider implementation of this ILabelProvider method returns null.

Usage

From source file:gov.nasa.ensemble.core.detail.emf.binding.MultiSelectBindingFactory.java

License:Open Source License

@Override
public Binding createBinding(DetailProviderParameter parameter) {
    EObject target = parameter.getTarget();
    Composite parent = parameter.getParent();
    IItemPropertyDescriptor pd = parameter.getPropertyDescriptor();
    Collection<?> choiceOfValues = pd.getChoiceOfValues(target);
    EStructuralFeature feature = (EStructuralFeature) pd.getFeature(target);
    EClassifier eType = feature.getEType();
    FormToolkit toolkit = parameter.getDetailFormToolkit();
    DataBindingContext dataBindingContext = parameter.getDataBindingContext();

    boolean valid = true;
    List<Object> choices = new ArrayList<Object>();
    if (choiceOfValues != null) {
        for (Object choice : choiceOfValues) {
            if (choice != null && eType.isInstance(choice)) {
                choices.add(choice);//from   w  w w .  ja v a  2s. c o m
            }
        }
    }

    if (valid) {
        Object value = pd.getPropertyValue(target);
        if (value instanceof PropertyValueWrapper) { // what is this all about?
            value = ((PropertyValueWrapper) value).getEditableValue(value);
        }
        if (value == null) {
            value = Collections.emptyList();
        }
        LabelProvider editLabelProvider = new LabelProviderWrapper(pd.getLabelProvider(target));
        final FeatureEditorDialog dialog = new FeatureEditorDialog(parent.getShell(), editLabelProvider, target,
                eType, (List<?>) value, pd.getDisplayName(target), choices, false, pd.isSortChoices(target),
                feature.isUnique());

        final IObservableValue targetObservable = new AbstractObservableValue() {

            @Override
            protected void doSetValue(Object value) {
                fireValueChange(Diffs.createValueDiff(null, value));
            }

            @Override
            protected Object doGetValue() {
                return dialog.getResult();
            }

            @Override
            public Object getValueType() {
                return List.class;
            }

        };

        EMFDetailUtils.createLabel(parent, toolkit, target, pd);

        Button button = toolkit.createButton(parent, "", SWT.DOWN);
        button.setImage(editLabelProvider.getImage(target));
        button.addSelectionListener(new SelectionListener() {

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

            @Override
            public void widgetSelected(SelectionEvent e) {
                dialog.open();
                targetObservable.setValue(dialog.getResult());
            }

        });

        EMFDetailUtils.bindValidatorDecoration(parameter, button);
        EMFDetailUtils.bindControlViability(parameter, new Control[] { button });
        toolkit.adapt(button, true, true);
        return dataBindingContext.bindValue(targetObservable, new UndoableObservableValue(target, pd),
                new EMFReferenceUpdateStrategy(UpdateValueStrategy.POLICY_UPDATE, choices, editLabelProvider),
                new EMFReferenceUpdateStrategy(UpdateValueStrategy.POLICY_UPDATE, choices, editLabelProvider));
    }

    Logger.getLogger(EMFDetailFormPart.class).error("no multi-select editor created for " + feature.getName());
    return null;
}

From source file:optm.core.view.RepositoryLabelProvider.java

License:Apache License

@Override
public Image getImage(final Object element) {
    for (LabelProvider labelProvider : providers) {
        Image image = labelProvider.getImage(element);
        if (image != null) {
            return image;
        }/*w  ww  .ja  v a2  s.  c  om*/
    }
    return null;
}

From source file:org.dita_op.editor.internal.ui.editors.DITAContentAssistProcessor.java

License:Open Source License

/**
 * @see org.eclipse.wst.xml.ui.internal.contentassist.XMLContentAssistProcessor#addAttributeValueProposals(org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest)
 *//*w w w .  j  a  va  2s  . co  m*/
@Override
protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {

    IDOMNode node = (IDOMNode) contentAssistRequest.getNode();

    // Find the attribute region and name for which this position should
    // have a value proposed
    IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
    ITextRegionList openRegions = open.getRegions();
    int i = openRegions.indexOf(contentAssistRequest.getRegion());
    if (i >= 0) {
        ITextRegion nameRegion = null;

        while (i >= 0) {
            nameRegion = openRegions.get(i--);
            if (nameRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) {
                break;
            }
        }

        // the name region is REQUIRED to do anything useful
        if (nameRegion != null) {
            // String attributeName = nameRegion.getText();
            String attributeName = open.getText(nameRegion);

            if ("conref".equals(attributeName) //$NON-NLS-1$
                    || "href".equals(attributeName) //$NON-NLS-1$
                    || "mapref".equals(attributeName)) { //$NON-NLS-1$
                try {
                    boolean existingComplicatedValue = (contentAssistRequest.getRegion() != null)
                            && (contentAssistRequest.getRegion() instanceof ITextRegionContainer);

                    if (!existingComplicatedValue) {
                        String matchString = contentAssistRequest.getMatchString();

                        if (matchString == null) {
                            matchString = ""; //$NON-NLS-1$
                        }

                        if ((matchString.length() > 0)
                                && (matchString.startsWith("\"") || matchString.startsWith("'"))) { //$NON-NLS-1$ //$NON-NLS-2$
                            matchString = matchString.substring(1);
                        }

                        IPath baseLocation = new Path(node.getModel().getBaseLocation());
                        baseLocation = baseLocation.removeLastSegments(1);

                        List<IPath> possibleValues = getPossibleValues(baseLocation, matchString);

                        if (possibleValues.size() > 0) {
                            LabelProvider labelProvider = new WorkbenchLabelProvider();
                            IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

                            for (IPath candidate : possibleValues) {
                                String path = candidate.toString();
                                IResource res = root.findMember(baseLocation.append(candidate));

                                String rString = "\"" + path + "\""; //$NON-NLS-2$//$NON-NLS-1$
                                int rOffset = contentAssistRequest.getReplacementBeginPosition();
                                int rLength = contentAssistRequest.getReplacementLength();
                                int cursorAfter = path.length() + 1;

                                CustomCompletionProposal proposal = new CustomCompletionProposal(rString,
                                        rOffset, rLength, cursorAfter, labelProvider.getImage(res),
                                        candidate.lastSegment(), null, null,
                                        XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
                                contentAssistRequest.addProposal(proposal);
                            }
                        }
                    }
                } catch (CoreException e) {
                    setErrorMessage(e.getLocalizedMessage());
                    Activator.getDefault().getLog().log(e.getStatus());
                }
            }
        }
    }

    super.addAttributeValueProposals(contentAssistRequest);
}

From source file:org.eclipse.buckminster.ui.dependency.visualizer.viewer.figures.BOMNodeTooltipFigure.java

License:Open Source License

private IFigure createHeadFigure() {
    LabelProvider provider = new DependencyLabelProvider();
    Image image = provider.getImage(node);
    String text = provider.getText(node);
    Label label = new Label(text, image);
    return label;
}

From source file:org.eclipse.contribution.weaving.jdt.tests.imagedescriptor.ImageDescriptorSelectorTests.java

License:Open Source License

public void testImageSelectDialog() throws Exception {
    FilteredTypesSelectionDialog dialog = new FilteredTypesSelectionDialog(
            new Shell(Display.getCurrent().getActiveShell()), false, null, null, 0, null);
    LabelProvider fTypeInfoLabelProvider = getLabelProvider(dialog);

    // here, we can't test the image directly because the extra decorators are added to it.
    // instead just test that the image selector was activated
    fTypeInfoLabelProvider.getImage(new JavaSearchTypeNameMatch((IType) cu.getChildren()[0], 0));
    Assert.assertTrue("Image descriptor selector never activated", MockImageDescriptorSelector.isSet);
}

From source file:org.jboss.tools.common.model.ui.attribute.AttributeContentProposalProviderFactory.java

License:Open Source License

private static ControlDecoration addControlDecoration(Control control,
        final List<IAttributeContentProposalProvider> ps) {
    int bits = SWT.TOP | SWT.LEFT;
    ControlDecoration controlDecoration = new ControlDecoration(control, bits) {
        public Image getImage() {
            for (IAttributeContentProposalProvider p : ps) {
                LabelProvider lp = p.getCustomLabelProbider();
                if (lp != null) {
                    Image image = lp.getImage(getControl());
                    if (image != null)
                        return image;
                }/* w w w.  j  a  v a  2s.  co m*/
            }
            return super.getImage();
        }
    };
    // Configure text widget decoration
    // No margin

    controlDecoration.setMarginWidth(0);
    // Custom hover tip text
    controlDecoration
            .setDescriptionText("code assist" /*PDEUIMessages.PDEJavaHelper_msgContentAssistAvailable*/);
    // Custom hover properties
    controlDecoration.setShowHover(true);
    // Hover image to use
    FieldDecoration contentProposalImage = FieldDecorationRegistry.getDefault()
            .getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL);
    controlDecoration.setImage(contentProposalImage.getImage());
    return controlDecoration;
}

From source file:org.jkiss.dbeaver.ui.navigator.project.ProjectExplorerView.java

License:Open Source License

private void createColumns(final TreeViewer viewer) {
    final Color shadowColor = viewer.getControl().getDisplay().getSystemColor(SWT.COLOR_WIDGET_DARK_SHADOW);

    final LabelProvider mainLabelProvider = (LabelProvider) viewer.getLabelProvider();
    columnController = new ViewerColumnController("projectExplorer", viewer);
    columnController.addColumn("Name", "Resource name", SWT.LEFT, true, true,
            new TreeColumnViewerLabelProvider(new LabelProvider() {
                @Override//w  w  w  . ja  va  2s .com
                public String getText(Object element) {
                    return mainLabelProvider.getText(element);
                }

                @Override
                public Image getImage(Object element) {
                    return mainLabelProvider.getImage(element);
                }
            }));

    columnController.addColumn("DataSource", "Datasource(s) associated with resource", SWT.LEFT, true, false,
            new TreeColumnViewerLabelProvider(new LabelProvider() {
                @Override
                public String getText(Object element) {
                    DBNNode node = (DBNNode) element;
                    if (node instanceof DBNDatabaseNode) {
                        return ((DBNDatabaseNode) node).getDataSourceContainer().getName();
                    } else if (node instanceof DBNResource) {
                        Collection<DBPDataSourceContainer> containers = ((DBNResource) node)
                                .getAssociatedDataSources();
                        if (!CommonUtils.isEmpty(containers)) {
                            StringBuilder text = new StringBuilder();
                            for (DBPDataSourceContainer container : containers) {
                                if (text.length() > 0) {
                                    text.append(", ");
                                }
                                text.append(container.getName());
                            }
                            return text.toString();
                        }
                    }
                    return "";
                }

                @Override
                public Image getImage(Object element) {
                    /*
                                    DBNNode node = (DBNNode) element;
                                    if (node instanceof DBNDatabaseNode) {
                    return DBeaverIcons.getImage(((DBNDatabaseNode) node).getDataSourceContainer().getDriver().getIcon());
                                    } else if (node instanceof DBNResource) {
                    Collection<DBPDataSourceContainer> containers = ((DBNResource) node).getAssociatedDataSources();
                    if (containers != null && containers.size() == 1) {
                        return DBeaverIcons.getImage((containers.iterator().next().getDriver().getIcon()));
                    }
                                    }
                    */
                    return null;
                }

            }));
    columnController.addColumn("Preview", "Script content preview", SWT.LEFT, false, false,
            new LazyLabelProvider(shadowColor) {
                @Override
                public String getLazyText(Object element) {
                    return ((DBNNode) element).getNodeDescription();
                }
            });
    columnController.addColumn("Size", "File size", SWT.LEFT, false, false,
            new TreeColumnViewerLabelProvider(new LabelProvider() {
                @Override
                public String getText(Object element) {
                    DBNNode node = (DBNNode) element;
                    if (node instanceof DBNResource) {
                        IResource resource = ((DBNResource) node).getResource();
                        if (resource instanceof IFile) {
                            return String.valueOf(resource.getLocation().toFile().length());
                        }
                    }
                    return "";
                }
            }));
    columnController.addColumn("Modified", "Time the file was last modified", SWT.LEFT, false, false,
            new TreeColumnViewerLabelProvider(new LabelProvider() {
                private SimpleDateFormat sdf = new SimpleDateFormat(UIUtils.DEFAULT_TIMESTAMP_PATTERN);

                @Override
                public String getText(Object element) {
                    DBNNode node = (DBNNode) element;
                    if (node instanceof DBNResource) {
                        IResource resource = ((DBNResource) node).getResource();
                        if (resource instanceof IFile) {
                            return sdf.format(new Date(resource.getLocation().toFile().lastModified()));
                        }
                    }
                    return "";
                }
            }));
    columnController.addColumn("Type", "Resource type", SWT.LEFT, false, false,
            new TreeColumnViewerLabelProvider(new LabelProvider() {
                @Override
                public String getText(Object element) {
                    DBNNode node = (DBNNode) element;
                    if (node instanceof DBNResource) {
                        IResource resource = ((DBNResource) node).getResource();
                        ProgramInfo program = ProgramInfo.getProgram(resource);
                        if (program != null) {
                            return program.getProgram().getName();
                        }
                    }
                    return "";
                }
            }));
    columnController.createColumns();
}