diff -r f65f740e69f9 -r 8e12a575a9b5 sysperfana/memspyext/com.nokia.s60tools.swmtanalyser/src/com/nokia/s60tools/swmtanalyser/editors/IssuesTreeLabelProvider.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysperfana/memspyext/com.nokia.s60tools.swmtanalyser/src/com/nokia/s60tools/swmtanalyser/editors/IssuesTreeLabelProvider.java Wed Apr 21 20:01:08 2010 +0300 @@ -0,0 +1,168 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +package com.nokia.s60tools.swmtanalyser.editors; + +import org.eclipse.jface.viewers.ILabelProviderListener; +import org.eclipse.jface.viewers.ITableColorProvider; +import org.eclipse.jface.viewers.ITableFontProvider; +import org.eclipse.jface.viewers.ITableLabelProvider; +import org.eclipse.jface.viewers.LabelProvider; +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Font; +import org.eclipse.swt.graphics.Image; +import org.eclipse.swt.widgets.Display; + +import com.nokia.s60tools.swmtanalyser.analysers.AnalyserConstants; +import com.nokia.s60tools.swmtanalyser.analysers.ResultElements; +import com.nokia.s60tools.swmtanalyser.analysers.ResultsParentNodes; + +/** + * LableProvider for the tree viewer in the Analysis tab + * + */ +public class IssuesTreeLabelProvider extends LabelProvider implements ITableLabelProvider, ITableColorProvider, ITableFontProvider { + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int) + */ + public Image getColumnImage(Object arg0, int arg1) { + return null; + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int) + */ + public String getColumnText(Object element, int column_index) { + + if(column_index == 1) + { + if(element instanceof ResultsParentNodes) + { + return ((ResultsParentNodes)element).toString(); + } + else if(element instanceof ResultElements) + { + return ((ResultElements)element).getItemName(); + } + } + else if(column_index == 2) + { + if(element instanceof ResultElements) + return ((ResultElements)element).getEvent(); + } + else if(column_index == 3) + { + if(element instanceof ResultElements) + return ((ResultElements)element).getDelta(); + } + else if(column_index == 4) + { + if(element instanceof ResultElements) + return ((ResultElements)element).getPriority().name(); + } + //For internal testing. + /*else if(arg1 == 4) + { + if(arg0 instanceof ResultElements) + return ((ResultElements)arg0).getGrowing_factor()+""; + }*/ + return null; + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.BaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener) + */ + public void addListener(ILabelProviderListener arg0) { + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.BaseLabelProvider#dispose() + */ + public void dispose() { + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.BaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String) + */ + public boolean isLabelProperty(Object arg0, String arg1) { + return false; + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.BaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener) + */ + public void removeListener(ILabelProviderListener arg0) { + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ITableColorProvider#getBackground(java.lang.Object, int) + */ + public Color getBackground(Object element, int columnIndex) { + + if(element instanceof ResultElements ) + { + ResultElements item = (ResultElements)element; + + if(columnIndex == 4) + { + Color background_color = null; + + switch (item.getPriority()) { + case CRITICAL: + background_color = AnalyserConstants.COLOR_SEVERITY_CRITICAL; + break; + case HIGH: + background_color = AnalyserConstants.COLOR_SEVERITY_HIGH; + break; + case NORMAL: + background_color = AnalyserConstants.COLOR_SEVERITY_NORMAL; + break; + + default: + break; + } + return background_color; + } + else if(columnIndex == 0) + { + return item.getColor(); + } + } + return null; + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ITableColorProvider#getForeground(java.lang.Object, int) + */ + public Color getForeground(Object element, int columnIndex) { + return null; + } + + /* (non-Javadoc) + * @see org.eclipse.jface.viewers.ITableFontProvider#getFont(java.lang.Object, int) + */ + public Font getFont(Object arg0, int arg1) { + if(arg0 instanceof ResultsParentNodes) + { + Font f = Display.getCurrent().getSystemFont(); + return new Font(Display.getCurrent(), f.getFontData()[0].getName(), 8, SWT.BOLD); + } + return null; + } + +}