Bug 291755 [Filters] Filters implementation and API cleanup
This bug is raised to track reviewing and cleanup of filters API and implementation.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/ResourceFilterGroup.java
return (FilterCopy[]) children.toArray(new FilterCopy[0]);
		}
		return null;
	}
	protected void initializeChildren() {
		if (children == null) {
			if (getChildrenLimit() > 0) {
				children = new LinkedList();
				IResourceFilter[] filters = CompoundResourceFilter.unserialize(
						getProject(), getArguments());
				for (int i = 0; i < filters.length; i++) {
					FilterCopy child = new FilterCopy(filters[i]);
					child.parent = this;
					children.add(child);
				}
			}
		}
	}
	public void addChild(FilterCopy child) {
		initializeChildren();
		if (child.getParent() != null)
			child.getParent().removeChild(child);
		children.add(child);
		child.parent = this;
		serializeChildren();
	}
	public void removeChild(FilterCopy child) {
		initializeChildren();
		children.remove(child);
		if (child.parent == this)