Bug 92851 [Viewers] [api] protected field StructuredViewer.colorAndFontCollector
3.1 HEAD colorAndFontCollector protected ColorAndFontCollector colorAndFontCollector This read-write field was added as API in the 3.1 cycle. Exposing fields as API (other than public static final ones) is bad practice because a client can change the field and there's nothing the class can do to prevent or even track that change. All access to read-write field should be through accessor methods, including access from subclasses. Also, this field is missing an @since 3.1 tag.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TableTreeViewer.java
public Object[] getColumnProperties() {
        return tableViewerImpl.getColumnProperties();
    }
    /* (non-Javadoc)
     * Method declared on Viewer.
     */
    public Control getControl() {
        return tableTree;
    }
    /**
     * Returns the element with the given index from this viewer.
     * Returns <code>null</code> if the index is out of range.
     * <p>
     * This method is internal to the framework.
     * </p>
     *
     * @param index the zero-based index
     * @return the element at the given index, or <code>null</code> if the
     *   index is out of range
     */
    public Object getElementAt(int index) {
        
        TableTreeItem i = tableTree.getItems()[index];
        if (i != null)
            return i.getData();
        return null;
    }
    /* (non-Javadoc)
     * Method declared on AbstractTreeViewer.
     */