uk.ac.gda.common.rcp.jface.viewers.ObservableMapColumnLabelProvider.java Source code

Java tutorial

Introduction

Here is the source code for uk.ac.gda.common.rcp.jface.viewers.ObservableMapColumnLabelProvider.java

Source

/*-
 * Copyright  2013 Diamond Light Source Ltd.
 *
 * This file is part of GDA.
 *
 * GDA is free software: you can redistribute it and/or modify it under the
 * terms of the GNU General Public License version 3 as published by the Free
 * Software Foundation.
 *
 * GDA is distributed in the hope that it will be useful, but WITHOUT ANY
 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along
 * with GDA. If not, see <http://www.gnu.org/licenses/>.
 */

package uk.ac.gda.common.rcp.jface.viewers;

import org.eclipse.core.databinding.observable.map.IObservableMap;
import org.eclipse.jface.databinding.viewers.ObservableMapCellLabelProvider;
import org.eclipse.jface.viewers.ViewerCell;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.Image;

/**
 * A ObservableMapCellLabelProvider extended to have methods similar to a ColumnLabelProvider
 * 
 */
public class ObservableMapColumnLabelProvider extends ObservableMapCellLabelProvider {

    public ObservableMapColumnLabelProvider(IObservableMap attributeMap) {
        super(attributeMap);
    }

    /* (non-Javadoc)
     * @see org.eclipse.jface.viewers.CellLabelProvider#update(org.eclipse.jface.viewers.ViewerCell)
     */
    @Override
    public void update(ViewerCell cell) {
        Object element = cell.getElement();
        Object value = attributeMaps[0].get(element);
        cell.setText(getText(value));
        Image image = getImage(value);
        cell.setImage(image);
        cell.setBackground(getBackground(value));
        cell.setForeground(getForeground(value));
        cell.setFont(getFont(value));

    }

    /* (non-Javadoc)
     * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
     */
    public String getText(Object element) {
        return element == null ? "" : element.toString();
    }

    @SuppressWarnings("unused")
    public Image getImage(Object element) {
        return null;
    }

    /* (non-Javadoc)
     * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object)
     */
    @SuppressWarnings("unused")
    public Font getFont(Object element) {
        return null;
    }

    /* (non-Javadoc)
     * @see org.eclipse.jface.viewers.IColorProvider#getBackground(java.lang.Object)
     */
    @SuppressWarnings("unused")
    public Color getBackground(Object element) {
        return null;
    }

    /* (non-Javadoc)
     * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
     */
    @SuppressWarnings("unused")
    public Color getForeground(Object element) {
        return null;
    }

}