Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java')
-rw-r--r--bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java44
1 files changed, 23 insertions, 21 deletions
diff --git a/bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java b/bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java
index dbe10ac3846..0b790cb0a1e 100644
--- a/bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java
+++ b/bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java
@@ -25,13 +25,15 @@ import org.eclipse.swt.widgets.Widget;
* providers and editing support can be configured for each column separately.
* Concrete subclasses of {@link ColumnViewer} should implement a matching
* concrete subclass of {@link ViewerColumn}.
- *
+ * @param <E> Type of an element of the model
+ * @param <I> Type of the input
+ *
* @since 3.3
- *
+ *
*/
-public abstract class ViewerColumn {
+public abstract class ViewerColumn<E,I> {
- private CellLabelProvider labelProvider;
+ private CellLabelProvider<E,I> labelProvider;
static String COLUMN_VIEWER_KEY = Policy.JFACE + ".columnViewer";//$NON-NLS-1$
@@ -41,18 +43,18 @@ public abstract class ViewerColumn {
private boolean listenerRegistered = false;
- private ColumnViewer viewer;
+ private ColumnViewer<E,I> viewer;
/**
* Create a new instance of the receiver at columnIndex.
- *
+ *
* @param viewer
* the viewer the column is part of
* @param columnOwner
* the widget owning the viewer in case the widget has no columns
* this could be the widget itself
*/
- protected ViewerColumn(final ColumnViewer viewer, Widget columnOwner) {
+ protected ViewerColumn(final ColumnViewer<E,I> viewer, Widget columnOwner) {
this.viewer = viewer;
columnOwner.setData(ViewerColumn.COLUMN_VIEWER_KEY, this);
this.listener = new ILabelProviderListener() {
@@ -71,21 +73,21 @@ public abstract class ViewerColumn {
/**
* Return the label provider for the receiver.
- *
+ *
* @return ViewerLabelProvider
*/
- /* package */CellLabelProvider getLabelProvider() {
+ /* package */CellLabelProvider<E,I> getLabelProvider() {
return labelProvider;
}
/**
* Set the label provider for the column. Subclasses may extend but must
* call the super implementation.
- *
+ *
* @param labelProvider
* the new {@link CellLabelProvider}
*/
- public void setLabelProvider(CellLabelProvider labelProvider) {
+ public void setLabelProvider(CellLabelProvider<E,I> labelProvider) {
setLabelProvider(labelProvider, true);
}
@@ -93,7 +95,7 @@ public abstract class ViewerColumn {
* @param labelProvider
* @param registerListener
*/
- /* package */void setLabelProvider(CellLabelProvider labelProvider,
+ /* package */void setLabelProvider(CellLabelProvider<E,I> labelProvider,
boolean registerListener) {
if (listenerRegistered && this.labelProvider != null) {
this.labelProvider.removeListener(listener);
@@ -114,7 +116,7 @@ public abstract class ViewerColumn {
/**
* Return the editing support for the receiver.
- *
+ *
* @return {@link EditingSupport}
*/
/* package */EditingSupport getEditingSupport() {
@@ -139,12 +141,12 @@ public abstract class ViewerColumn {
* Refresh the cell for the given columnIndex. <strong>NOTE:</strong>the
* {@link ViewerCell} provided to this method is no longer valid after this
* method returns. Do not cache the cell for future use.
- *
+ *
* @param cell
* {@link ViewerCell}
*/
- /* package */void refresh(ViewerCell cell) {
- CellLabelProvider labelProvider = getLabelProvider();
+ /* package */void refresh(ViewerCell<E> cell) {
+ CellLabelProvider<E,I> labelProvider = getLabelProvider();
if (labelProvider == null) {
Assert.isTrue(false, "Column " + cell.getColumnIndex() + //$NON-NLS-1$
" has no label provider."); //$NON-NLS-1$
@@ -160,7 +162,7 @@ public abstract class ViewerColumn {
*/
protected void handleDispose() {
boolean disposeLabelProvider = listenerRegistered;
- CellLabelProvider cellLabelProvider = labelProvider;
+ CellLabelProvider<E,I> cellLabelProvider = labelProvider;
setLabelProvider(null, false);
if (disposeLabelProvider) {
cellLabelProvider.dispose(viewer, this);
@@ -170,19 +172,19 @@ public abstract class ViewerColumn {
viewer = null;
}
- private void handleDispose(ColumnViewer viewer) {
+ private void handleDispose(ColumnViewer<E,I> viewer) {
handleDispose();
viewer.clearLegacyEditingSetup();
}
/**
* Returns the viewer of this viewer column.
- *
+ *
* @return Returns the viewer.
- *
+ *
* @since 3.4
*/
- public ColumnViewer getViewer() {
+ public ColumnViewer<E,I> getViewer() {
return viewer;
}
}

Back to the top