Example usage for org.eclipse.jface.viewers ViewerCell setImage

List of usage examples for org.eclipse.jface.viewers ViewerCell setImage

Introduction

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

Prototype

public void setImage(Image image) 

Source Link

Document

Set the Image for the cell.

Usage

From source file:at.bestsolution.eclipse.properties.PropertyContentOutlinePage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);
    TreeViewer viewer = getTreeViewer();
    viewer.setLabelProvider(new StyledCellLabelProvider() {
        @Override/*from   w w w . j a  v  a  2  s. c  o m*/
        public void update(ViewerCell cell) {
            Object element = cell.getElement();
            if (element instanceof PropertyGroup) {
                cell.setText(((PropertyGroup) element).name);
                cell.setImage(Activator.getDefault().getImageRegistry().get(Activator.GROUP_ICON));
                cell.setStyleRanges(null);
            } else if (element instanceof Property) {
                cell.setImage(Activator.getDefault().getImageRegistry().get(Activator.KEY_ICON));
                StyledString s = new StyledString(((Property) element).pair.key);
                String text = ((Property) element).pair.value;
                if (text.length() > 20) {
                    text = text.substring(0, 20) + "...";
                }
                s.append(" : " + text, StyledString.DECORATIONS_STYLER);
                cell.setStyleRanges(s.getStyleRanges());
                cell.setText(s.getString());
            }
            super.update(cell);
        }
    });

    viewer.setContentProvider(new HierarchicalContentProvider());

    if (isSorted()) {
        setSorted(true);
    }

    createHierarchicalStructure();

    if (isHierarchical()) {
        viewer.setInput(hierarchicalStructure);
    } else {
        viewer.setInput(flatStructure);
    }
}

From source file:at.bestsolution.efxclipse.tooling.jdt.ui.internal.editors.outline.PropertyContentOutlinePage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);
    TreeViewer viewer = getTreeViewer();
    viewer.setLabelProvider(new StyledCellLabelProvider() {
        @Override//w  w w .j a va 2s . c o m
        public void update(ViewerCell cell) {
            Object element = cell.getElement();
            if (element instanceof PropertyGroup) {
                cell.setText(((PropertyGroup) element).name);
                cell.setImage(JavaFXUIPlugin.getDefault().getImageRegistry().get(JavaFXUIPlugin.GROUP_ICON));
                cell.setStyleRanges(null);
            } else if (element instanceof Property) {
                cell.setImage(JavaFXUIPlugin.getDefault().getImageRegistry().get(JavaFXUIPlugin.KEY_ICON));
                StyledString s = new StyledString(((Property) element).pair.key);
                String text = ((Property) element).pair.value;
                if (text.length() > 20) {
                    text = text.substring(0, 20) + "...";
                }
                s.append(" : " + text, StyledString.DECORATIONS_STYLER);
                cell.setStyleRanges(s.getStyleRanges());
                cell.setText(s.getString());
            }
            super.update(cell);
        }
    });

    viewer.setContentProvider(new HierarchicalContentProvider());

    if (isSorted()) {
        setSorted(true);
    }

    createHierarchicalStructure();

    if (isHierarchical()) {
        viewer.setInput(hierarchicalStructure);
    } else {
        viewer.setInput(flatStructure);
    }
}

