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
tpvs.sort(this, path, result);
		} else if (comparator != null) {
			
			result = (Object[]) result.clone();
			comparator.sort(this, result);
		}
		return result;
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.jface.viewers.StructuredViewer#getFilteredChildren(java.lang.Object)
	 */
	protected Object[] getFilteredChildren(Object parentElementOrTreePath) {
		Object[] result = getRawChildren(parentElementOrTreePath);
		ViewerFilter[] filters = getFilters();
		for (int i = 0; i < filters.length; i++) {
			ViewerFilter filter = filters[i];
			result = filter.filter(this, parentElementOrTreePath, result);
		}
		return result;
	}
	/**
	 * Adds the given child element to this viewer as a child of the given
	 * parent element. If this viewer does not have a sorter, the element is
	 * added at the end of the parent's list of children; otherwise, the element
	 * is inserted at the appropriate position.
	 * <p>
	 * This method should be called (by the content provider) when a single
	 * element has been added to the model, in order to cause the viewer to