001: /*******************************************************************************
002: * Copyright (c) 2006, 2007 IBM Corporation and others.
003: * All rights reserved. This program and the accompanying materials
004: * are made available under the terms of the Eclipse Public License v1.0
005: * which accompanies this distribution, and is available at
006: * http://www.eclipse.org/legal/epl-v10.html
007: *
008: * Contributors:
009: * IBM Corporation - initial API and implementation
010: * Tom Schindl <tom.schindl@bestsolution.at> - initial API and implementation
011: *******************************************************************************/package org.eclipse.jface.viewers;
012:
013: /**
014: * TreeViewerLabelProvider is the ViewerLabelProvider that handles TreePaths.
015: *
016: * @since 3.3
017: *
018: */
019: public class TreeColumnViewerLabelProvider extends
020: TableColumnViewerLabelProvider {
021: private ITreePathLabelProvider treePathProvider = new ITreePathLabelProvider() {
022: /*
023: * (non-Javadoc)
024: *
025: * @see org.eclipse.jface.viewers.ITreePathLabelProvider#updateLabel(org.eclipse.jface.viewers.ViewerLabel,
026: * org.eclipse.jface.viewers.TreePath)
027: */
028: public void updateLabel(ViewerLabel label, TreePath elementPath) {
029: // Do nothing by default
030:
031: }
032:
033: /*
034: * (non-Javadoc)
035: *
036: * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
037: */
038: public void dispose() {
039: // Do nothing by default
040:
041: }
042:
043: /*
044: * (non-Javadoc)
045: *
046: * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
047: */
048: public void addListener(ILabelProviderListener listener) {
049: // Do nothing by default
050:
051: }
052:
053: /*
054: * (non-Javadoc)
055: *
056: * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
057: */
058: public void removeListener(ILabelProviderListener listener) {
059: // Do nothing by default
060:
061: }
062:
063: /* (non-Javadoc)
064: * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
065: */
066: public boolean isLabelProperty(Object element, String property) {
067: return false;
068: }
069:
070: };
071:
072: /**
073: * Create a new instance of the receiver with the supplied labelProvider.
074: *
075: * @param labelProvider
076: */
077: public TreeColumnViewerLabelProvider(
078: IBaseLabelProvider labelProvider) {
079: super (labelProvider);
080: }
081:
082: /**
083: * Update the label for the element with TreePath.
084: *
085: * @param label
086: * @param elementPath
087: */
088: public void updateLabel(ViewerLabel label, TreePath elementPath) {
089: treePathProvider.updateLabel(label, elementPath);
090:
091: }
092:
093: /*
094: * (non-Javadoc)
095: *
096: * @see org.eclipse.jface.viewers.ViewerLabelProvider#setProviders(java.lang.Object)
097: */
098: public void setProviders(Object provider) {
099: super .setProviders(provider);
100: if (provider instanceof ITreePathLabelProvider)
101: treePathProvider = (ITreePathLabelProvider) provider;
102: }
103:
104: /**
105: * Return the ITreePathLabelProvider for the receiver.
106: *
107: * @return Returns the treePathProvider.
108: */
109: public ITreePathLabelProvider getTreePathProvider() {
110: return treePathProvider;
111: }
112:
113: }
|