From source file:at.medevit.elexis.gdt.ui.GDTProtokollView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    initTableViewer(parent);// new TableViewerBuilder(parent);

    ColumnBuilder messageDirection = createColumn("");
    messageDirection.bindToProperty("messageDirection");
    messageDirection.format(new ICellFormatter() {
        @Override//from w  ww .  j a v a2  s  . co  m
        public void formatCell(ViewerCell cell, Object value) {
            String direction = (String) value;
            cell.setText("");
            if (direction.equalsIgnoreCase(GDTProtokoll.MESSAGE_DIRECTION_IN)) {
                cell.setImage(
                        ResourceManager.getPluginImage("at.medevit.elexis.gdt", "rsc/icons/incoming.png"));
            } else if (direction.equalsIgnoreCase(GDTProtokoll.MESSAGE_DIRECTION_OUT)) {
                cell.setImage(
                        ResourceManager.getPluginImage("at.medevit.elexis.gdt", "rsc/icons/outgoing.png"));
            }
        }
    });
    messageDirection.setPixelWidth(23);
    messageDirection.build();

    ColumnBuilder entryTime = createColumn("Datum/Uhrzeit");
    entryTime.bindToProperty("entryTime");
    entryTime.format(new IValueFormatter<TimeTool, String>() {
        @Override
        public String format(TimeTool obj) {
            return obj.toString(TimeTool.FULL_GER);
        }

        @Override
        public TimeTool parse(String obj) {
            return new TimeTool(obj);
        }
    });
    entryTime.setPercentWidth(15);
    entryTime.useAsDefaultSortColumn();
    entryTime.build();

    ColumnBuilder gdtSatz = createColumn("Satzart");
    gdtSatz.bindToValue(new BaseValue<GDTProtokoll>() {
        @Override
        public Object get(GDTProtokoll entry) {
            return entry.get(GDTProtokoll.FLD_MESSAGE_TYPE);
        }
    });
    gdtSatz.setPercentWidth(5);
    gdtSatz.build();

    ColumnBuilder bezeichnung = createColumn("Bezeichnung");
    bezeichnung.bindToProperty("bezeichnung");
    bezeichnung.makeEditable();
    bezeichnung.setPercentWidth(25);
    bezeichnung.build();

    ColumnBuilder bemerkungen = createColumn("Bemerkungen");
    bemerkungen.bindToProperty("bemerkungen");
    bemerkungen.makeEditable();
    bemerkungen.setPercentWidth(25);
    bemerkungen.build();

    ColumnBuilder patient = createColumn("Patient");
    patient.bindToProperty("entryRelatedPatient");
    patient.format(new IValueFormatter<Patient, String>() {
        @Override
        public String format(Patient obj) {
            return obj.getLabel();
        }

        @Override
        public Patient parse(String obj) {
            return null;
        }

    });
    patient.setPercentWidth(10);
    patient.build();

    ColumnBuilder gegenstelle = createColumn("Gegenstelle");
    gegenstelle.bindToProperty("gegenstelle");
    gegenstelle.setPercentWidth(15);
    gegenstelle.build();

    tableViewer.setContentProvider(ArrayContentProvider.getInstance());
    tableViewer.setInput(null);

    MenuManager menuManager = new MenuManager();
    menuManager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
    table.setMenu(menuManager.createContextMenu(table));
    getSite().registerContextMenu(menuManager, tableViewer);
    getSite().setSelectionProvider(tableViewer);
}

From source file:au.gov.ga.earthsci.bookmark.part.BookmarksPart.java

License:Apache License

private void initList(Composite parent) {
    Composite tableHolder = new Composite(parent, SWT.NONE);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.grabExcessHorizontalSpace = true;
    gd.grabExcessVerticalSpace = true;//from   w w w .ja v  a2 s  . c o m
    gd.horizontalAlignment = GridData.FILL;
    tableHolder.setLayoutData(gd);

    TableColumnLayout layout = new TableColumnLayout();
    tableHolder.setLayout(layout);

    bookmarkListTableViewer = new TableViewer(tableHolder,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    bookmarkListTableViewer.getTable().setHeaderVisible(false);
    bookmarkListTableViewer.getTable().setLinesVisible(false);

    bookmarkListTableViewer.getTable().setLayoutData(gd);

    ObservableListContentProvider contentProvider = new ObservableListContentProvider();
    bookmarkListTableViewer.setContentProvider(contentProvider);

    IObservableMap labelMap = BeanProperties.value("name").observeDetail(contentProvider.getKnownElements()); //$NON-NLS-1$

    TableViewerColumn column = new TableViewerColumn(bookmarkListTableViewer, SWT.LEFT);
    column.setEditingSupport(new BookmarkNameEditingSupport(bookmarkListTableViewer));
    column.setLabelProvider(new ObservableMapCellLabelProvider(labelMap) {
        @Override
        public void update(ViewerCell cell) {
            super.update(cell);
            cell.setText(" " + ((IBookmark) cell.getElement()).getName()); //$NON-NLS-1$
            cell.setImage(ImageRegistry.getInstance().get(ImageRegistry.ICON_BOOKMARKS));
        }
    });
    ColumnLayoutData cld = new ColumnWeightData(12);
    layout.setColumnData(column.getColumn(), cld);

    // Allow edit (rename) only via programmatic access (rename command) 
    ColumnViewerEditorActivationStrategy activationStrategy = new ColumnViewerEditorActivationStrategy(
            bookmarkListTableViewer) {
        @Override
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };
    TableViewerEditor.create(bookmarkListTableViewer, activationStrategy,
            ColumnViewerEditor.KEYBOARD_ACTIVATION);

    // Populate the current selection with the actual bookmark items
    bookmarkListTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) bookmarkListTableViewer.getSelection();
            List<?> list = selection.toList();
            selectionService.setSelection(list.toArray(new IBookmark[list.size()]));
        }
    });

    // Apply the bookmark on double click
    bookmarkListTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            controller.apply((IBookmark) ((IStructuredSelection) event.getSelection()).getFirstElement());
        }
    });

    // Deselect when clicking outside a valid row
    bookmarkListTableViewer.getTable().addMouseListener(new MouseAdapter() {
        @Override
        public void mouseUp(MouseEvent e) {
            if (bookmarkListTableViewer.getTable().getItem(new Point(e.x, e.y)) == null) {
                bookmarkListTableViewer.setSelection(null);
            }
        }
    });

}

