default List<RedUINode> hitTest(Point point) {

        LinkedList<RedUINode> hits = new LinkedList<>();
        Point absPoint = convertParentPointToScreen(point);

        for (RedUINode child : getSubTree(n -> !n.isHidden())) {
            if (child.checkHit(absPoint)) hits.addFirst(child); // Naturally order child nodes higher than parents
        }

        // Use Z Position for hit ordering, falling back to child-first order for equal z positions
        hits.sort(Comparator.comparingDouble(n -> n.getZPosition() * -1));

        return hits;
    }
Returns a list of subtree nodes that intersect with the given point. Hits are ordered
by z position. For each node, {@link RedUINode#checkHit(Point)} is called to check if
the node intersects the point.

<p>

@param point The point to test, in the parent's coordinate system
@return A list of nodes intersecting the given point
core/src/main/java/mrtjp/projectred/redui/RedUINode.java