Bug 126874 [Viewers] Apidoc for setting ITableColorProvider missing
I wanted to add some color to my table. First i found out about ITableColorProvider, but didnt know where to register it. After digging into the eclipse source code, i found out that org.eclipse.jface.viewers.TableViewer has a method named setLabelProvider with one argument IBaseLabelProvider. In the code, but not the javadoc, it says that you can also register ITableFontProvider and ITableColorProvider with it, assuming the instance implements these types, too. Please consider documentating this feature in the corresponding javadoc, as its part of the methods functionality and contract.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TreeViewer.java
if (index < tree.getItemCount()) {
				updateItem(tree.getItem(index), element);
			}
		} else {
			Widget[] parentItems = findItems(parent);
			for (int i = 0; i < parentItems.length; i++) {
				TreeItem parentItem = (TreeItem) parentItems[i];
				if (index < parentItem.getItemCount()) {
					updateItem(parentItem.getItem(index), element);
				}
			}			
		}
	}
	
    public boolean isExpandable(Object element) {
    	if (getContentProvider() instanceof ILazyTreeContentProvider) {
    		TreeItem treeItem = (TreeItem) internalExpand(element, false);
    		if (treeItem == null) {
    			return false;
    		}
    		virtualMaterializeItem(treeItem);
    		return treeItem.getItemCount() > 0;
    	}
    	return super.isExpandable(element);
    }
    protected Object getParentElement(Object element) {
    	if(!(element instanceof TreePath) && (getContentProvider() instanceof ILazyTreeContentProvider)) {
    		ILazyTreeContentProvider lazyTreeContentProvider = (ILazyTreeContentProvider) getContentProvider();
    		return lazyTreeContentProvider.getParent(element);
    	}