Bug 213451 [Viewers] Visibility of OwnerDrawLabelProvider.OwnerDrawListener
1. Why is the internal class package scoped and not private 2. Why is the constructor public (at least on my eclipse install this shows up as an error because all public/protected methods have to have JavaDoc)
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/OwnerDrawLabelProvider.java
ViewerColumn column, boolean enabled) {
		if (enabled) {
			OwnerDrawListener listener = getOrCreateOwnerDrawListener(viewer);
			if (column == null) {
				listener.enabledGlobally++;
			} else {
				listener.enabledColumns.add(column);
			}
		} else {
			OwnerDrawListener listener = (OwnerDrawListener) viewer
					.getData(OWNER_DRAW_LABEL_PROVIDER_LISTENER);
			if (listener != null) {
				if (column == null) {
					listener.enabledGlobally--;
				} else {
					listener.enabledColumns.remove(column);
				}
				if (listener.enabledColumns.isEmpty()
						&& listener.enabledGlobally <= 0) {
					viewer.getControl().removeListener(SWT.MeasureItem,
							listener);
					viewer.getControl().removeListener(SWT.EraseItem, listener);
					viewer.getControl().removeListener(SWT.PaintItem, listener);
					viewer.getControl().setData(OWNER_DRAW_LABEL_PROVIDER_LISTENER, null);
				}
			}
		}
	}
}