public Object getChildren(Class clazz) {
IUAElement[] children = getChildren();
if (children.length > 0) {
List list = new ArrayList();
for (int i=0;i<children.length;++i) {
IUAElement child = children[i];
if (clazz.isAssignableFrom(child.getClass())) {
list.add(child);
}
}
return list.toArray((Object[])Array.newInstance(clazz, list.size()));
}