Example usage for org.eclipse.jface.viewers DecoratingLabelProvider DecoratingLabelProvider

List of usage examples for org.eclipse.jface.viewers DecoratingLabelProvider DecoratingLabelProvider

Introduction

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

Prototype

public DecoratingLabelProvider(ILabelProvider provider, ILabelDecorator decorator) 

Source Link

Document

Creates a decorating label provider which uses the given label decorator to decorate labels provided by the given label provider.

Usage

From source file:at.medevit.plugin.alpha.part.PartAlpha.java

License:Open Source License

@PostConstruct
public void createComposite(Composite parent) {
    final Shell shell = parent.getShell();
    parent.setLayout(new FillLayout(SWT.VERTICAL));

    Label labelImage = new Label(parent, SWT.None);
    labelImage.setImage(Icon.PART_BETA.getImage(IconSize._16x16_DefaultIconSize));

    Button dialogButton = new Button(parent, SWT.None);
    dialogButton.setText("Open Dialog");

    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(new TableColumnLayout());

    // ---- Decorated Label Provider demonstration
    TableViewer tableViewer = new TableViewer(composite, SWT.BORDER | SWT.FULL_SELECTION);
    dialogButton.addSelectionListener(new SelectionAdapter() {
        @Override/*from   www .j  av a  2s. c  o  m*/
        public void widgetSelected(SelectionEvent e) {
            FunTitleAreaDialog ftad = new FunTitleAreaDialog(shell);
            ftad.open();
        }
    });
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());
    ILabelProvider baseLabelProvider = new LabelProvider() {
        @Override
        public Image getImage(Object element) {
            return Icon.ICON_SAMPLE.getImage(IconSize._16x16_DefaultIconSize);
        }
    };
    ILabelDecorator decorator = new ListElementDecorator();
    tableViewer.setLabelProvider(new DecoratingLabelProvider(baseLabelProvider, decorator));
    tableViewer.setInput(objects);
    // ---- Decorated Label Provider demonstration
}

From source file:ccw.launching.ClojureMainTab.java

License:Open Source License

private void createFileEditor(final Composite parent, String string) {
    Group section = SWTFactory.createGroup(parent, "Evaluate Clojure source file(s)", 2, 1, GridData.FILL_BOTH);

    sourceFilesViewer = new TableViewer(section);
    sourceFilesViewer.setLabelProvider(new DecoratingLabelProvider(new WorkbenchLabelProvider(),
            CCWPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator()));
    sourceFilesViewer.setContentProvider(new ArrayContentProvider());
    sourceFilesViewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));

    Composite buttonSection = SWTFactory.createComposite(section, parent.getFont(), 1, 1, GridData.FILL_BOTH);

    Button chooseButton = new Button(buttonSection, SWT.PUSH);
    chooseButton.setText("Choose...");
    chooseButton.addSelectionListener(new SelectionAdapter() {

        @Override//  w  w  w . j  a  v a  2  s. c  o  m
        public void widgetSelected(SelectionEvent e) {
            String currentProjName = fProjText.getText().trim();
            if (StringUtils.isBlank(currentProjName)) {
                return;
            }
            final IProject proj = ResourcesPlugin.getWorkspace().getRoot().getProject(currentProjName);
            if (proj == null) {
                return;
            }

            CheckedTreeSelectionDialog dialog = new CheckedTreeSelectionDialog(parent.getShell(),
                    new WorkbenchLabelProvider(), new BaseWorkbenchContentProvider());
            dialog.setInput(proj.getWorkspace().getRoot());
            dialog.addFilter(new ClojureElementViewerFilter(proj));

            if (sourceFilesViewer.getInput() != null) {
                dialog.setInitialSelections(((List<?>) sourceFilesViewer.getInput()).toArray());
            }
            dialog.setTitle("Evaluate Clojure source file(s)");
            dialog.open();

            List<IFile> selectedFiles = new ArrayList<IFile>();
            Object[] dialogResult = dialog.getResult();
            if (dialogResult != null) {
                for (Object o : dialogResult) {
                    if (o instanceof IFile) {
                        selectedFiles.add((IFile) o);
                    }
                }
            }
            sourceFilesViewer.setInput(selectedFiles);
            updateLaunchConfigurationDialog();
        }

    });
}

