Bug 32254 [Viewers] AbstractTreeViewer uses HashSet to remember expansion state
I20030216 The custom hash table should be used instead. Otherwise expansion state may be lost due to a different equals implementation of the element and the IElementComparer.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
* Non-recursively tries to find the given element as a child of the given
	 * parent item.
	 * 
	 * @param parent
	 *           the parent item
	 * @param element
	 *           the element
	 * @return Widget
	 */
	private Widget internalFindChild(Item parent, Object element) {
		Item[] items = getChildren(parent);
		for (int i = 0; i < items.length; i++) {
			Item item = items[i];
			Object data = item.getData();
			if (data != null && equals(data, element))
				return item;
		}
		return null;
	}
	/**
	 * Recursively tries to find the given element.
	 * 
	 * @param parent
	 *           the parent item
	 * @param element
	 *           the element
	 * @return Widget
	 */
	private Widget internalFindItem(Item parent, Object element) {