package org.fipro.eclipse.migration.ui.view.overview;
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Path;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.jface.resource.LocalResourceManager;
import org.eclipse.jface.viewers.StyledCellLabelProvider;
import org.eclipse.jface.viewers.ViewerCell;
import org.eclipse.swt.graphics.Image;
import org.fipro.eclipse.migration.model.Person;
import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkUtil;
public class MarriedLabelProvider extends StyledCellLabelProvider {
private final Image uncheckedImg;
private final Image checkedImg;
public MarriedLabelProvider() {
LocalResourceManager resourceMgr = new LocalResourceManager(JFaceResources.getResources());
Bundle bundle = FrameworkUtil.getBundle(getClass());
URL checked = FileLocator.find(bundle, new Path("icons/checked.gif"), null);
URL unchecked = FileLocator.find(bundle, new Path("icons/unchecked.gif"), null);
this.checkedImg = resourceMgr.createImage(ImageDescriptor.createFromURL(checked));
this.uncheckedImg = resourceMgr.createImage(ImageDescriptor.createFromURL(unchecked));
}
@Override
public void update(ViewerCell cell) {
if (((Person)cell.getElement()).isMarried()) {
cell.setImage(checkedImg);
}
else {
cell.setImage(uncheckedImg);
}
}
}