/******************************************************************************* * (C) Copyright IBM Corp. 2010 * 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: * Thavidu Ranatunga (IBM) - Initial implementation. *******************************************************************************/ package org.eclipse.linuxtools.internal.perf.ui; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.linuxtools.internal.perf.PerfPlugin; import org.eclipse.linuxtools.internal.perf.model.PMDso; import org.eclipse.linuxtools.internal.perf.model.PMEvent; import org.eclipse.linuxtools.internal.perf.model.PMFile; import org.eclipse.linuxtools.internal.perf.model.PMLineRef; import org.eclipse.linuxtools.internal.perf.model.PMSymbol; import org.eclipse.linuxtools.internal.perf.model.TreeParent; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.ISharedImages; import org.eclipse.ui.PlatformUI; public class PerfViewLabelProvider extends LabelProvider { @Override public String getText(Object obj) { return obj.toString(); } @Override public Image getImage(Object obj) { String imageKey; if (obj instanceof PMDso) { imageKey = "icons/dso.gif"; //$NON-NLS-1$ } else if (obj instanceof PMSymbol) { imageKey = "icons/symbol.gif"; //$NON-NLS-1$ if (((PMSymbol)obj).conflicted()) return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_ERROR_TSK); } else if (obj instanceof PMLineRef) { imageKey = "icons/line.gif"; //$NON-NLS-1$ } else if (obj instanceof PMEvent) { imageKey = "icons/event.gif"; //$NON-NLS-1$ } else if (obj instanceof PMFile) { imageKey = "icons/file.gif"; //$NON-NLS-1$ if (((PMFile)obj).getName().equals(PerfPlugin.STRINGS_MultipleFilesForSymbol)) { return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_ERROR_TSK); } } else if (obj instanceof TreeParent) { imageKey = ISharedImages.IMG_OBJ_FOLDER; return PlatformUI.getWorkbench().getSharedImages().getImage(imageKey); } else { imageKey = ISharedImages.IMG_OBJ_ELEMENT; return PlatformUI.getWorkbench().getSharedImages().getImage(imageKey); } return PerfPlugin.getImageDescriptor(imageKey).createImage(); } }