From source file:au.gov.ga.earthsci.bookmark.ui.BookmarksPart.java

License:Apache License

private void initList(Composite parent) {
    Composite tableHolder = new Composite(parent, SWT.NONE);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.grabExcessHorizontalSpace = true;
    gd.grabExcessVerticalSpace = true;/* ww w. ja va  2  s  . c  o m*/
    gd.horizontalAlignment = GridData.FILL;
    tableHolder.setLayoutData(gd);

    TableColumnLayout layout = new TableColumnLayout();
    tableHolder.setLayout(layout);

    bookmarkListTableViewer = new TableViewer(tableHolder,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    bookmarkListTableViewer.getTable().setHeaderVisible(false);
    bookmarkListTableViewer.getTable().setLinesVisible(false);

    bookmarkListTableViewer.getTable().setLayoutData(gd);

    ObservableListContentProvider<IBookmark> contentProvider = new ObservableListContentProvider<IBookmark>(
            IBookmark.class);
    bookmarkListTableViewer.setContentProvider(contentProvider);

    IObservableSet<IBookmark> knownElements = contentProvider.getKnownElements();
    IObservableMap<IBookmark, String> nameMap = BeanProperties.value(IBookmark.class, "name", String.class) //$NON-NLS-1$
            .observeDetail(knownElements);

    TableViewerColumn column = new TableViewerColumn(bookmarkListTableViewer, SWT.LEFT);
    column.setEditingSupport(new BookmarkNameEditingSupport(bookmarkListTableViewer));
    column.setLabelProvider(new ObservableMapCellLabelProvider<IBookmark, String>(nameMap) {
        @Override
        public void update(ViewerCell cell) {
            super.update(cell);
            cell.setText(" " + ((IBookmark) cell.getElement()).getName()); //$NON-NLS-1$
            cell.setImage(ImageRegistry.getInstance().get(ImageRegistry.ICON_BOOKMARKS));
        }
    });
    ColumnLayoutData cld = new ColumnWeightData(12);
    layout.setColumnData(column.getColumn(), cld);

    // Allow edit (rename) only via programmatic access (rename command)
    ColumnViewerEditorActivationStrategy activationStrategy = new ColumnViewerEditorActivationStrategy(
            bookmarkListTableViewer) {
        @Override
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };
    TableViewerEditor.create(bookmarkListTableViewer, activationStrategy,
            ColumnViewerEditor.KEYBOARD_ACTIVATION);

    // Populate the current selection with the actual bookmark items
    bookmarkListTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) bookmarkListTableViewer.getSelection();
            List<?> list = selection.toList();
            selectionService.setSelection(list.toArray(new IBookmark[list.size()]));
        }
    });

    // Apply the bookmark on double click
    bookmarkListTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            controller.apply((IBookmark) ((IStructuredSelection) event.getSelection()).getFirstElement());
        }
    });

    // Deselect when clicking outside a valid row
    bookmarkListTableViewer.getTable().addMouseListener(new MouseAdapter() {
        @Override
        public void mouseUp(MouseEvent e) {
            if (bookmarkListTableViewer.getTable().getItem(new Point(e.x, e.y)) == null) {
                bookmarkListTableViewer.setSelection(null);
            }
        }
    });

}

