1 /**********************************************************************
2 * Copyright (c) 2003 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Common Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/cpl-v10.html
9 * IBM - Initial API and implementation
10 **********************************************************************/
11 package net.sourceforge.phpdt.httpquery.preferences;
13 import net.sourceforge.phpdt.httpquery.config.IConfiguration;
15 import org.eclipse.jface.viewers.ILabelProviderListener;
16 import org.eclipse.jface.viewers.ITableLabelProvider;
17 import org.eclipse.swt.graphics.Image;
20 * Configuration table label provider.
22 public class ConfigurationTableLabelProvider implements ITableLabelProvider {
24 * ConfigurationTableLabelProvider constructor comment.
26 public ConfigurationTableLabelProvider() {
31 * Adds a listener to this label provider. Has no effect if an identical listener is already registered.
33 * Label provider listeners are informed about state changes that affect the rendering of the viewer that uses this label
38 * a label provider listener
40 public void addListener(ILabelProviderListener listener) {
44 * Disposes of this label provider. When a label provider is attached to a viewer, the viewer will automatically call this method
45 * when the viewer is being closed. When label providers are used outside of the context of a viewer, it is the client's
46 * responsibility to ensure that this method is called when the provider is no longer needed.
48 public void dispose() {
52 * Returns the label image for the given column of the given element.
55 * the object representing the entire row, or <code>null</code> indicating that no input object is set in the viewer
57 * the zero-based index of the column in which the label appears
59 public Image getColumnImage(Object element, int columnIndex) {
64 * Returns the label text for the given column of the given element.
67 * the object representing the entire row, or <code>null</code> indicating that no input object is set in the viewer
69 * the zero-based index of the column in which the label appears
71 public String getColumnText(Object element, int columnIndex) {
72 IConfiguration configuration = (IConfiguration) element;
73 if (columnIndex == 0) {
74 return configuration.getName();
75 } else if (columnIndex == 1)
76 return configuration.getType();
77 // else if (columnIndex == 2)
78 // return configuration.getUser();
79 else if (columnIndex == 2)
80 return configuration.getURL();
85 protected String notNull(String s) {
93 * Returns whether the label would be affected by a change to the given property of the given element. This can be used to
94 * optimize a non-structural viewer update. If the property mentioned in the update does not affect the label, then the viewer
95 * need not update the label.
101 * @return <code>true</code> if the label would be affected, and <code>false</code> if it would be unaffected
103 public boolean isLabelProperty(Object element, String property) {
108 * Removes a listener to this label provider. Has no affect if an identical listener is not registered.
111 * a label provider listener
113 public void removeListener(ILabelProviderListener listener) {