From source file:com.aptana.ide.core.ui.EclipseUIUtils.java

License:Open Source License

/**
 * Creates a new decorating label provider from a workbench label provider created around the label decorator from
 * IDE workbench plugin//from  w  ww .ja v  a  2  s  . c  o m
 * 
 * @return - created workbench label provider
 */
public static ILabelProvider createWorkbenchLabelProvider() {
    ILabelProvider labelProvider = new DecoratingLabelProvider(new WorkbenchLabelProvider(),
            IDEWorkbenchPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator());
    return labelProvider;
}

From source file:com.aptana.ide.search.AptanaFileSearchPage.java

License:Open Source License

/**
 * installing our decorator here.//from w w w . j ava 2s .c  om
 * @see org.eclipse.search.internal.ui.text.FileSearchPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)
 */
protected void configureTreeViewer(TreeViewer viewer) {
    super.configureTreeViewer(viewer);
    FileTreeContentProvider provider2 = new FileTreeContentProvider(this, viewer) {

    };
    viewer.setContentProvider(provider2);
    try {
        Field field = FileSearchPage.class.getDeclaredField("fContentProvider"); //$NON-NLS-1$
        field.setAccessible(true);
        field.set(this, provider2);
    } catch (Exception e) {
        IdeLog.logError(Activator.getDefault(), "Error during conifguration using reflection", e); //$NON-NLS-1$
    }

    final DecoratingFileSearchLabelProvider labelProvider = new DecoratingFileSearchLabelProvider(
            new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL_PATH));
    DecoratingLabelProvider decoratingLabelProvider = new DecoratingLabelProvider(labelProvider,
            new AptanaExtraDecorator(this)) {

        public void setLabelDecorator(ILabelDecorator decorator) {
            if (decorator != null) {
                AptanaFileSearchPage.this.turnOff = true;
            }
            labelProvider.setLabelDecorator(decorator);
            AptanaFileSearchPage.this.turnOff = false;
        }

        public void dispose() {

        }

    };
    viewer.setInput(getInput());
    this.provider = (ITreeContentProvider) viewer.getContentProvider();
    viewer.setLabelProvider(decoratingLabelProvider);
}

From source file:com.aptana.ide.search.epl.filesystem.ui.text.FileSystemSearchPage.java

License:Open Source License

/**
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTableViewer(org.eclipse.jface.viewers.TableViewer)
 *//*from w  ww .ja va 2s  .c  om*/
