/** * Initializes a {@link Tree tree} by a given root data. The data will be used to initialize a root {@link Node * node}. * * @param rootData * - data for the root {@link Node node} */ public Tree(T rootData) { root = new Node<T>(rootData); }
/** * Adds all child {@link Node nodes} to the list of children. * * @param children * - the child {@link Node nodes} to be added */ public void addChildren(List<Node<T>> children) { for (Node<T> child : children) { addChild(child); } }
/** * Initializes a {@link Node node} with the given data and children. * * @param data * - the node's data * @param children * - the node's children */ public Node(T data, List<Node<T>> children) { this(data); addChildren(children); }
@Override public String getPathRepresentation(Node<AccessibilityElement> element) { Node<AccessibilityElement> parent = element.getParent(); if (parent != null) { return Integer.toString(parent.getChildren().indexOf(element)); } return ""; }
boolean visibleOnly) { if (nodeInfo == null) { return new Node<AccessibilityElement>(null); return new Node<AccessibilityElement>(null); AccessibilityElement elementData = accessibilityElementBuilder.build(nodeInfo, index); Node<AccessibilityElement> builtNode = new Node<AccessibilityElement>(elementData); builtNode.addChild(childNode);
private static void serialize(Node<AccessibilityElement> node, AccessibilityXmlSerializer xmlBuilder) { AccessibilityElement element = node.getData(); xmlBuilder.addAttribute("bounds", boundsToString(element.getBounds())); for (Node<AccessibilityElement> child : node.getChildren()) { serialize(child, xmlBuilder);
/** * Clears the list of child {@link Node nodes}. */ public void clearChildren() { int childCount = children.size(); for (int i = 0; i < childCount; i++) { removeChild(i); } }