Bug 166635 [Viewers] DelegatingCellLabelProvider breaks OwnerDrawLabelProvider
OwnerDrawLabelProviders are now being wrapped in DelegatingCellLabelProviders so the event handling code fails as we can no longer access the label provider CellLabelProvider provider = viewer .getViewerColumn(event.index).getLabelProvider(); Object element = event.item.getData(); if (provider instanceof OwnerDrawLabelProvider) ((OwnerDrawLabelProvider) provider).measure(event, element);
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java
*/
	public final void setEditingSupport(EditingSupport editingSupport) {
		this.editingSupport = editingSupport;
	}
	/**
	 * 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}
	 */
	void refresh(ViewerCell cell) {
		getLabelProvider().update(cell);
	}
	/**
	 * Disposes of the label provider (if set), deregisters the listener and
	 * nulls the references to the label provider and editing support. This
	 * method is called when the underlying widget is disposed. Subclasses may
	 * extend but must call the super implementation.
	 */
	protected void handleDispose() {
		CellLabelProvider clp = labelProvider;
		setLabelProvider(null, false);
		clp.dispose();
		editingSupport = null;
		listener = null;
	}
}