Bug 153993 [Viewers] Common Baseclass for Tree/TableEditorImpl
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ColumnViewer.java
/**
	 * Find the {@link Item} relative to the widget coordinate system.
	 * 
	 * @param point
	 *            the x/y coordinates relative to the widget
	 * @return the {@link Item} at the coordinates or <code>null</code> if no item is
	 *         located there
	 */
	protected abstract Item getItemAt(Point point);
	
	/* (non-Javadoc)
	 * @see org.eclipse.jface.viewers.StructuredViewer#getItem(int, int)
	 */
	protected Item getItem(int x, int y) {
		return getItemAt(getControl().toControl(x, y));
	}
	
	/**
	 * The table viewer implementation of this <code>Viewer</code> framework
	 * method ensures that the given label provider is an instance of either
	 * <code>ITableLabelProvider</code> or <code>ILabelProvider</code>.
	 * <p>
	 * If the label provider is an {@link ITableLabelProvider}, then it
	 * provides a separate label text and image for each column. Implementers of
	 * <code>ITableLabelProvider</code> may also implement
	 * {@link ITableColorProvider} and/or {@link ITableFontProvider} to provide
	 * colors and/or fonts.
	 * </p>
	 * <p>
	 * If the label provider is an <code>ILabelProvider</code>, then it