at.medevit.elexis.inbox.core.ui.LabResultUiProvider.java Source code

Java tutorial

Introduction

Here is the source code for at.medevit.elexis.inbox.core.ui.LabResultUiProvider.java

Source

/*******************************************************************************
 * 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

    }
}