Bug 167323 [Viewers]Open AbstractTreeViewer for external widget implementors
As reported by Ross Camara AbstractTreeViewer would work for nebula if we would open the API a bit. Boris and I decided that we will do this in 2 steps: 1. open the API 2. moving the Virtual-Support bits from TreeViewer to AbstractTreeViewer when the nebula grid provides virtual support.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
refresh(element);
							newItem = false;
						}
						lastInsertion++;
					}
					
					if (lastInsertion == items.length) {
						index = -1;
					} else {
						index = lastInsertion + i; 
													
					}
				}
			}
			if (newItem) {
				createTreeItem(widget, element, index);
			}
		}
	}
	/**
	 * See if element is the data of one of the elements in items.
	 * 
	 * @param items
	 * @param element
	 * @return <code>true</code> if the element matches.
	 */
	private boolean itemExists(Item[] items, Object element) {
		if (usingElementMap()) {
			Widget[] existingItems = findItems(element);