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

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

Introduction

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

Prototype

public void setForeground(Color foreground) 

Source Link

Document

Set the foreground color of the cell.

Usage

From source file:rabbit.ui.internal.viewers.TreePathDurationLabelProvider.java

License:Apache License

@Override
public void update(ViewerCell cell) {
    TreePath path = cell.getViewerRow().getTreePath();
    String text = null;/*from w w w  .  java2s.  c om*/
    if (getValueProvider().shouldPaint(cell.getElement())) {
        text = DurationFormat.format(getValueProvider().getValue(path));
    }
    cell.setText(text);

    if (colorProvider != null) { // TOOD test
        cell.setBackground(colorProvider.getBackground(cell.getElement()));
        cell.setForeground(colorProvider.getForeground(cell.getElement()));
    }
}

From source file:rabbit.ui.internal.viewers.TreePathIntLabelProvider.java

License:Apache License

@Override
public void update(ViewerCell cell) {
    TreePath path = cell.getViewerRow().getTreePath();
    String text = null;//from   w w w  . ja v a  2  s  . com
    if (getValueProvider().shouldPaint(cell.getElement())) {
        text = String.valueOf(getValueProvider().getValue(path));
    }
    cell.setText(text);

    if (colorProvider != null) {
        cell.setBackground(colorProvider.getBackground(cell.getElement()));
        cell.setForeground(colorProvider.getForeground(cell.getElement()));
    }
}

From source file:ralfstx.mylyn.bugview.internal.TaskLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();
    int columnIndex = cell.getColumnIndex();
    cell.setText(getColumnText(element, columnIndex));
    cell.setImage(getColumnImage(element, columnIndex));
    cell.setBackground(getBackground(element));
    cell.setForeground(getForeground(element));
    cell.setFont(getFont(element));/*from w  w w.ja  v a2s .com*/
}

From source file:uk.ac.gda.client.plotting.ScanDataPlotterComposite.java

License:Open Source License

private void createDataTree(final SashForm parent) {
    Composite dataTreeParent = new Composite(parent, SWT.None);
    dataTreeParent.setLayout(UIHelper.createGridLayoutWithNoMargin(1, false));
    CoolBar composite = new CoolBar(dataTreeParent, SWT.NONE);
    composite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    CoolItem toolbarCoolItem = new CoolItem(composite, SWT.NONE);
    ToolBar tb = new ToolBar(composite, SWT.FLAT);

    ToolItem backToolItem = new ToolItem(tb, SWT.NONE);
    backToolItem.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_TOOL_BACK));
    backToolItem.setToolTipText("Collapse all");

    ToolItem forwardToolItem = new ToolItem(tb, SWT.NONE);
    forwardToolItem/*from w  w  w.j av  a2s.  co  m*/
            .setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_TOOL_FORWARD));
    forwardToolItem.setToolTipText("Expand all");

    ToolItem highlightOnSelectionToolItem = new ToolItem(tb, SWT.CHECK);
    highlightOnSelectionToolItem
            .setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_ELCL_SYNCED));
    highlightOnSelectionToolItem.setToolTipText("Highlight selected line trace");

    ToolItem clearPlotOnStartOfScanToolItem = new ToolItem(tb, SWT.CHECK);
    clearPlotOnStartOfScanToolItem
            .setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_ETOOL_CLEAR));
    clearPlotOnStartOfScanToolItem.setSelection(clearPlotOnStartOfScan);
    clearPlotOnStartOfScanToolItem.setToolTipText("Clear plot on start of scan");

    Point p = tb.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    tb.setSize(p);
    Point p2 = toolbarCoolItem.computeSize(p.x, p.y);
    toolbarCoolItem.setControl(tb);
    toolbarCoolItem.setSize(p2);

    backToolItem.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event event) {
            dataTreeViewer.collapseAll();
        }
    });

    forwardToolItem.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event event) {
            dataTreeViewer.expandAll();
        }
    });

    highlightOnSelectionToolItem.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event event) {
            if (!((ToolItem) event.widget).getSelection()) {
                selectedList.clear();
                if (selectionBinding != null) {
                    dataBindingCtx.removeBinding(selectionBinding);
                    selectionBinding.dispose();
                    selectionBinding = null;
                }
            } else {
                selectionBinding = dataBindingCtx
                        .bindList(ViewersObservables.observeMultiSelection(dataTreeViewer), selectedList);
            }
        }
    });

    clearPlotOnStartOfScanToolItem.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event event) {
            clearPlotOnStartOfScan = ((ToolItem) event.widget).getSelection();
        }
    });

    dataTreeViewer = new DataPlotterCheckedTreeViewer(dataTreeParent, SWT.MULTI);
    dataTreeViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    dataTreeViewer.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            Object element = cell.getElement();
            cell.setText(element.toString());
            if (element instanceof LineTraceProviderNode) {
                LineTraceProviderNode item = ((LineTraceProviderNode) element);
                String color = item.getTraceStyle().getColorHexValue();
                if (color != null) {
                    cell.setForeground(getTraceColor(color));
                }
                return;
            }
        }
    });
    dataTreeViewer.setContentProvider(new ObservableListTreeContentProvider(dataObservableFactory, null));
    dataTreeViewer.setInput(rootDataNode);
    dataTreeViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            Node dataNode = (Node) event.getElement();
            updateSelection(dataNode, event.getChecked());
        }

        private void updateSelection(Node dataNode, boolean checked) {
            if (dataNode.getChildren() == null) {
                updateDataItemNode(dataNode, checked);
            } else {
                for (Object childDataNode : dataNode.getChildren()) {
                    updateSelection((Node) childDataNode, checked);
                }
            }
        }
    });

    selectedList.addListChangeListener(new IListChangeListener() {
        @Override
        public void handleListChange(ListChangeEvent event) {
            event.diff.accept(new ListDiffVisitor() {
                @Override
                public void handleRemove(int index, Object element) {
                    updateSelection(element, false);
                }

                @Override
                public void handleAdd(int index, Object element) {
                    updateSelection(element, true);
                }

                private void updateSelection(Object element, boolean highlighted) {
                    if (element instanceof LineTraceProviderNode && dataTreeViewer.getChecked(element)) {
                        LineTraceProviderNode lineTraceProvider = (LineTraceProviderNode) element;
                        lineTraceProvider.setHighlighted(highlighted);
                        removeTrace(lineTraceProvider.getIdentifier());
                        addTrace(lineTraceProvider);
                    }
                }
            });
        }
    });
    registerViewerContextMenu();
}