From source file:bndtools.editor.BndEditorContentOutlineLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();

    if (element instanceof String) {
        // Top-level placeholder
        if (BndEditor.BUILD_PAGE.equals(element)) {
            cell.setText("Build");
        } else if (BndEditor.PROJECT_RUN_PAGE.equals(element)) {
            cell.setText("Run");
        } else if (BndEditorContentOutlineProvider.EXPORTS.equals(element)) {
            cell.setText("Exports");
        } else if (BndEditorContentOutlineProvider.PRIVATE_PKGS.equals(element)) {
            cell.setText("Private Packages");
        } else if (BndEditorContentOutlineProvider.IMPORT_PATTERNS.equals(element)) {
            cell.setText("Import Patterns");
        } else if (BndEditor.SOURCE_PAGE.equals(element)) {
            cell.setText("Source");
        } else if (BndEditorContentOutlineProvider.PLUGINS.equals(element)) {
            cell.setText("Plugins");
        }/*from  w  w  w  .j av  a2  s  . co m*/
        cell.setImage(pageImg);
    } else if (element instanceof ExportedPackage) {
        cell.setText(((ExportedPackage) element).getName());
        cell.setImage(packageImg);
    } else if (element instanceof ImportPattern) {
        cell.setText(((ImportPattern) element).getName());
        cell.setImage(packageImg);
    } else if (element instanceof PrivatePkg) {
        cell.setText(((PrivatePkg) element).pkg);
        cell.setImage(packageImg);
    } else if (element instanceof PluginClause) {
        cell.setText(((PluginClause) element).header.getName());
        cell.setImage(pluginImg);
    }
}

From source file:bndtools.editor.components.ComponentSvcRefTableLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    ComponentSvcReference svcRef = (ComponentSvcReference) cell.getElement();
    int columnIndex = cell.getColumnIndex();
    StyledString styledString;/*from   w  w  w .  j a v a 2s .c  o m*/
    switch (columnIndex) {
    case 0:
        styledString = new StyledString(svcRef.getName());

        String bind = svcRef.getBind();
        String unbind = svcRef.getUnbind();
        if (bind != null) {
            StringBuilder buffer = new StringBuilder();
            buffer.append(" {").append(bind).append('/');
            if (unbind != null) {
                buffer.append(unbind);
            }
            buffer.append('}');
            styledString.append(buffer.toString(), StyledString.DECORATIONS_STYLER);
        }
        cell.setImage(svcRef.isDynamic() ? dynamicImg : staticImg);
        cell.setText(styledString.toString());
        cell.setStyleRanges(styledString.getStyleRanges());
        break;
    case 1:
        styledString = new StyledString(svcRef.getServiceClass(), StyledString.QUALIFIER_STYLER);
        cell.setText(styledString.toString());
        cell.setStyleRanges(styledString.getStyleRanges());
        break;
    case 2:
        char[] cardinality = new char[] { svcRef.isOptional() ? '0' : '1', '.', '.',
                svcRef.isMultiple() ? 'n' : '1' };
        styledString = new StyledString(new String(cardinality), StyledString.COUNTER_STYLER);
        cell.setText(styledString.toString());
        cell.setStyleRanges(styledString.getStyleRanges());
        break;
    case 3:
        String target = svcRef.getTargetFilter();
        cell.setText(target != null ? target : "");
        break;
    }
}

From source file:bndtools.editor.pkgpatterns.HeaderClauseLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    @SuppressWarnings("unchecked")
    C clause = (C) cell.getElement();// ww  w.  j a  v a 2s .  co  m

    cell.setImage(packageImg);

    StyledString styledString = new StyledString(clause.getName());
    String version = clause.getAttribs().get(org.osgi.framework.Constants.VERSION_ATTRIBUTE);
    if (version != null) {
        styledString.append(": " + version, StyledString.COUNTER_STYLER);
    }

    decorate(styledString, clause);

    cell.setText(styledString.getString());
    cell.setStyleRanges(styledString.getStyleRanges());
}

From source file:bndtools.editor.pkgpatterns.PkgPatternsLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    HeaderClause clause = (HeaderClause) cell.getElement();
    cell.setImage(packageImg);

    StyledString styledString = new StyledString(clause.getName());
    String resolution = clause.getAttribs().get(Constants.RESOLUTION_DIRECTIVE);
    if (org.osgi.framework.Constants.RESOLUTION_OPTIONAL.equals(resolution)) {
        styledString.append(" <optional>", UIConstants.ITALIC_QUALIFIER_STYLER);
    }//from   w  w  w . j ava 2  s .c o  m
    String version = clause.getAttribs().get(org.osgi.framework.Constants.VERSION_ATTRIBUTE);
    if (version != null) {
        styledString.append(": " + version, StyledString.COUNTER_STYLER);
    }
    cell.setText(styledString.getString());
    cell.setStyleRanges(styledString.getStyleRanges());
}

