/*******************************************************************************
* Copyright (c) 2014 MEDEVIT.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* T. Huster - initial API and implementation
*******************************************************************************/
package at.medevit.elexis.inbox.core.ui;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.viewers.DecorationOverlayIcon;
import org.eclipse.jface.viewers.IColorProvider;
import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.jface.viewers.ViewerFilter;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import at.medevit.elexis.inbox.core.ui.filter.PathologicInboxFilter;
import at.medevit.elexis.inbox.model.InboxElement;
import at.medevit.elexis.inbox.ui.part.provider.IInboxElementUiProvider;
import ch.elexis.core.ui.icons.Images;
import ch.elexis.data.LabResult;
public class LabResultUiProvider implements IInboxElementUiProvider {
private static DecorationOverlayIcon pathologicLabImage;
private LabResultLabelProvider labelProvider;
private PathologicInboxFilter filter;
public LabResultUiProvider(){
labelProvider = new LabResultLabelProvider();
}
@Override
public ImageDescriptor getFilterImage(){
if (pathologicLabImage == null) {
initializeImages();
}
return pathologicLabImage;
}
@Override
public ViewerFilter getFilter(){
if (filter == null) {
filter = new PathologicInboxFilter();
}
return filter;
}
@Override
public LabelProvider getLabelProvider(){
return labelProvider;
}
@Override
public IColorProvider getColorProvider(){
return labelProvider;
}
@Override
public boolean isProviderFor(InboxElement element){
Object obj = element.getObject();
if (obj instanceof LabResult) {
return true;
}
return false;
}
private static void initializeImages(){
ImageDescriptor[] overlays = new ImageDescriptor[1];
overlays[0] = AbstractUIPlugin.imageDescriptorFromPlugin("at.medevit.elexis.inbox.ui", //$NON-NLS-1$
"/rsc/img/achtung_overlay.png"); //$NON-NLS-1$
pathologicLabImage =
new DecorationOverlayIcon(Images.IMG_VIEW_LABORATORY.getImage(), overlays);
}
@Override
public void doubleClicked(InboxElement element){
// TODO Auto-generated method stub
}
}