From source file:uk.ac.gda.common.rcp.jface.viewers.ObservableMapColumnLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();
    Object value = attributeMaps[0].get(element);
    cell.setText(getText(value));/*w w  w.  ja v a 2 s. c  o  m*/
    Image image = getImage(value);
    cell.setImage(image);
    cell.setBackground(getBackground(value));
    cell.setForeground(getForeground(value));
    cell.setFont(getFont(value));

}

From source file:uk.ac.stfc.isis.ibex.ui.configserver.editing.blocks.BlockRowCellDecorator.java

License:Open Source License

@Override
public void applyDecoration(ViewerCell cell) {
    if (!isEditable(cell)) {
        cell.setForeground(READONLY_COLOR);
        italicise(cell);//from w w w.j a v  a  2  s.co m
    }
}

From source file:uk.ac.stfc.isis.ibex.ui.ioccontrol.StateLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    super.update(cell);

    IocState state = (IocState) cell.getElement();
    boolean isRunning = state != null && state.getIsRunning();
    cell.setText(stringFromRow(state));// w w w .j  a v  a2 s  .c  om
    cell.setForeground(isRunning ? COLOR_RUNNING : COLOR_STOPPED);
}

From source file:v9t9.gui.client.swt.shells.modules.ModuleSelector.java

License:Open Source License

/**
 * @param moduleManager/*from  w w  w .  jav  a2s . c o  m*/
 */
