Bug 171415 [Viewers] Table viewer needs to clear label, image when items are reused
If an item is reused for a different element on a refresh, the table viewer needs to clear the label and image from the item being reused. This is necessary to communicate to the label provider that a new label is needed (i.e. the label provider may defer providing a label if decorators are not ready). This is what the tree viewer does. To see the problem, open the Java Browsing perspective and select a Java project. Then click between different packages. Notice that some of the labels in the Types list take a while to update. Opening one of these reveals that the label is showing the wrong text.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTableViewer.java
/**
	 * Returns the number of items contained in the receiver.
	 * 
	 * @return the number of items
	 * 
	 * @since 3.3
	 */
	protected abstract int doGetItemCount();
	/**
	 * Sets the number of items contained in the receiver.
	 * 
	 * @param count
	 *            the number of items
	 * 
	 * @since 3.3
	 */
	protected abstract void doSetItemCount(int count);
	/**
	 * Returns a (possibly empty) array of TableItems which are the items in the
	 * receiver.
	 * 
	 * @return the items in the receiver
	 * 
	 * @since 3.3
	 */
	protected abstract Item[] doGetItems();
	/**
	 * Returns the column at the given, zero-relative index in the receiver.
	 * Throws an exception if the index is out of range. Columns are returned in
	 * the order that they were created. If no TableColumns were created by the