Bug 158778 [Viewers] request for remove(parent, index) API on tree viewer
3.3 It would be helpful to have a 'remove(Object parent, int index)' method on the tree viewer to complement that 'replace(...)' and 'setChildCount(...)' APIs. The debug platform requires such a method to implement filtering in virtual tree views. Rather than performing a 'replace/remove' based on elements, the content provider can make one atomic call to remove an element at a specific index.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
Widget o = internalFindItem(items[i], element);
				if (o != null) {
					return o;
				}
			}
		}
		return null;
	}
	/**
	 * Copies the attributes of the given element into the given SWT item.
	 * 
	 * @param item
	 *            the SWT item
	 * @param element
	 *            the element
	 */
	protected abstract void doUpdateItem(Item item, Object element);
	
	protected void doUpdateItem(Widget widget, Object element, boolean fullMap) {
		if (widget instanceof Item) {
			Item item = (Item) widget;
			
			if (fullMap) {
				associate(element, item);
			} else {
				Object data = item.getData();
				if (data != null) {
					unmapElement(data, item);
				}
				item.setData(element);