protected void configureTableViewer(TableViewer viewer) {
    viewer.setUseHashlookup(true);
    FileLabelProvider innerLabelProvider = new FileLabelProvider(this, fCurrentSortOrder);
    viewer.setLabelProvider(new DecoratingLabelProvider(innerLabelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    viewer.setContentProvider(new FileTableContentProvider(this));
    viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (IFileSearchContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);
}

From source file:com.aptana.ide.search.epl.filesystem.ui.text.FileSystemSearchPage.java

License:Open Source License

/**
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)
 *//*from w w w.  ja  v a  2  s . c  o  m*/
protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);
    FileLabelProvider innerLabelProvider = new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL);
    viewer.setLabelProvider(new DecoratingLabelProvider(innerLabelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    viewer.setContentProvider(new FileTreeContentProvider(this, viewer));
    viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (IFileSearchContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);
}

From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java

License:Open Source License

/**
 * @see org.eclipse.search.internal.ui.text.FileSearchPage#configureTreeViewer(org.eclipse.jface.viewers.TreeViewer)
 */// w  w w  . ja  va2s  .  c  o  m
protected void configureTreeViewer(TreeViewer viewer) {
    super.configureTreeViewer(viewer);

    final DecoratingLabelProvider labelProvider = (DecoratingLabelProvider) viewer.getLabelProvider();
    DecoratingLabelProvider decoratingLabelProvider = new DecoratingLabelProvider(labelProvider,
            new AptanaExtraDecorator(this)) {

        public void setLabelDecorator(ILabelDecorator decorator) {
            if (decorator != null) {
                AptanaFileSystemSearchPage.this.turnOff = true;
            }
            labelProvider.setLabelDecorator(decorator);
            AptanaFileSystemSearchPage.this.turnOff = false;
        }

    };
    this.provider = (ITreeContentProvider) viewer.getContentProvider();
    viewer.setLabelProvider(decoratingLabelProvider);
}

From source file:com.aptana.ide.ui.io.dialogs.FileTreeSelectionDialog.java

License:Open Source License

/**
 * @param parent/*w  w w . ja v a  2 s  .  com*/
 * @param allowFiles
 */
public FileTreeSelectionDialog(Shell parent, boolean allowFiles) {
    super(parent,
            new DecoratingLabelProvider(new FileLabelProvider(),
                    PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()),
            new FileContentProvider(allowFiles));
    setTitle(CoreStrings.BROWSE);
    setComparator(new FileTreeNameSorter());
}

From source file:com.ebmwebsourcing.petals.common.internal.provisional.ui.JarExportWizardPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {

    Composite container = new Composite(parent, SWT.NONE);
    container.setLayout(new GridLayout());
    container.setLayoutData(new GridData(GridData.FILL_BOTH));
    new Label(container, SWT.NONE).setText(
            "Select the resources to export.\nThe following projects are the project you selected and the projects it depends on.");

    int labelFlags = JavaElementLabelProvider.SHOW_BASICS | JavaElementLabelProvider.SHOW_OVERLAY_ICONS
            | JavaElementLabelProvider.SHOW_SMALL_ICONS;

    ITreeContentProvider treeContentProvider = new StandardJavaElementContentProvider() {
        @Override//  w  w  w. jav a  2s.co  m
        public boolean hasChildren(Object element) {
            return !(element instanceof IPackageFragment) && super.hasChildren(element);
        }

        @Override
        public Object[] getElements(Object parent) {
            if (parent instanceof IWorkspaceRoot) {
                List<IJavaProject> result = JavaUtils
                        .getJavaProjectDependencies(JarExportWizardPage.this.selectedProject);
                return result.toArray();
            }
            return super.getElements(parent);
        }
    };

    final DecoratingLabelProvider provider = new DecoratingLabelProvider(
            new JavaElementLabelProvider(labelFlags), new ProblemsLabelDecorator(null));

    this.javaSelectionViewer = new CheckboxTreeAndListGroup(container, ResourcesPlugin.getWorkspace().getRoot(),
            treeContentProvider, provider, new StandardJavaElementContentProvider(), provider, SWT.NONE, 420,
            150) {

        /*
         * (non-Javadoc)
         * @see com.ebmwebsourcing.petals.common.internal.provisional.ui.jdt.CheckboxTreeAndListGroup
         * #setTreeChecked(java.lang.Object, boolean)
         */
        @Override
        protected void setTreeChecked(final Object element, final boolean state) {
            if (element instanceof IResource) {
                final IResource resource = (IResource) element;
                if (resource.getName().charAt(0) == '.')
                    return;
            }
            super.setTreeChecked(element, state);
        }
    };

    this.javaSelectionViewer.addTreeFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parent, Object element) {

            boolean result = true;
            if (element instanceof IPackageFragment) {
                IPackageFragment pkg = (IPackageFragment) element;
                try {
                    if (pkg.isDefaultPackage())
                        result = pkg.hasChildren();
                    else
                        result = !pkg.hasSubpackages() || pkg.hasChildren()
                                || pkg.getNonJavaResources().length > 0;

                } catch (JavaModelException e) {
                    result = false;
                }
            }

            return result;
        }
    });

    this.javaSelectionViewer.setTreeComparator(new JavaElementComparator());
    this.javaSelectionViewer.setListComparator(new JavaElementComparator());
    this.javaSelectionViewer.addTreeFilter(new ContainerFilter(ContainerFilter.FILTER_NON_CONTAINERS));
    this.javaSelectionViewer.addTreeFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object p, Object element) {
            if (element instanceof IPackageFragmentRoot) {
                IPackageFragmentRoot root = (IPackageFragmentRoot) element;
                return !root.isArchive() && !root.isExternal();
            }
            return true;
        }
    });

    this.javaSelectionViewer.addListFilter(new ContainerFilter(ContainerFilter.FILTER_CONTAINERS));
    this.javaSelectionViewer.expandTreeToLevel(this.selectedProject, 1);
    this.javaSelectionViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            validate();
        }
    });

    // Options
    final Button exportSourcesButton = new Button(container, SWT.CHECK);
    exportSourcesButton.setText("Export sources");
    exportSourcesButton.setSelection(this.exportSources);
    exportSourcesButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            JarExportWizardPage.this.exportSources = exportSourcesButton.getSelection();
            validate();
        }
    });

    final Button compressJarButton = new Button(container, SWT.CHECK);
    compressJarButton.setText("Compress the content of the JAR file");
    compressJarButton.setSelection(this.compressJar);
    compressJarButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            JarExportWizardPage.this.compressJar = compressJarButton.getSelection();
            validate();
        }
    });

    final Button exportWarningsAndErrorsButton = new Button(container, SWT.CHECK);
    exportWarningsAndErrorsButton.setText("Export class files with compile warnings or errors");
    exportWarningsAndErrorsButton.setSelection(this.exportWarningsAndErrors);
    exportWarningsAndErrorsButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            JarExportWizardPage.this.exportWarningsAndErrors = exportWarningsAndErrorsButton.getSelection();
            validate();
        }
    });

    validate();
    setErrorMessage(null);
    setControl(container);
}