protected TreeViewer createTable() {
    final TreeViewer viewer = new TreeViewer(this, SWT.READ_ONLY | SWT.BORDER | SWT.FULL_SELECTION);

    moduleImageResizer = new ILazyImageAdjuster() {

        @Override
        public Image adjustImage(Object element, URI imageURI, Image image) {
            //final boolean moduleLoadable = module == null || isModuleLoadable(module);
            //final String imageKey = imageURI.toString() + (moduleLoadable ? "" : "?grey");

            Rectangle bounds = image.getBounds();
            int sz = Math.max(bounds.width, bounds.height);

            if (sz > MAX) {
                sz = MAX;

                Image scaled = ImageUtils.scaleImage(getDisplay(), image, new Point(MAX, MAX), true, true);
                image.dispose();

                //               if (!moduleLoadable) {
                //                  Image grey = ImageUtils.convertToGreyscale(display, scaled);
                //                  scaled.dispose();
                //                  scaled = grey;
                //               }

                image = scaled;
            }
            return image;
        }
    };

    try {
        builtinImagesURI = machine.getRomPathFileLocator()
                .resolveInsideURI(machine.getModel().getDataURL().toURI(), "images/");
        logger.info("builtinImagesURI = " + builtinImagesURI);
    } catch (URISyntaxException e3) {
        logger.error("Failed to load stock module image", e3);
    }

    stockModuleImage = loadStockImage("stock_module_missing.png");

    lazyImageLoader = new LazyImageLoader(viewer, executor, stockModuleImage);

    modulesListImage = EmulatorGuiData.loadImage(getDisplay(), "icons/module_list.png");
    noModuleImage = ImageUtils.scaleImage(getDisplay(),
            EmulatorGuiData.loadImage(getDisplay(), "icons/stock_no_module.png"), new Point(MAX, MAX));

    viewer.setUseHashlookup(true);
    viewer.setComparer(new IElementComparer() {

        @Override
        public int hashCode(Object element) {
            return element.hashCode();
        }

        @Override
        public boolean equals(Object a, Object b) {
            return a == b || a.equals(b);
        }
    });

    Tree tree = viewer.getTree();
    tree.setHeaderVisible(true);
    tree.setLinesVisible(true);

    GridDataFactory.fillDefaults().grab(true, true).applyTo(tree);

    FontDescriptor desc = FontUtils
            .getFontDescriptor(JFaceResources.getFontRegistry().getBold(JFaceResources.DIALOG_FONT));
    tableFont = desc.createFont(getDisplay());
    tree.setFont(tableFont);

    nameColumn = new TreeColumn(tree, SWT.LEFT);
    nameColumn.setText("Name");

    final ModuleContentProvider contentProvider = new ModuleContentProvider();
    viewer.setContentProvider(contentProvider);

    CellLabelProvider cellLabelProvider = new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() instanceof URI) {
                URI uri = (URI) cell.getElement();
                String text = machine.getRomPathFileLocator().splitFileName(uri).second;

                cell.setText(text);
                cell.setImage(getModuleListImage());
            } else if (cell.getElement() instanceof IModule) {
                IModule module = (IModule) cell.getElement();
                cell.setText(module.getName());
                ModuleInfo info = module.getInfo();
                cell.setForeground(isModuleLoadable(module) ? null
                        : viewer.getControl().getDisplay().getSystemColor(SWT.COLOR_TITLE_INACTIVE_FOREGROUND));
                cell.setImage(getOrLoadModuleImage(module, module, info != null ? info.getImagePath() : null));
            } else {
                cell.setText(String.valueOf(cell.getElement()));
                cell.setImage(getNoModuleImage());
            }
        }
    };

    viewer.setLabelProvider(cellLabelProvider);

    viewer.setColumnProperties(NAME_PROPERTY_ARRAY);

    viewer.setComparator(new ViewerComparator() {
        /* (non-Javadoc)
         * @see org.eclipse.jface.viewers.ViewerComparator#isSorterProperty(java.lang.Object, java.lang.String)
         */
        @Override
        public boolean isSorterProperty(Object element, String property) {
            return "name".equals(property);
        }

        @Override
        public int compare(Viewer viewer, Object e1, Object e2) {
            if (!sortModules)
                return 0;

            if (e1 instanceof IModule && e2 instanceof IModule) {
                IModule mod1 = (IModule) e1;
                IModule mod2 = (IModule) e2;
                boolean l1 = isModuleLoadable(mod1);
                boolean l2 = isModuleLoadable(mod2);
                if (l1 == l2)
                    return sortDirection * mod1.getName().toLowerCase().compareTo(mod2.getName().toLowerCase());
                else if (l1)
                    return -1;
                else
                    return 1;
            } else if (e1 instanceof IModule) {
                return 1;
            }
            /* else if (e2 instanceof IModule) */ {
                return -1;
            }
        }
    });

    selectedModule = null;

    addIterativeSearch(viewer, tree);

    sortModules = dialogSettings.getBoolean(SORT_ENABLED);
    sortDirection = dialogSettings.getInt(SORT_DIRECTION);

    moduleMap = new LinkedHashMap<URI, Collection<IModule>>();

    revertModules();
    viewer.setInput(new ModuleInput("No module", moduleMap));
    viewer.expandToLevel(3);

    viewer.setSelection(new StructuredSelection(moduleManager.getLoadedModules()), true);

    tree.addKeyListener(new KeyAdapter() {
        /* (non-Javadoc)
         * @see org.eclipse.swt.events.KeyAdapter#keyPressed(org.eclipse.swt.events.KeyEvent)
         */
        @Override
        public void keyPressed(KeyEvent e) {
            if (e.keyCode == '\r' || e.keyCode == '\n') {
                switchModule(false);
                e.doit = false;
            } else if (e.keyCode == SWT.ARROW_LEFT) {
                if (selectedModule != null) {
                    viewer.setSelection(new StructuredSelection(contentProvider.getParent(selectedModule)));
                }
            }
        }
    });

    TreeViewerColumn nameViewerColumn = new TreeViewerColumn(viewer, nameColumn);
    nameViewerColumn.setLabelProvider(cellLabelProvider);

    editingSupport = new ModuleNameEditingSupport(viewer, dirtyModuleLists);
    nameViewerColumn.setEditingSupport(editingSupport);

    addDisposeListener(new DisposeListener() {

        @Override
        public void widgetDisposed(DisposeEvent e) {
            for (Image image : stockImages.values())
                image.dispose();
            stockImages.clear();
            if (modulesListImage != null)
                modulesListImage.dispose();
            if (noModuleImage != null)
                noModuleImage.dispose();

            if (tableFont != null)
                tableFont.dispose();
            /*for (Image image : loadedImages.values()) {
               image.dispose();
            }*/
        }
    });

    lazyImageLoader.addListener(new ILazyImageLoadedListener() {

        @Override
        public void imageLoaded(Object element, URI imageURI, Image image) {
            if (element != null)
                viewerUpdater.post(element);
        }
    });

    return viewer;
}