From source file:bndtools.model.importanalysis.ImportsExportsTreeLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    if (IMPORTS_PLACEHOLDER.equals(cell.getElement())) {
        if (cell.getColumnIndex() == 0) {
            cell.setImage(pkgFolderImg);
            cell.setText("Import Packages");
        }/*from ww  w .ja  va 2  s  .c  o m*/
    } else if (EXPORTS_PLACEHOLDER.equals(cell.getElement())) {
        if (cell.getColumnIndex() == 0) {
            cell.setImage(pkgFolderImg);
            cell.setText("Export Packages");
        }
    } else if (REQUIRED_PLACEHOLDER.equals(cell.getElement())) {
        if (cell.getColumnIndex() == 0) {
            cell.setImage(bundleFolderImg);
            cell.setText("Required Bundles");
        }
    } else if (cell.getElement() instanceof ImportUsedByPackage) {
        if (cell.getColumnIndex() == 0) {
            StyledString styledString = new StyledString("Used By: ", UIConstants.ITALIC_QUALIFIER_STYLER);
            styledString.append(((ImportUsedByPackage) cell.getElement()).usedByName);
            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
        }
    } else if (cell.getElement() instanceof ImportUsedByClass) {
        if (cell.getColumnIndex() == 0) {
            ImportUsedByClass importUsedBy = (ImportUsedByClass) cell.getElement();
            String fqn = importUsedBy.clazz.getFQN();
            String className = fqn.substring(fqn.lastIndexOf('.') + 1);
            cell.setText(className);
            cell.setImage(classImg);
        }
    } else if (cell.getElement() instanceof ExportUsesPackage) {
        if (cell.getColumnIndex() == 0) {
            StyledString styledString = new StyledString("Uses: ", UIConstants.ITALIC_QUALIFIER_STYLER);
            styledString.append(((ExportUsesPackage) cell.getElement()).name);
            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
        }
    } else if (cell.getElement() instanceof RequiredBundle) {
        RequiredBundle rb = (RequiredBundle) cell.getElement();
        switch (cell.getColumnIndex()) {
        case 0:
            StyledString label;
            if (rb.isSatisfied())
                label = new StyledString(rb.getName(), StyledString.QUALIFIER_STYLER);
            else
                label = new StyledString(rb.getName());

            String version = rb.getAttribs().get(Constants.BUNDLE_VERSION_ATTRIBUTE);
            if (version != null)
                label.append(" " + version, StyledString.COUNTER_STYLER);

            String resolution = rb.getAttribs().get(Constants.RESOLUTION_DIRECTIVE);
            boolean optional = org.osgi.framework.Constants.RESOLUTION_OPTIONAL.equals(resolution);
            if (resolution != null)
                label.append(" <" + resolution + ">", UIConstants.ITALIC_QUALIFIER_STYLER);

            cell.setText(label.getString());
            cell.setStyleRanges(label.getStyleRanges());

            if (optional)
                cell.setImage(requiredBundleOptImg);
            else if (rb.isSatisfied())
                cell.setImage(requiredBundleSatisfiedImg);
            else
                cell.setImage(requiredBundleImg);
            break;
        case 1:
            cell.setText(formatAttribs(rb.getAttribs()));
            break;
        default:
            break;
        }
    } else if (cell.getElement() instanceof ImportPackage || cell.getElement() instanceof ExportPackage) {
        HeaderClause entry = (HeaderClause) cell.getElement();
        switch (cell.getColumnIndex()) {
        case 0:
            boolean selfImport = false;
            if (entry instanceof ImportPackage) {
                selfImport = ((ImportPackage) entry).isSelfImport();
            }

            StyledString styledString;
            if (selfImport) {
                styledString = new StyledString(entry.getName(), StyledString.QUALIFIER_STYLER);
            } else {
                styledString = new StyledString(entry.getName());
            }

            String version = entry.getAttribs().get(Constants.VERSION_ATTRIBUTE);
            if (version != null)
                styledString.append(" " + version, StyledString.COUNTER_STYLER);

            String resolution = entry.getAttribs().get(Constants.RESOLUTION_DIRECTIVE);
            boolean optional = org.osgi.framework.Constants.RESOLUTION_OPTIONAL.equals(resolution);
            if (resolution != null) {
                styledString.append(" <" + resolution + ">", UIConstants.ITALIC_QUALIFIER_STYLER);
            }

            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
            if (optional) {
                cell.setImage(packageOptImg);
            } else if (selfImport) {
                cell.setImage(packageImpExpImg);
            } else {
                cell.setImage(packageImg);
            }
            break;
        case 1:
            cell.setText(formatAttribs(entry.getAttribs()));
            break;
        default:
            break;
        }
    }
}