From source file:com.ebmwebsourcing.petals.common.internal.provisional.ui.LibrariesExportWizardPage.java

License:Open Source License

public void createControl(Composite parent) {

    Composite container = new Composite(parent, SWT.NONE);
    container.setLayout(new GridLayout());
    container.setLayoutData(new GridData(GridData.FILL_BOTH));
    new Label(container, SWT.NONE).setText("Select the dependencies to export.");

    this.libViewer = new CheckboxTreeViewer(container,
            SWT.CHECK | SWT.BORDER | SWT.HIDE_SELECTION | SWT.SINGLE);

    this.libViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    this.libViewer.setContentProvider(new JavaLibaryContentProvider());

    int labelFlags = JavaElementLabelProvider.SHOW_BASICS | JavaElementLabelProvider.SHOW_OVERLAY_ICONS
            | JavaElementLabelProvider.SHOW_SMALL_ICONS;

    final DecoratingLabelProvider labelProvider = new DecoratingLabelProvider(
            new JavaElementLabelProvider(labelFlags), new ProblemsLabelDecorator(null)) {

        /*/*  w  ww.  j  av  a  2  s  . c  o m*/
         * (non-Javadoc)
         * @see org.eclipse.jface.viewers.DecoratingLabelProvider
         * #getText(java.lang.Object)
         */
        @Override
        public String getText(Object element) {
            if (element instanceof JavaProjectLibrary)
                return ((JavaProjectLibrary) element).library.getName();
            return super.getText(element);
        }

        /*
         * (non-Javadoc)
         * @see org.eclipse.jface.viewers.DecoratingLabelProvider
         * #getImage(java.lang.Object)
         */
        @Override
        public Image getImage(Object element) {
            if (element instanceof JavaProjectLibrary)
                return LibrariesExportWizardPage.this.jarImage;
            return super.getImage(element);
        }
    };

    this.libViewer.setLabelProvider(labelProvider);
    this.libViewer.setInput(new Object());
    this.libViewer.addCheckStateListener(new LibraryTreeCheckStateListener());
    this.libViewer.getTree().addMouseMoveListener(new MouseMoveListener() {
        public void mouseMove(MouseEvent e) {

            TreeItem item = ((Tree) e.widget).getItem(new Point(e.x, e.y));
            if (item != null && item.getData() != null && item.getData() instanceof JavaProjectLibrary) {
                JavaProjectLibrary jpl = (JavaProjectLibrary) item.getData();
                String tooltip = jpl.library.getAbsolutePath();
                item.getParent().setToolTipText(tooltip);
            } else
                LibrariesExportWizardPage.this.libViewer.getTree().setToolTipText(null);
        }
    });

    setControl(container);
}